Proftp installieren

Aus MySlug
Wechseln zu: Navigation, Suche

Installation

Im Grunde ist das schnell geschehen. Dazu installiert als root das proftpd Paket:

apt-get install proftpd

Ihr werdet dann während der Installation gefragt, ob Ihr den Server in der inetd oder standalone Version installieren wollt. Wenn Ihr keine virtuellen Hosts betreibt ist an der Stelle der Standalone die bessere Wahl.

Nach Beendigung der Installation fährt der FTP Server bereits hoch und Ihr könnt Euch mit Eurem bereits angelegten User anmelden. Für Debian ist der Proftp schon so konfiguriert, dass die FTP User gleich die Systemuser sind und landen somit gleich in Ihrem Homeverzeichnis. Allerdings hat man in der Standardkonfiguration die Möglichkeit, in jedes Verzeichnis außerhalb des Homeverzeichnisses zu wechseln. Das ist normalerweise nicht gewünscht. Um das abzustellen (der FTP User wird gechailt, in sein Homeverzeichnis"gefängnis" gesperrt) müssen wir noch im Verzeichnis /etc/proftpd die proftpd.conf bearbeiten.

Sucht in der proftpd.conf die Zeile

# DefaultRoot                     ~

Entfernt das # . Die Zeile sieht nun wie folgt aus:

DefaultRoot                     ~

Speichert die Änderung. Man muss den Server nicht neu starten, sondern es genügt, den proftp Dämon neu zu starten:

/etc/init.d/proftpd restart

Jetzt solltet Ihr nicht mehr aus dem eigenen Homeverzeichnis kommen.

Verbindung mittels TLS sichern

Openssl sollte hierzu installiert sein:

apt-get install ssl-cert

Hierbei wird ein Zertifikat bereits angelegt. Wollt Ihr dieses nochmals erstellen, dann führt folgenden Befehl aus:

make-ssl-cert generate-default-snakeoil --force-overwrite

Legt dann die tls.conf an:

nano /etc/proftpd/conf.d/tls.conf

Und füllt diese mit folgenden Code:

<IfModule mod_tls.c>
        TLSEngine on
        TLSLog /var/log/proftpd/tls.log
        TLSProtocol SSLv23
        TLSRSACertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
        TLSRSACertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
        TLSVerifyClient off
        TLSRequired on
</IfModule>

Wenn Ihr eine Firewall am Server betreibt, muss noch eine TCP_IN Range als Passive Ports festgelegt werden. Diese Range (in einem sehr hohen Bereich und nur einige wenige Ports) tragt in der /etc/proftpd/proftpd.conf beim Parameter

PassivePorts                  XXXXXX XXXXXX

Startet dann den proftp neu:

/etc/init.d/proftpd restart



Fehlermeldung memcache beim proftp Start

Um die Fehlermeldung zu unterbinden, stellt das memcache Modul ab:

nano /etc/proftpd/modules.conf

Kommentiert die folgende Zeile aus:

LoadModule mod_tls_memcache.c

in

#LoadModule mod_tls_memcache.c

Startet dann den proftp neu:

/etc/init.d/proftpd restart



Anmeldung auf proftp langsam

Falls die Anmeldung auf dem Proftp verzögert läuft könnt Ihr mal folgendes ausprobieren:

Editiert die Datei /etc/proftpd/proftpd.conf und fügt unter der Zeile

IdentLookups off

die Zeile

UseReverseDNS off

ein. Danach den proftp neu starten:

/etc/init.d/proftpd restart



User beim proftp ausschließen

Wenn auf ein bestimmtes User Verzeichnis nicht via ftp zugegriffen werden darf, dann könnt Ihr das ganz einfach wie folgt ausschließen: Schreibt den Usernamen in die /etc/ftpusers
Der Proftp schaut in diese Datei und schließt die dort aufgeführten User vom ftp-Zugriff aus. Nach einer Änderung startet den ftp-Server neu:

/etc/init.d/proftpd restart