PureFTP puede instalarse con lo siguiente:
yum -y install pure-ftpd
Luego se deben agregar los enlaces para el arranque del sistema e iniciar PureFTP:
systemctl enable pure-ftpd.service
systemctl start pure-ftpd.service
Ahora debemos configurarlo para que acepte sesiones FTP y TLS. FTP es un protocolo muy inseguro porque sus usuarios y contraseñas se transmiten en texto plano. Al usar TLS la comunicación completa es cifrada haciéndolo más seguro.
OpenSSL se requiere para que funcione TLS por lo que para instalarlo ejecutamos:
yum install openssl
Ahora debemos activar TLS en PureFTP, para ello editamos su configuración y lo colocamos en 1:
nano /etc/pure-ftpd/pure-ftpd.conf
y nos aseguramos que TSL este en 1 de la siguiente forma:
[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
# including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.
TLS 1
[...]
Para poder usar TLS debemos crear un certificado SSL con lo cual primero creamos el directorio:
mkdir /etc/ssl/private/
Ahora podemos crear el certificado SSL ejecutando:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Esto preguntará algunos parámetros a los cuales debemos responder lo siguiente:
Country Name (2 letter code) [XX]: SIGLAS DEL PAIS
State or Province Name (full name) []: NOMBRE DEL ESTADO
Locality Name (eg, city) [Default City]: NOMBRE DE LA CIUDAD
Organization Name (eg, company) [Default Company Ltd]: NOMBRE DE LA EMPRESA
Organizational Unit Name (eg, section) []: NOMBRE DEL DEPARTAMENTO
Common Name (eg, your name or your servers hostname) []: desarrollo1
Email Address []: EMAIL DEL RESPONSABLE DEL SERVIDOR
Ahora debemos cambiar los permisos al certificado con:
chmod 600 /etc/ssl/private/pure-ftpd.pem
Y finalmente debemos reiniciar el PureFTP:
systemctl restart pure-ftpd.service
Eso es todo. Ahora puede intentar conectarse usando su cliente FTP; Sin embargo, debe configurar su cliente de FTP para que utilice TLS.