ProFTPD instalación · 6 min read · Dec 22, 2025

Cómo instalar y configurar ProFTPD en Debian Wheezy y Ubuntu 14.04

Este documento describe cómo instalar y configurar ProFTPD en un servidor Debian Wheezy, también funcionará en Ubuntu 14.04. ProFTPD es un demonio FTP para sistemas operativos unix y similares a unix. ProFTPD se desarrolla, publica y distribuye bajo la Licencia Pública General de GNU (GPL), que básicamente lo establece como software libre, lo que significa que puede ser vendido, licenciado y manipulado de cualquier manera deseada siempre que el código fuente completo y completo acompañe a cualquier paquete de ProFTPD o esté disponible en todos los sitios que distribuyen binarios precompilados. El software puede ser modificado por cualquier persona en cualquier momento, siempre que todas las obras derivadas también estén licenciadas bajo la Licencia Pública General de GNU.

Esta guía funcionará tanto para servidores Ubuntu como Debian.

1 Nota Preliminar

Este tutorial se basa en un servidor Debian 7.6, por lo que debes configurar una instalación básica de servidor Debian 7.6 antes de continuar con este tutorial. El sistema debe tener una dirección IP estática. Utilizo 192.168.0.100 como mi dirección IP en este tutorial y server1.example.com como el nombre de host.

2 Instalar ProFTPD

2.1 Instalación:

Primero instalaremos ProFTPD y OpenSSL de la siguiente manera:

apt-get install proftpd openssl

Se te harán algunas preguntas sobre ProFTPD, selecciona standalone y presiona Ok.

Podemos verificar la versión de ProFTPD de la siguiente manera:

proftpd -v

root@server1:~# proftpd -v

ProFTPD Version 1.3.4a

root@server1:~#

2.2 Creando Usuarios de ProFTPD

Para esto crearé un grupo ftpgroup y el usuario srijan para ProFTPD. Restringiré al usuario srijan con el directorio home como /ftpshare

addgroup ftpgroup
adduser srijan -shell /bin/false -home /ftpshare
root@server1:~# adduser srijan -shell /bin/false -home /ftpshare  
 Adding user `srijan' ...  
 Adding new group `srijan' (1002) ...  
 Adding new user `srijan' (1001) with group `srijan' ...  
 Creating home directory `/ftpshare' ...  
 Copying files from `/etc/skel' ...  
 Enter new UNIX password: <--ftppassword  
 Retype new UNIX password: <--ftppassword  
 passwd: password updated successfully  
 Changing the user information for srijan  
 Enter the new value, or press ENTER for the default<--ENTER  
     Full Name []: <--ENTER  
     Room Number []: <--ENTER  
     Work Phone []: <--ENTER  
     Home Phone []: <--ENTER  
     Other []: <--ENTER  
 Is the information correct? [Y/n] <--Y  
 root@server1:~#

Ahora agregaremos al usuario srijan al ftpgroup de la siguiente manera:

adduser srijan ftpgroup

A continuación, necesitamos proteger el directorio de la eliminación y el cambio de nombre de su contenido por cualquier usuario, por lo que cambiaremos los permisos del directorio de la siguiente manera:

chmod -R 1777 /ftpshare/

A continuación, necesitamos configurar ProFTPD de la siguiente manera:

nano /etc/proftpd/proftpd.conf

Haz cambios como se muestra

[...]  
UseIPv6 off  
[...]  
  
    RootLogin   off
    RequireValidShell off


DefaultRoot  ~


    DenyGroup !ftpgroup

No estoy usando IPV6, así que lo desactivé arriba, estoy deshabilitando el inicio de sesión del usuario root con ProFTPD con RootLogon off. DefaultRoot se agrega para restringir a los usuarios solo al acceso a sus carpetas de inicio. DenyGroup permitirá solo a los usuarios del ftpgroup acceder al servidor ftp, todas las demás conexiones serán rechazadas.

Reinicia el servicio como:

service proftpd restart

A veces recibirás un error al reiniciar el servicio, como

root@server1:~# service proftpd restart

[ ok ] Deteniendo el servidor ftp: proftpd.

[….] Iniciando el servidor ftp: proftpdserver1 proftpd[6052]: mod_tls_memcache/0.1: aviso: no se puede registrar ‘memcache’ caché de sesión SSL: Soporte de Memcache no habilitado

. ok

root@server1:~#

Podemos superar este error editando el archivo /etc/proftpd/modules.conf y comentando la línea de la siguiente manera:

