servicios de red e internet: servidor ftp · para la instalación del servidor ftp de ubuntu server...

24
Servicios de red e internet: Servidor FTP Gianfranco Álvarez Valencia 2ºASIR 03/11/2016

Upload: others

Post on 10-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Servicios de red e internet:

Servidor FTP

Gianfranco Álvarez Valencia 2ºASIR 03/11/2016

Page 2: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 2

Índice

1.FTP: Ubuntu server ..................................................................................................................... 3

1.1.Prepearación del sistema .................................................................................................... 3

1.1.1.Actualización de la máquina ........................................................................................ 3

1.1.2.Instalación de las guest additions ................................................................................ 3

1.2.Instalación del servidor FTP ................................................................................................ 4

1.3.Configuración del servidor FTP ........................................................................................... 4

1.3.1.Mensaje de bienvenida al servidor .............................................................................. 4

1.3.2.Configuración de acceso: usuarios anónimos .............................................................. 5

1.3.3.Configuración de acceso: usuarios registrados ............................................................ 9

1.3.4.Configuración del “enjaulamiento” ............................................................................ 13

1.3.5.Añadir exepciones al enjaulamiento .......................................................................... 15

1.3.6.Modificación de permisos a cada usuario .................................................................. 17

1.4.Servido seguro: open ssl ................................................................................................... 19

1.5 Troubleshooting ................................................................................................................ 22

1.5.1 Error permisos usuarios sin enjaular. ......................................................................... 22

1.5.2.No conexión con el servidor ftp. ................................................................................ 23

1.5.3.Error certificado SSL. .................................................................................................. 24

1.6.Conclusión ......................................................................................................................... 24

Page 3: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 3

En este manual se explicarán los pasos a seguir para la instalación y configuración de un

servidor FTP.

El Protocolo de transferencia de archivos (en inglés File Transfer Protocol o FTP), es un protocolo

de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission

Control Protocol), basado en la arquitectura cliente-servidor.

Fuente: https://es.wikipedia.org/wiki/Protocolo_de_transferencia_de_archivos

Se realizará el servidor para Ubuntu versión servidor como la versión escritorio.

1.FTP: Ubuntu server Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 .

1.1.Prepearación del sistema Antes de continuar con la instalación es importante tener instaladas las guest adittions

de virtual box junto con la última versión del sistema para evitar futuros errores.

1.1.1.Actualización de la máquina En el caso de no tener actualizada la máquina deberemos hacerlo antes de empezar con la instalación. Para ello el adaptador de red tiene que estar en nat. Comandos para actualizar la máquina(Con permisos root): - apt-get update. -apt-get upgrade. - apt-get install build-essential. Al acabar hay que reiniciar el sistema (comando “reboot”).

1.1.2.Instalación de las guest additions Es necesario instalar las guest adittions de virtual box en el sistema:

-Insertar el CD en la máquina:

-Acceder al disco: Si no aparece al ejecutar el comando ls /media el cdrom, tendremos que montarlo en

/media/cdrom(preferiblemente para saber cuál es) con el comando mount(la carpeta

cdrom tiene que existir, la creamos con mkdir cdrom:

Page 4: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 4

mount /dev/cdrom /media/cdrom (en modo root)

En este caso ya teníamos montado el cd en cdrom, pero lo montamos en cdrom_prueba:

Una vez montado ejecutamos(./) VBoxLinuxAdditions.run para instalar las guest adittions.

1.2.Instalación del servidor FTP Habiendo preparado el sistema, ya se puede iniciar la instalación del servidor FTP.

Ejecutamos el comando: apt-get install vsftpd (modo root).

Iniciamos el servicio(service vsftpd start):

1.3.Configuración del servidor FTP Una vez instalado el servidor DHCP, hay que configurarlo según las funciones que

queramos que desempeñe. A la hora de hacer pruebas entre las máquinas virtuales estas han

de estar ambas en red interna para que puedan comunicarse.

Para conectarnos al servidor a la hora de hacer las pruebas ejecutamos ftp @ipservidor

Antes que realicemos ningún cambio en el archivo de configuración de este (el servidor

FTP) es necesario hacer una copia , así podemos volver a un estado limpio del servicio.

Para realizar todas las configuraciones basta con acceder al fichero que hemos copiado con un

editor, en nuestro caso nano.

1.3.1.Mensaje de bienvenida al servidor Accedemos al fichero de configuración y buscamos lo siguiente:

Con ctrl+w podemos buscar la palabra banner y lo encontramos. Aquí ponemos el mensaje de

bienvenida del servido (servidor de Gianfranco Álvarez)

Page 5: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 5

1.3.2.Configuración de acceso: usuarios anónimos Con esto conseguimos que un usuario anónimo sin contraseña se conecte a un directorio

no crucial del que puede descargar los archivos que contenga pero no cargar ningún archivo.

Acedemos al fichero de configuración y buscamos los siguiente:

Una vez encontrado lo cambiamos “YES”(anonymus_enable) y establecemos la ruta

donde ira el usuario anónimo que se conecte.(anon_root=*ruta)

Creamos la ruta donde se ha configurado que ira el usuario anónimo.

Para comprobarlo creamos algunos archivos en intentamos descargarlos:

Accedemos al servidor con el usuario anonymous sin ninguna contraseña:

Page 6: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 6

Comprobamos que podemos descargar los archivos:

Creamos un archivo para ver si nos deja subirlo:

Hacemos la prueba:

Efectivamente no tenemos permisos para ello.

Prueba desde otro sistema Linux(Ubuntu Desckpot)

Page 7: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 7

Prueba desde un sistema Windows(Windows 7):

Prueba desde el navegador:

Page 8: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 8

Lo abrimos en el explorador de archivos:

Podemos copiarlo en el escritorio.

Sin embrago al intentar copiar algo en la carpeta , no se nos permite:

Page 9: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 9

1.3.3.Configuración de acceso: usuarios registrados A continuación estableceremos los usuarios que se pueden conectar al servidor, con

sus carpetas y permisos.

Primero que nada hacemos lo siguiente:

Accedemos al fichero de configuración y buscamos:

Ambas opciones tienen que estar des comentadas y con la opción en

“YES”(local/write_enable)

Creamos los la carpeta en la que estarán los archivos de los usuarios(carpeta general):

La enlazamos:

Creamos lo usuarios para el servidor con sus respectivas contraseñas con el comando useradd

–m (para que no cree el directorio home del usuario):

Creamos 3 usuarios para hace las pruebas en este caso se crearan Gian, Franco, Javier.

Page 10: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 10

Agregamos un par de archivos para comprobar los usuarios que hemos creado.

Accedemos con los usuarios creados y probamos a descargar un archivo:

Page 11: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 11

Ahora probamos a subir un archivo:

Prueba desde otra máquina Linux(Ubuntu Desktop):

Page 12: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 12

Prueba desde un sistema Windows (Windows 7):

Prueba desde el navegador y explorador de archivos:

En el navegador no funciona, no deja identificarse(ftp://Gian:[email protected])

Page 13: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 13

1.3.4.Configuración del “enjaulamiento” Como no hemos modificado nada en cuanto al “enjaulamiento”(acceder a otros

directorios que no son el que está reservado para el usuario) podemos movernos libremente.

Windows:

Page 14: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 14

Para cambiar esto tenemos que volver a modificar ciertos parámetros en el archivo de

configuración:

Se descomenta chroot_local_user=YES

Y se añade allow_writeable_chroot=YES para permitir la subida de archivos

Se cambia charoot_list_enable=NO esto enjaula a todos los usuarios.

Prueba de enjaulamiento:

Page 15: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 15

Prueba Windows:

1.3.5.Añadir exepciones al enjaulamiento La configuración de enjaulamiento anterior, al hacer charoot_list_enable=NO,

enjaulamos a todos los usuarios sin excepción . Esto no tiene mucho sentido ya que debería

haber un usuario administrador que pueda acceder a todos los directorios, para ello hacemos

lo siguiente:

Volvemos al fichero de configuración:

-chroot_list_enable=YES

-descomentar chroot_list_file=/etc/vsftpd.chroot_list(donde se guardan los usuarios

no restringidos)

Page 16: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 16

Editamos el fichero donde está la lista de usuarios no enjaulados:

En nuestro caso lo haremos con el usuario admin(contraseña ftp) para probarlo.

Page 17: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 17

Windows:

1.3.6.Modificación de permisos a cada usuario Primero hacemos las carpetas de los usuarios y sus propietarios para las pruebas:

Se establecen los permisos de los usuarios en las carpetas:

Page 18: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 18

Gian tiene permisos de escritura, Franco de lectura y Javier tiene los dos.

Windows:

Page 19: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 19

Otros sistema Linux (Ubuntu desktop):

1.4.Servido seguro: open ssl Una vez hecho el ftp con el wireshark (filtrando por FTP) es fácil ver las contraseñas y

nombres de usuarios ya que no están cifradas esto se arregla cifrándolas.

Se hara con opnsssl:

openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout

/etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

Primero generamos al carpeta para el certificado:

Page 20: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 20

Ahora generamos el certificado:

Modificamos el fichero de configuración del FTP:

Habilitamos ssl (ssl_enable=YES) y añadimos la ruta del certificado (rsa_cert_file=@ruta)

comentamos private_key y añadimos la demás configuración sobre el SSL para que solo se

pueda acceder mediante conexión segura.

Page 21: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 21

Para comprobar el FTP seguro lo hacemos mediante filezila(cliente) para ello tenemos que

establecer una conexión segura:

Page 22: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 22

1.5 Troubleshooting

1.5.1 Error permisos usuarios sin enjaular. A la hora de cargar archivos al servidor mediante put con la opción de subir archivos

activada daba un error debido a los permisos de la carpeta. (antes de enjaular)

Mirar el archivo de log(logeos):

Page 23: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 23

Error al subir archivo.

Solución:

1.5.2.No conexión con el servidor ftp. A la hora de iniciar sesión con un usuario creado ocurría un error de conexión:

Solución:

Añadir pam_service_name=ftp

Page 24: Servicios de red e internet: Servidor FTP · Para la instalación del servidor FTP de Ubuntu server se usará: Ubuntu server 16.04.3 . 1.1.Prepearación del sistema Antes de continuar

Gianfranco Álvarez Valencia 2ºASIR 03/11/2017

pág. 24

1.5.3.Error certificado SSL. No se consigue conexión segura, debido al certificado y sus permisos .

Solución cambiar permisos :

1.6.Conclusión Los servidores FTPs son una forma sencilla y organizada de compartir información en red.

Su configuración aunque un poco abstracta debido a que se hace en modo texto , es bastante

sencilla de entender y realizar.