¿Qué es ProFTPD?
ProFTPD es un programa/servicio de FTP muy conocido en el entorno de Linux al igual que del que hablamos en otro artículo(Ver Instalando y Configurando VSFTP).
En esta guía aprenderemos a la instalación, configuración y ajustes de seguridad que nos permitirán tener nuestro sistema más seguro.
ProFTPD, Puntos a tratar
- Instalación
- Configuración
- Configurando TLS
Instalación de ProFTPD
Lo primero que debemos hacer es la instalación de los paquetes tanto como proftpd como openssl. Por regla general suele estar instalado, pero en este manual lo vamos a cubrir desde el principio.
apt-get install proftpd openssl
Mientras lo instalamos nos solicitará información acerca de ¿Cómo queremos instalar el servicio de ProFTPD?
- inetd: Nos indica que este método es bueno para cuando vamos a tener pocas conexiones ya que nos ahorra recursos del sistema.
- standalone: Cuando vamos a tener una gran cantidad de tráfico FTP, hace que evitemos cerrar las conexiones y ser aprovechadas por otro proceso.
Nosotros por defecto elegiremos standalone, ya que contamos con que el servicio se usará mucho.
Configurar ProFTPD
Todas las configuraciones que vamos a tocar será en su archivo principal localizado en «/etc/proftpd/proftpd.conf».
Deshabilitando el acceso anónimo: Por defecto en proftpd el acceso anónimo está deshabilitado. Generalmente viene comentado en la configuración.
Enjaulando a los usuarios: Por defecto en proftpd los usuarios pueden navegar desde su HOME hasta cualquier parte del servidor. Como nosotros queremos que todos los usuarios se queden en su HOME y no salgan de allí tendremos que habilitar al siguiente directiva.
DefaultRoot ~
Deshabilitar IPV6 en caso de no usarse: A veces puede dar problemas en servidores que solo admiten IPV4. Por lo tanto es recomendable dejarlo deshabilitado.
UseIPv6 off
Configurando ProFTPD + TLS
Para que nuestras conexiones entre el servidor y el cliente vayan cifradas vamos a configurar la opción de TLS en el servidor.
El primer paso que debemos hacer es de habilitar o descomentar la siguiente línea:
Include /etc/proftpd/tls.conf
El siguiente punto que haremos es realizar una copia de este fichero, vaciarlo y después ajustar la siguiente configuración.
cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf-orig echo "" > /etc/proftpd/tls.conf
Ahora editaremos el fichero «/etc/proftpd/tls.conf» para aplicarle la siguiente configuración:
<IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 TLSOptions NoCertRequest TLSRSACertificateFile /etc/proftpd/ssl/proftpd.cert.pem TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key.pem TLSVerifyClient off TLSRequired on </IfModule>
Nuestro siguiente paso será crear el directorio «/etc/proftpd/ssl» y crear dentro los certificados necesarios para ello.
Creando el directorio
mkdir /etc/proftpd/ssl
Creando el certificado autofirmado
openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem
Al realizar este punto nos pedirá la siguiente información
Generating a 2048 bit RSA private key ................+++ ..............................................+++ writing new private key to '/etc/proftpd/ssl/proftpd.key.pem' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:ES State or Province Name (full name) [Some-State]:Madrid Locality Name (eg, city) []:Madrid Organization Name (eg, company) [Internet Widgits Pty Ltd]:Mi Web En La Red SL Organizational Unit Name (eg, section) []:Internet Common Name (e.g. server FQDN or YOUR name) []:serv01.admonsistemas.es Email Address []:
Vosotros sólo tenéis que cambiar los campos por los que os interese.
El último punto que nos queda, es el de reiniciar el servicio proftpd.
service proftpd restart
Conclusión
En esta guía hemos aprendido a como instalar y configurar ProFTPD a través de los repositorios oficiales del sistema que tengamos instalado. A su vez hemos realizado ciertas configuraciones de seguridad para tener nuestros entorno más seguro.