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«.