~sergio
ARTIGOSProFTPd en Debian con usuarios virtuais
01-03-2023
O obxectivo é montar un FTP rápidamente, con usuarios virtuais en un arquivo i encerrados no seu home.
Paso 1: Instalar o servicio
Directamente desde o repositorio:apt install proftpd
Paso 2: Configuralo con usuarios virtuais en un arquivo
Editar a config:
vim /etc/proftpd/proftpd.conf
Establecer os seguintes parámetros:
DefaultRoot ~ RequireValidShell off AuthUserFile /etc/proftpd/ftpd.passwd AuthGroupFile /etc/proftpd/ftpd.group AuthOrder mod_auth_file.c
Como podes ver solo se permite o sistema de auth mod_auth_file.c así que solo fará login contra o arquivo: /etc/proftpd/ftpd.passwd
Crea un usuario, por exemplo:
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=manolo --uid=33 --gid=33 --home=/srv/ftp/test/ --shell=/bin/false
Podes ver que o arquivo /etc/proftpd/ftpd.passwd ten a mesma estructura que /etc/passwd. Podes especificar calquera UID e GID excepto 0 (que é o de root), no exemplo puxen 33 que é normalmente www-data.
Ahora o arquivo para os grupos:
ftpasswd --group --name=nogroup --file=/etc/proftpd/ftpd.group --gid=33 --member manolo
Comproba que a config esteña ben e reinicia o servicio para que colla a configuración nova.
proftpd -t /etc/init.d/proftpd restart
Paso 3: Extras
Cambiar a clave de un usuario:
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=manolo --change-password
Bloquear e desbloquear un usuario:
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=manolo --lock ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=manolo --unlock
Borrar un usuario:
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=manolo --delete-user
NOTA: ftpasswd é un script escrito en Perl, normalmente debería estar en /usr/sbin/ftpasswd.