En esta página
- Observación preliminar
- Instalación de OpenSSL
- Configurando PureFTPd
- Crear certificado SSL para TLS
- Configurar FileZilla para TLS
- Enlaces
Este artículo describe cómo configurar PureFTPd usando una sesión TLS en un servidor CentOS 7. FTP simple es un protocolo inseguro, ya que todas las contraseñas y todos los datos se transfieren sin cifrar. Al utilizar TLS, todas las comunicaciones se pueden cifrar, lo que hace que FTP sea mucho más seguro.
1 nota preliminar
Debería tener una instalación de PureFTPd funcional en su servidor CentOS 7.
2 Instalación de OpenSSL
Se requiere OpenSSL para TLS, para instalar OpenSSL, simplemente ejecutamos:
yum install openssl
3 Configuración de PureFTPd
Abra /etc/pure-ftpd/pure-ftpd.conf… (Consulte la guía sobre cómo instalar nano en Linux)
nano /etc/pure-ftpd/pure-ftpd.conf
Si desea permitir FTPySesiones TLS, establezca TLS en 1:
[...] # 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 [...]
Si desea aceptar solo sesiones TLS (no FTP), configure TLS en 2:
[...] # 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 2 [...]
Para no permitir TLS en absoluto (solo FTP), configure TLS en 0:
[...] # 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 0 [...]
Luego elimine el # delante de la siguiente segunda línea:
TLSCipherSuite HIGH CertFile /etc/ssl/private/pure-ftpd.pem
y guarde el archivo de configuración modificado.
4 Crear certificado SSL para TLS
Para poder utilizar TLS, debemos crear un certificado SSL. Lo creo en /etc/ssl/private/, así que primero creo el directorio usando el comandomkdir:
mkdir -p /etc/ssl/private/
Después de eso, podemos generar un certificado SSL de la siguiente manera:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Nombre del país (código de 2 letras) [XX]: <- Ingrese el nombre del país (por ejemplo, ?RU?). Nombre de la región o estado (nombre completo)
:. <- Ingrese el estado o área Nombre del área (por ejemplo, ciudad) [Ciudad predeterminada]: <- Ingrese la ciudad. Nombre de la organización (por ejemplo, empresa) [ ?? ????????? Company Ltd]: <- Ingrese el nombre de la organización (por ejemplo, el nombre de su empresa). Nombre de la unidad organizativa (por ejemplo, sección)
CHMOD 600 /etc/ssl/private/pure-ftpd.pem
: <- Introduzca el nombre de dominio completo del sistema (por ejemplo, ?servidor1.ejemplo.com?). Dirección de correo electrónico: <- Ingrese la unidad organizativa, nombre (por ejemplo, ?Departamento de TI?). Nombre común (como su nombre o el nombre de host de su servidor): <- Introduzca su dirección de correo electrónico.
systemctl restart pure-ftpd.service
Cambiar los permisos del certificado SSL:
puroFTPd
Y finalmente reiniciar
:
Eso es todo. Ahora puedes intentar conectarte usando un cliente FTP. Sin embargo, debe configurar su cliente FTP para usar TLS; consulte el siguiente capítulo para saber cómo hacer esto con FileZilla.
5 Configuración de FileZilla para TLS
Para usar FTP con TLS, necesita un cliente FTP (consulte la guía sobre los 6 mejores clientes FTP) que admita TLS, como FileZilla o el complemento FireFTP en Firefox.
En FileZilla, abra el Administrador del sitio:
- Seleccione un servidor que utilice PureFTPd con TLS. En el menú desplegable Tipo de servidor, seleccione: requerir explícitamente FTP sobre TLS en lugar de FTP normal:
- Ahora puede conectarse al servidor. Si es la primera vez que haces esto, debes aceptar el nuevo certificado SSL del servidor:
- Si todo va bien, ya deberías haber iniciado sesión en el servidor: