Good to Know Database

CentOS 5: vsftpd mit vollen Zugriffsrechten für Anonymous einrichten


1. Einleitung

Die folgende Anleitung beschreibt wie Sie unter CentOS 5 den vsftpd (Very Secure FTP Daemon) so konfigurieren, dass sich jeder im Netzwerk als Benutzer anonymous am FTP-Server anmelden kann und vollen Schreib- und Lese-Zugriff erhält.

2. vsftpd installieren

Durch den folgenden Befehl installieren Sie den vsftpd.

[root@centos5 ~]# yum install vsftpd

3. vsftpd konfigurieren

Öffnen Sie nach der Installation die Konfigurationsdatei /etc/vsftpd/vsftpd.conf mit einem Editor.

[root@centos5 ~]# vi /etc/vsftpd/vsftpd.conf

Stellen Sie sicher, dass die folgenden Direktiven in der Konfigurationsdatei aktiviert sind.

anonymous_enable=YES
no_anon_password=YES
anon_root=/var/ftp/anonymous
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=000
listen=YES

Durch anonymous_enable wird der generelle Zugriff für den Benutzer anonymous erlaubt. Damit bei der Anmeldung mit dem Benutzernamen anonymous kein Passwort angefordert wird, aktivieren wir die Direktive no_anon_password. Mit write_enable werden den FTP-Benutzern die Schreibrechte zugesichert. Damit auch anonymous Dateien auf den FTP-Server laden kann, muss die Direktive anon_upload_enable aktiviert sein. Durch anon_mkdir_write_enable wird es anonymous erlaubt auch Verzeichnisse zu erstellen. Soll anonymous auch Dateien löschen können, muss anon_other_write_enable aktiviert sein. Mit anon_umask wird die Rechtemaske festgelegt, welche auf neu erstellte Dateien und Verzeichnisse angewendet wird. Damit der FTP-Daemon auf eingehende Anfragen reagiert, müssen Sie nich die Option listen aktivieren.

4. FTP-Verzeichnis erstellen

Erstellen Sie unter /var/ftp das neue Verzeichnis anonymous, welches bereits in der /etc/vsftpd/vsftpd.conf als Root-Verzeichnis für den Benutzer anonymous angegeben wurde.

[root@centos5 ~]# mkdir -p /var/ftp/anonymous

Anschließend ändern Sie die Zugriffsrechte des Verzeichnisses. Dadurch erhalten die anonym angemeldeten Benutzer vollen Zugriff auf das Verzeichnis.

[root@centos5 ~]# chmod 0777 /var/ftp/anonymous/

5. SELinux konfigurieren

Bei CentOS 5 ist standardmäßig SELinux (Security Enhanced Linux) aktiviert und läuft im Enforcing Modus. Falls Sie SELinux nicht deaktivert haben (siehe SELinux: SELinux deaktivieren) oder im Permissive Modus betreiben (siehe SELinux: SELinux-Betriebsmodus ändern), müssen Sie SELinux entsprechend konfigurieren.

Damit der Benutzer anonymous Dateien auf den FTP-Server laden darf, müssen Sie diesem das Schreiben erlauben.

[root@centos5 ~]# setsebool -P allow_ftpd_anon_write=1

Des Weiteren müssen Sie den Security Context des FTP-Verzeichnisses wie folgt anpassen.

[root@centos5 ~]# chcon -u system_u -t public_content_rw_t /var/ftp/anonymous/

6. Firewall konfigurieren

Bevor Sie den FTP-Server starten und eine Verbindung zu ihm aufbauen können, müssen Sie den TCP-Port 21 in der Firewall öffnen. Erstellen Sie wie folgt die notwenige Firewall-Regel.

[root@centos5 ~]# iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

Speichern Sie die erstellte Firewall-Regel anschließend mit dem folgenden Befehl dauerhaft in die /etc/sysconfig/iptables.

[root@centos5 ~]# service iptables save

Anschließend müssen Sie noch eine Änderung an der /etc/sysconfig/iptables-config vornehmen.

[root@centos5 ~]# vi /etc/sysconfig/iptables-config

Suchen Sie hier den Eintrag IPTABLES_MODULES und erweitern diesen um das Modul ip_conntrack_ftp. Die einzelnen Module werden durch ein Leerzeichen getrennt angegeben. Sollte der Eintrag IPTABLES_MODULES noch nicht existieren, fügen Sie die folgende Zeile in die Konfigurationsdatei ein.

IPTABLES_MODULES="ip_conntrack_ftp"

Starten Sie anschließend iptables neu.

[root@centos5 ~]# service iptables restart

7. vsftpd starten

Wenn Sie die Konfigurationsdatei an Ihre Bedürfnisse angepasst und den Port in der Firewall geöffnet haben, starten Sie den vsftpd.

[root@centos5 ~]# service vsftpd start

Damit der vsftpd beim Systemstart automatisch gestartet wird, sollten Sie diesen in den entsprechenden Runlevels aktivieren.

[root@centos5 ~]# chkconfig vsftpd on

8. Weiterführende Tutorials

vsftpd: FTP-Daemon an ein Netzwerkinterface binden
vsftpd: FTP-Verbindungen mit TLS verschlüsseln
vsftpd: IPv4 und IPv6 aktivieren


Dieser Eintrag wurde am 25.06.2011 erstellt und zuletzt am 24.01.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_1325.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer