ProFTPD configureren met SFTP en virtuele accounts

Dit is een “update” voor mijn post uit 2023 waar ik proftpd installeerde met FTPS (FTP+TLS).

We kunnen proftpd installeren met:

sudo apt install proftpd proftpd-mod-crypto

vervolgens moeten we /etc/proftpd/proftpd.conf bewerken en de regel waar port 21 staat in commentaar zetten

vervolgens kunnen we het volgende in /etc/proftpd/conf.d/sftp.conf plaatsen:

LoadModule mod_sftp.c
LoadModule mod_sftp_pam.c

SFTPEngine on
Port 2222
SFTPLog /var/log/proftpd/sftp.log

# Configure both the RSA and DSA host keys, using the same host key
# files that OpenSSH uses.
SFTPHostKey /etc/ssh/ssh_host_rsa_key

SFTPAuthMethods password publickey

SFTPAuthorizedUserKeys file:/etc/proftpd/authorized_keys/%u

# Enable compression
SFTPCompression delayed

Dit schakeld SFTP in op poort 2222. We gebruiker hier niet poort 22 omdat deze al gebruikt is door OpenSSH.

Vervolgens kunnen we de virtuele gebruikers configureren. Deze laten ons toe om aparte SFTP gebruikers te maken per project, die achterliggend dezelfde systeemgebruiker hebben.

Maak het bestand “/etc/proftpd/conf.d/virtual-users.conf” aan en plaats er het volgende in:

DefaultRoot ~
RequireValidShell off
AuthUserFile /etc/proftpd/ftpd.passwd
AuthGroupFile /etc/proftpd/ftpd.group
AuthOrder mod_auth_file.c
WtmpLog off

vervolgens moeten we de bestanden maken die de gebruikersconfiguraties bevatten:

touch ftpd.passwd ftpd.group
chmod 600 ftpd.passwd ftpd.group

nu kunnen we een gebruiker aanmaken. Ik gebruik hier het UID/GID van de www-data gebruiker: 33.

sudo ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=weerstation --uid=33 --gid=33 --home=/var/www/weerstation --shell=/bin/false

Als we nu proftpd herstarten (systemctl restart proftpd) kunnen we inloggen met onze nieuwe virtuele gebruiker.

hier zijn nog wat handige links naar de ProFTPD documentatie

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *