FTP-Server
Aus Salber.net
Es gibt viele verschiedene FTP-Server. Einer davon ist vsftpd. Nach ein wenig Recherche habe ich mich für den entschieden. Hat aber keinen ganz speziellen Grund, allerdings gilt er als ziemlich sicher. Zu finden ist er (meistens) im Paketmanager der Linux-Distribution oder auf http://vsftpd.beasts.org/.
Konfiguration
Die ist zu finden unter /etc/vsftpd.conf
.
User-Konfiguration
Ich möchte den Server so konfigurieren, dass man sich mit einem Benutzernamen und Kennwort identifizieren muss, und dieser Benutzer dann lesende und schreibende Rechte auf ein Verzeichnis hat. Es soll keine anderen Benutzer und keinen Anonymous-User geben.
Um das zu erreichen habe ich die folgenden Einträge in der Konfigurationsdatei geändert:
- anonymous_enable=NO
- local_enable=YES
- write_enable=YES
- chroot_local_user=YES
Die folgenden Einträge habe ich hinzugefügt:
- virtual_use_local_privs=YES
- guest_enable=YES
- local_root=/name/des/freigegebenen/verzeichnisses
Nun muss noch eine Passwort-Datei angelegt werden: htpasswd -c /etc/vsftpd/htusers benutzername
wobei natürlich ein entsprechender Benutzername einzusetzen ist.
Die eigentliche Authentifizierung wird durch PAM erledigt. Dazu habe ich in die Datei /etc/pam.d/vsftpd
die folgenden beiden Zeilen eingefügt:
auth required pam_pwdfile.so pwdfile /etc/vsftpd/htusers account required pam_permit.so
Die anderen Zeilen habe ich noch auskommentiert, keine Ahnung ob das notwendig ist.
Was dann noch fehlt ist das pwdfile-PAM-Modul. Einfach das Paket libpam-pwdfile
installieren.
Am Ende muss noch der FTP-Server neu gestartet werden:
/etc/init.d/vsftpd restart