FTP es un protocolo muy inseguro porque todas las contraseñas y todos los datos se transfieren en texto claro. Mediante el uso de TLS, toda la comunicación se puede cifrar, lo que hace que el FTP sea mucho más seguro. Este artículo explica cómo configurar PureFTPd para aceptar sesiones TLS en un servidor Debian Lenny.
1 nota preliminar
Debería tener una configuración de PureFTPd en funcionamiento en su servidor Debian Lenny, p. como se muestra en este tutorial:alojamiento virtual con PureFTPd y MySQL (incluida la gestión de cuotas y ancho de banda) en Debian Lenny.
2 Instalación de OpenSSL
TLS necesita OpenSSL; para instalar OpenSSL, simplemente ejecutamos:
aptitude install openssl
3 Configuración de PureFTPd
Si desea permitir FTP y Sesiones TLS, ejecutar
echo 1 > /etc/pure-ftpd/conf/TLS
Si desea aceptar solo sesiones TLS (sin FTP), ejecute
echo 2 > /etc/pure-ftpd/conf/TLS
en su lugar.
Para no permitir TLS en absoluto (solo FTP), elimine /etc/pure-ftpd/conf/TLS o ejecute
echo 0 > /etc/pure-ftpd/conf/TLS
4 Creando el certificado SSL para TLS
Para usar TLS, debemos crear un certificado SSL. Lo creo en /etc/ssl/private/, por lo tanto, primero creo ese directorio:
mkdir -p /etc/ssl/private/
Posteriormente, podemos generar el 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) [AU]:<-- Ingrese el nombre de su país (por ejemplo, "DE").
Nombre del estado o provincia (nombre completo) [Algún estado]:<-- Ingrese su estado o nombre de la provincia.
Nombre de la localidad (p. ej., ciudad) []:<-- Ingrese su ciudad.
Nombre de la organización (p. ej., empresa) [Internet Widgits Pty Ltd]:<-- Ingrese el nombre de su organización (p. ej., el nombre de su empresa).
Nombre de la unidad organizativa (p. ej., sección) []:<-- Ingrese el nombre de su unidad organizativa (p. ej., "Departamento de TI").
Nombre común (p. ej., SU nombre) []:<-- Ingrese el nombre de dominio completo del sistema (por ejemplo, "servidor1.ejemplo.com").
Dirección de correo electrónico []:<-- Ingrese su dirección de correo electrónico.
Cambiar los permisos del certificado SSL:
chmod 600 /etc/ssl/private/pure-ftpd.pem
Finalmente reinicie PureFTPd:
/etc/init.d/pure-ftpd-mysql restart
Eso es todo. Ahora puede intentar conectarse usando su cliente FTP; sin embargo, debe configurar su cliente FTP para usar TLS; consulte el siguiente capítulo sobre cómo hacerlo con FileZilla.
5 Configuración de FileZilla para TLS
Para usar FTP con TLS, necesita un cliente FTP que admita TLS, como FileZilla.
En FileZilla, abra el Administrador del servidor:
Seleccione el servidor que usa PureFTPd con TLS; en el menú desplegable Tipo de servidor, seleccione FTPES en lugar de FTP normal:
Ahora puede conectarse al servidor. Si hace esto por primera vez, debe aceptar el nuevo certificado SSL del servidor:
Si todo va bien, ahora debería iniciar sesión en el servidor:
6 Enlaces
- FTP puro:http://www.pureftpd.org/
- FileZilla:http://filezilla-project.org/
- Debian:http://www.debian.org/