nano /etc/proftpd/modules.conf
[...]  
#LoadModule mod_tls_memcache.c  
[...]  

Esto solucionará el error.

Ahora podemos iniciar sesión con el usuario srijan y la contraseña en ftp://192.168.0.100

3 Habilitando TLS en ProFTPD

Para habilitar TLS en ProFTPD, abre /etc/proftpd/proftpd.conf

nano /etc/proftpd/proftpd.conf

Haz los cambios de la siguiente manera y descomenta la línea:

[...]  
Include /etc/proftpd/tls.conf  
[...]  

Ahora haremos una copia de seguridad del archivo original y luego editaremos el archivo como se muestra a continuación:

cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig  
 cat /dev/null > /etc/proftpd/tls.conf  
 nano /etc/proftpd/tls.conf  
 

Dale las entradas como se muestra


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

Para usar TLS, debemos crear un certificado SSL. Lo crearé en /etc/proftpd/ssl, por lo tanto, primero crearé ese directorio:

mkdir /etc/proftpd/ssl  
 

Después, podemos generar el certificado SSL de la siguiente manera:

openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

Nombre del país (código de 2 letras) [AU]: <– Ingresa el nombre de tu país (por ejemplo, “DE”).
Nombre del estado o provincia (nombre completo) [Some-State]: <– Ingresa el nombre de tu estado o provincia.
Nombre de la localidad (por ejemplo, ciudad) []: <– Ingresa tu ciudad.
Nombre de la organización (por ejemplo, empresa) [Internet Widgits Pty Ltd]: <– Ingresa el nombre de tu organización (por ejemplo, el nombre de tu empresa).
Nombre de la unidad organizativa (por ejemplo, sección) []: <– Ingresa el nombre de tu unidad organizativa (por ejemplo, “Departamento de TI”).
Nombre común (por ejemplo, TU nombre) []: <– Ingresa el nombre de dominio completamente calificado del sistema (por ejemplo, “server1.example.com”).
Dirección de correo electrónico []: <– Ingresa tu dirección de correo electrónico.

Ahora, por razones de seguridad, haré que los certificados sean solo legibles de la siguiente manera:

chmod 0440 /etc/proftpd/ssl/proftpd.key.pem

Finalmente, reinicia el servicio ProFTPD de la siguiente manera:

service proftpd restart

Podemos conectarnos al servidor ProFTPD con el software FileZilla. Debes tener FileZilla instalado en el cliente para conectarte al servidor. Abre FileZilla y dale los detalles como sigue:

Los detalles serán

Host = 192.168.0.100
Protocolo = FTP
Usuario = srijan
Puerto = puede estar en blanco si no lo has personalizado a otro puerto que no sea 21
Contraseña = ftppassword (justo creada arriba)

Nota: Dado que hemos cifrado nuestra conexión en el paso anterior, usaremos la Encriptación con Requerir FTP explícito sobre TLS

Si no has configurado TLS, puedes usar Usar FTP sin cifrado

Se te pedirá que confíes en los certificados, presiona OK

Se conectará al directorio compartido FTP.

4 Acceso FTP anónimo en ProFTPD

Podemos crear una cuenta FTP anónima en ProFTPD, solo agrega estas entradas en el archivo de configuración de ProFTPD:

nano /etc/proftpd/proftpd.conf

Y agrega estas entradas al final del archivo,

[...]  
###Compartir anónimo#####

   User                         ftp
   Group                        nogroup


    AllowAll


   # Queremos que los clientes puedan iniciar sesión con "anónimo" así como con "ftp"
   UserAlias                    anonymous ftp

   # Cambios cosméticos, todos los archivos pertenecen al usuario ftp
   DirFakeUser  on ftp
   DirFakeGroup on ftp

   RequireValidShell            off

   # Limitar el número máximo de inicios de sesión anónimos
   MaxClients                   10

   # Limitar la escritura en todas partes en el chroot anónimo
   
     
       DenyAll
     
   

~              

Ahora conéctate a través de FileZilla de la siguiente manera:

Nota: Dado que hemos cifrado nuestra conexión en el paso anterior, usaremos la Encriptación con Requerir FTP explícito sobre TLS

Si no has configurado TLS, puedes usar Usar FTP sin cifrado

Presiona Conectar:

Se te pedirá que confíes en los certificados, presiona OK

Nos hemos conectado exitosamente al servidor con el usuario anónimo.

¡Felicidades! Ahora hemos configurado exitosamente el entorno del servidor ProFTPD en Debian Wheezy :)

5 Enlaces

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.