====== ProFTPd: instalación y configuración ====== ===== Instalación ===== En Debian, la instalación simplemente se reduce a: aptitude install proftpd-basic El archivo de configuración principal es **/etc/proftpd/proftpd.conf**. En éste se deben cambiar algunas opciones. ===== Configuración ===== Si no se requiere IPv6: UseIPv6 off Configuración para los usuarios y jailing de los mismos: # Users require a valid shell listed in /etc/shells to login. # Use this directive to release that constrain. RequireValidShell off # Use this to jail all users in their homes DefaultRoot ~ # Add this if you want to limit access to users of some group DenyGroup !ftpuser La directiva MasqueradeAddress existe para enmascarar la dirección privada del servidor FTP en caso de que se use NAT. Pero al usarla **se invalida el propósito de los ftp helper modules de Netfilter, por lo que no debe activarse**: # If your host was NATted, this option is useful in order to # allow passive tranfers to work. You have to use your public # address and opening the passive ports used on your firewall as well. #MasqueradeAddress aaa.bbb.ccc.ddd Como se limitó el acceso a los usuarios que pertenezcan al grupo "ftpuser", se debe crear dicho grupo para agregar a él los usuarios que accederán: addgroup ftpuser Además, crearemos un directorio donde se crearán los homes de los usuarios: mkdir /var/ftp Para agregar usuarios: adduser usuario -shell /bin/false -home /var/ftp El paso final es agregar el usuario al grupo ftpuser: adduser usuario ftpuser ===== Fail2Ban y firewall ===== Para proteger de ataques por fuerza bruta, se puede instalar **Fail2Ban**, activando el jail para ProFTPd: [proftpd] enabled = true port = ftp,ftp-data,ftps,ftps-data filter = proftpd logpath = /var/log/proftpd/proftpd.log maxretry = 3 Si se tiene instalado **Shorewall** en un firewall, y el ProFTPd está detrás del mismo, se debe agregar una línea como la siguiente en **rules**: #ACTION SOURCE DESTINATION PROTO DEST SOURCE ORIGINAL # PORT(S) PORT(S) DESTINATION DNAT net loc:192.168.1.12 tcp 21 - ===== Bibliografía ===== * http://www.proftpd.org/docs/howto/ConfigFile.html * http://www.thomas-krenn.com/en/wiki/Setup_FTP_Server_under_Debian * http://shorewall.net/FTP.html