====== Vsftpd ======
[[wpde>vsftpd]] (Kurzform für Very Secure FTP Daemon), ist ein [[netzwerke:FTP]]-Server für Unix-Betriebssysteme.
Sein Name "Sehr sicher" trägt der Tatsache Rechnung, dass die Sicherung gegen unbefugte Nutzung im Mittelpunkt der Entwicklung steht, während komplizierte Einstellungsmöglichkeiten eher hinten anstehen. Der Entwickler führt auf der Produktwebseite an, dass bis zum jetzigen Zeitpunkt – im Gegensatz zu vergleichbaren FTP-Servern – keine Sicherheitslücken in irgendeiner Version von vsftpd bekannt seien.
Quelle: [[wpde>vsftpd|Wikipedia]]
===== Links =====
* [[http://vsftpd.beasts.org/|Offizielle Webseiter]] (englisch)
* [[http://vsftpd.beasts.org/vsftpd_conf.html|man VSFTPD.CONF (Handbuch)]]
* [[http://www.selflinux.org/selflinux/html/vsftpd.html|SelfLinux]]: Tutorial zur Installation & Konfiguration (deutsch)
* [[http://freshmeat.net/projects/vsftpd/|Freshmeat Projektseite]] (englisch)
* [[http://viki.brainsware.org/?en/Home|inoffizielle Dokumentations-Wiki]]
* [[http://www.netadmintools.com/art355.html|Configuring Vsftpd]]
===== Konfiguration =====
Eine ausführliche Liste von Konfigurationsoptionen findet man im Handbuch. man 5 vsftpd.conf
Besonders Traffic-limits und syslog-logging sind in der Debian-Konfiguration nicht enthalten.
Die Konfigurationsdatei liegt meist unter ''/etc/vsftpd.conf''.
==== Virtuelle Benutzer ====
Virtuelle Benutzer werden bewi vsftp leider auf das gleiche Verzeichnis gemappt.
* [[ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.2.0/FAQ|FAQ: Virtual users]]
* [[ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.2.0/EXAMPLE/VIRTUAL_USERS/|Example: virtual Users]]
* [[http://www.howtoforge.de/howto/virtual-hosting-mit-vsftpd-und-mysql-auf-debian-etch/|Virtual Hosting mit vsftpd und MySQL auf Debian Etch]]
==== Logging auf Syslog ====
Zur besseren Konfiguration kann man sich den Abschnitt aus dem Handbuch in die Konfigurationsdatei kopieren und die Options aktivieren.
# If enabled, then any log output which would have gone to /var/log/vsftpd.log goes to the system log instead. Logging is done under the
# FTP facility.
# Default: NO
syslog_enable=YES
==== SSL-Verschlüsselung ====
# SSL
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=NO
force_local_logins_ssl=NO
#ssl_tlsv1=YES
#ssl_sslv2=NO
#ssl_sslv3=NO
#
# This option specifies the location of the RSA certificate to use for SSL
# encrypted connections.
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
Somit ist Expliziertes (nachträglich aktiviertes) FTP aktiviert.
* **Implizierte SSL-Verschlüsselung** (gleich vor Verbindungsaufbau) aktiviert man so:
Implicit_SSL=YES
#
# Uncomment it if you want/have to use port 990.
# listen_port=990
:!: Die Version von [[debian:Debian]] Lenny (2.0.7-1) unterstützt die ''Implicit_SSL''-Option nicht.
==== Quota ====
Benutzer/Gruppenlimits lassen sich nur indirekt (siehe [[linux:quota|Quota mit Betriebssystemmitteln]]) realisieren. Das geht aber nur mit Systembenutzern und nicht mit virtuellen Benutzern.
* [[http://serverfault.com/questions/37737/quotas-in-vsftpd|Quotas in vsftpd?]]
==== writable root inside chroot ====
Ab der Version 2.3.5 muss das Heim-Verzeichnis schreibgeschützt sein wenn ''chroot_local_user=YES'' aktiviert ist (**funktioniert nicht mit der Version aus Debian wheezy**!):
# disable v.2.3.5 restriction: "vsftpd: refusing to run with writable root inside chroot()"
allow_writeable_chroot=YES
in vsftpd-ext fehlt das "e" im Namen:
allow_writable_chroot=YES
==== seccomp sandbox ab Version 3.0+ ====
seccomp sandboxing scheint lt. [[https://bugzilla.redhat.com/show_bug.cgi?id=845980|diverse Bugreports]] nicht zu funktionieren (500 OOPS: priv_sock_get_int suw.). Behebung:
seccomp_sandbox=NO