Instalar y configurar PROftpd en debian 12

Vamos a instalar y configurar rápidamente un servidor ftp en nuestro debian 12 (local) y para eso utilizaremos PROftpd server.

Primero, instalamos instalamos proftpd server de la siguiente manera:

sudo apt-get install proftpd

Una vez instalado editamos el archivo de configuración ubicado en la siguiente ruta:

sudo nano /etc/proftpd/proftpd.conf

Acá podemos cambiar el nombre del servidor:

ServerName "Debian"

Para hacer que los usuarios estén “enjaulados” en la carpeta que definamos, y así no puedan navegar por todo el arbol de archivos de nuestro servidor, descomentaremos la siguiente línea borrando la #:

DefaultRoot ~

Como crearemos usuarios solamente para que se conecten vía FTP, descomentaremos esta línea borrando la #:

RequireValidShell off

Al final del archivo agregaremos el siguiente código para controlar los permisos sobre las carpetas ubicadas dentro de www:

<Directory /var/www/*>
Umask 022 022
AllowOverwrite on
        <Limit MKD STOR DELE XMKD RNEF RNTO RMD XRMD>
        AllowAll
        </Limit>
</Directory>

Ahora editaremos el siguiente archivo:

sudo nano /etc/shells

Y al final del archivo agregaremos el siguiente código:

useradd usuarioejemplo -d /ruta/ejemplo -s /bin/false

Lo que hicimos fue darle un nombre de usuario luego con el parámetro -d asignamos la carpeta home y con el parámetro -s le dimos la shell falsa para que sea solo un usuario de FTP y no un usuario de sistema, es decir, no se podrá logear dentro de nuestro servidor.

Ahora asignamos una password a nuestro usuario:

passwd usuarioejemplo

Asignamos como propietario de la carpeta al usuario:

chown -R usuario:usuario /ruta/ejemplo/

Y finalmente reiniciamos el servicio para activar el usuario creado:

sudo service proftpd restart