Instalación y configuración de un servidor FTP en Debian 8

En esta ocasión añadiremos un servidor FTP (proftpd) para así facilitar el acceso a nuestro servidor bunny, con esto conseguiremos que los usuarios del servidor puedan acceder a su carpeta «public_html» la cual configuramos en esta entrada, de este modo podrán modificar su página web con gran facilidad. También añadiremos la opción de acceder a la carpeta pública «/srv/doc» que creamos anteriormente.

Instalación del servidor FTP

Existen gran variedad de servidores ftp, nosotros nos quedaremos con «proftpd«, con el podremos transferir ficheros mediante la red entre los clientes.

Para instalar el servidor proftpd haremos lo siguiente estando logados como root:

apt-get install proftpd

Durante el proceso de instalación nos saltará una pregunta donde tendremos que escoger si el proceso del servicio será hijo de otro o este será un proceso independiente a los demás. Escogeremos la opción de un proceso independiente del resto.

Configuración del servidor FTP

Ya que accederemos tanto de forma autentificada (los usuarios del servidor) como de forma anónima, necesitaremos configurarlo y para ello:

Configuración del acceso autentificado

El fichero de configuración del servidor proftpd esta en /etc/proftpd/proftpd.conf. Buscaremos la siguiente linea:

# DefaultRoot     ~

La descomentaremos y modificaremos de modo que quedará lo siguiente:

DefaultRoot     ~/public_html

Esto permitirá acceder a cada usuario del servidor a su directorio «public_html» situado en su directorio personal.

Configuración del acceso anónimo

Para permitir el acceso de forma anónima al directorio /srv/doc de bunny, deberemos volver a editar el fichero de configuración de proftpd y en esta ocasión añadiremos las siguientes lineas al final.

 <Anonymous /srv/doc>
 User ftp
 Group nogroup
 # We want clients to be able to login with "anonymous" as well as "ftp"
 UserAlias anonymous ftp
 # Cosmetic changes, all files belongs to ftp user
 DirFakeUser on ftp
 DirFakeGroup on ftp

 RequireValidShell off

 # Limit the maximum number of anonymous logins
 MaxClients 10
 
 # We want 'welcome.msg' displayed at login, and '.message' displayed
 # in each newly chdired directory.
 DisplayLogin welcome.msg
 DisplayChdir .message

 # Limit WRITE everywhere in the anonymous chroot
 <Directory *>
 <Limit WRITE>
 DenyAll
 </Limit>
 </Directory>

 </Anonymous>

Una vez hemos finalizado tanto el acceso autentificado como el acceso anónimo deberemos reiniciar el servidor para que los cambios sean efectivos.

systemctl restart proftpd

Modificación del servidor DNS

Ahora que ya tenemos configurado nuestro servidor FTP deberemos añadirlo al servidor DNS para que así podamos acceder mediante el nombre «ftp.poncedeleon.org», para ello nos iremos al fichero de configuración de la zona directa (/var/cache/bind/db.poncedeleon) y añadiremos lo siguiente:

ftp    CNAME     bunny

Por último solo nos quedaría reiniciar el servidor DNS para que los cambios efectuados se apliquen:

systemctl restart bind9

Pruebas de funcionamiento

Para comprobar que todo está funcionando correctamente accederemos desde los clientes porky y lucas mediante un cliente ftp como puede ser «filezilla«, accederemos con el usuario «profemates» que creamos en entradas anteriores en el servidor, de forma que podremos ver como podríamos editar su página desde un cliente. También accederemos de forma anónima para ver los ficheros del directorio «/srv/doc«.

lucas autentificado:

lucas-autentificado

lucas anónimo:

lucas-anonimo

porky autentificado:

porky-autentificado

porky anónimo:

porky-anonimo

Deja un comentario