Debian GNU/Linux lenny FTP Server Howto - vsftpd (Very Secure FTP Daemon)

vsftpd Howto für vsftpd ab Version 2.0

In diesem Howto wird Schritt für Schritt erklärt wie man den vsftpd konfiguriert.

Changelog

27.03.2005

Konfiguration erstellt

Inhaltsverzeichnis

1 Installieren der benötigten Pakete

apt-get install vsftpd

Es wird nur das Paket vsftpd benötigt. Eventuell fehlende Libraries installiert apt-get automatisch.

2 Konfiguration des vsftpd

Die Datei für den vsftpd ist /etc/vsftpd.conf. Diese ist normalerweise gut dokumentiert, jedoch werde ich auf die relevanten Anweisungen genauer eingehen.

2.1 Allgemeine Konfiguration

ftpd_banner=example.com FTP server

Der String nach obiger Anweisung wird ausgegeben, falls sich ein Client zum FTP Server verbindet. Der String kann nach belieben variieren.

listen=YES

Hiermit wird der vsftpd standalone betrieben, also nicht über einen so genannten Superserver wie inetd bzw. xinetd

xferlog_enable=YES

Mit dieser Anweisung wird das Logging für uploads und downloads aktiviert. Alternativ kann das Logging auch abgeschaltet werden (Wert auf NO setzen).

connect_from_port_20=YES

Damit wird angegeben, dass PORT style Datenverbindungen den Port 20 benutzen. Da für Datenverbindungen der Port 20 benutzt wird, wird die Anweisung auf YES gesetzt.

hide_ids=YES

Hiermit werden der Benutzer und die Gruppe, welche eine Datei besitzen, nicht angezeigt. Es wird als Eigentümer (owner) der Benutzer ftp angezeigt, obwohl am Dateisystem ein anderer Benutzer die Datei besitzt.

max_clients=20

Hier wird die Anzahl der gleichzeitigen Verbindungen von Clients beschränkt. Es können je nach belieben mehr oder weniger Clients zugelassen werden (z.B. je nach Abhängigkeit der Bandbreite).

max_per_ip=1

Damit wird nur eine Verbindung von ein und der selben IP Adresse zugelassen. Der Client kann sich somit nur einmal zum FTP Server verbinden. Parallele Verbindungen vom selben Client werden unterbunden.

2.2 Anonymer Zugriff

anon_root=/home/ftp

Hiermit wird das Verzeichnis /home/ftp/ als root Verzeichnis des FTP Servers angegeben. Verbindet sich ein User zum FTP Server, so wird der Inhalt von /home/ftp/ gelistet.

anonymous_enable=YES

Um anonymen Zugang zum Server zu gewähren, muss diese Anweisung auf YES gesetzt werden.

write_enable=YES

Um jeglichen schreibenden Zugriff auf den Server zu erlauben (z.b. um Dateien hochzuladen) muss write_enable aktiviert sein.

anon_upload_enable=YES

Mit dieser Anweisung wird auch anonymen Usern erlaubt, Dateien auf den FTP Server hochzuladen.

anon_mkdir_write_enable=YES

Damit anonyme User auch Verzeichnisse erstellen dürfen, ist obige Anweisung notwendig.

3 Starten des vsftpd

Falls vsftpd noch nicht läuft, wird dieser mit /etc/init.d/vsftpd start gestartet. Läuft bereits eine Instanz, so ist anstatt start der Parameter restart mitzugeben. Etwaige Fehlermeldungen werden entweder auf der Konsole oder im Logfile ausgegeben.

4 Testen der Konfiguration

Einloggen auf dem FTP Server mittels ftp localhost bzw. ftp IP/Hostname falls man nicht lokal auf dem Server eingeloggt ist. Nach kurzer Zeit erscheint das oben angegebene Banner als Welcome Message. Mit einem dir bzw. ls wird der Inhalt angezeigt. Sollte das nicht funktionieren, überprüfen ob in oben angegebenen Verzeichnis der Benutzer ftp Lese- bzw. Schreibrechte (im Uploadverzeichnis) hat.

© 2015 Gerald Holl