Wie Sie Proftpd mit TLS auf Ubuntu 14 LTS, Trusty Tahr installieren

ProFTPd (Professional File Transfer Protocol Daemon) ist weit verbreitet, wenn es um Dateitransfer zwischen Servern / Client- oder Peerservern geht. Deswegen möchten wir auch dieses Thema abdecken, indem wir Ihnen in diesem Tutorial zeigen, wie Sie ProFTPD mit Hilfe von SSL/TLS Verschlüsselung installieren. Folgen Sie dafür einfach den folgenden Schritten:

  • Voraussetzungen
  • Installation von Proftpd und OpenSSL
  • Konfiguration von Proftpd
  • FTP User hinzufügen
  • Konfiguration von TLS in Proftpd
  • Installationstest

Voraussetzungen

  • Ubuntu 14.04.2 LTS, Trusty Tahr
  • Sudo oder Root Privilegien

Mit diesem Tutorial erreichen Sie Folgendes:

  • Installation von Proftpd und OpenSSL
  • Konfiguration von Proftpd
  • User-Konfiguration
  • Konfiguration von TLS mit Proftpd
  • Test

Proftpd und OpenSSL installieren

ProFTPD und OpenSSL lassen sich einfach installieren mit dem apt-get Befehl, da Sie Ihnen im Speicher von Ubuntu 14.x zur Verfügung stehen.

 sudo apt-get install -y proftpd openssl 

Während der Installation werden Sie gefragt, ob Sie ProFTPD als Inetd oder als Standalone Service einsetzen wollen. Wählen Sie die Standalone-Option und fahren Sie fort.

Konfiguration von Proftpd

Nach der erfolgreichen Installation, nehmen Sie ein paar Änderungen in der Konfigurationsdatei vor. Die Konfigurationsdatei befindet sich im Verzeichnis /etc/proftpd/. Editieren Sie die Datei proftpd.conf mit dem Nano Editor.

 nano /etc/proftpd/proftpd.conf 

Suchen Sie nach der Zeile mit Servername und ändern Sie diese in Ihren Hostnamen oder Domainnamen um:

ServerName yourhostname

Suchen Sie nach und kommentieren Sie DefaultRoot:

 # Use this to jail all users in their homes
DefaultRoot   		~ 

Starten Sie den Proftpd Service neu:

 service proftpd restart 

FTP User hinzufügen

Es gibt zwei Wege auf auf FTP Server zuzugreifen:

1. Anonymer FTP Zugriff, dies ermöglicht jedem Zugang ohne ein Benutzerkonto oder Eingeben eines Passworts.
2. Zugriff mit Benutzernamen und Passwort, auf diesem Wege können nur autorisierte User auf den FTP Server zugreifen.

Ziehen Sie die zweite Option in Betracht, da Sie sicherer und empfohlener ist.

Bevor Sie einen neuen Benutzer erstellen, fügen Sie die Datei/bin/false der /etc/shells hinzu.

 echo "/bin/false" >> /etc/shells 

Nun erstellen wir einen Benutzer mit Heimverzeichnis, womit er Zugriff auf den FTP Server bekommt. Deaktivieren Sie den Shellzugang für diesen Benutzer, indem Sie die „/bin/false“ Shell ihm zuweisen. Damit stellen Sie sicher, dass er sich nicht über SSH einloggen kann. In diesem Tutorial haben wir uns für den Benutzernamen „alice“ entschieden. Es steht Ihnen natürlich frei stattdessen einen Benutzernamen Ihrer Wahl zu nehmen.

 adduser --home /home/alice --shell /bin/false alice 
 adduser --home /home/alice --shell /bin/false alice 

Der Befehl oben erstellt den neuen Benutzer ‚alice‘ mit dem Heimverzeichnis /home/alice/ und ohne Shellzugriff /bin/false.

Konfigurieren Sie nun Proftpd, damit ‚alice‘ Zugriff auf den FTP Server bekommt.

 nano /etc/proftpd/proftpd.conf 
 <Directory /home/alice>
Umask 022 022
AllowOverwrite off
     <Limit LOGIN>
        AllowUser alice
        DenyALL
     </Limit>
     <Limit ALL>
        Order Allow,Deny
        AllowUser alice
        Deny ALL
    </Limit>
    <Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD>
    AllowUser alice
    Deny ALL
    </Limit>
</Directory> 
 service proftpd stop
service proftpd start 

Konfiguration von TLS in Proftpd

Um TLS zu nutzen, müssen Sie ein SSL Zertifikat erstellen. Mit dem openssl Befehl generieren Sie ein  SSL Zertifikat:

 openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt  -nodes -days 365 

Dieser Befehl generiert eine Zertifikatsdatei mit dem Namen proftpd.crt im Verzeichnis  /etc/ssl/certs/  und einen Zertifkatsschlüssel fileproftpd.key im Verzeichnis /etc/ssl/private/.

Ändern Sie nun die Dateiberechtigungen der Zertifikatsdateien zu 600, sodass ein Zugriff für andere Nutzer möglich ist.

chmod 600 /etc/ssl/certs/proftpd.crt
chmod 600 /etc/ssl/private/proftpd.key

Gehen Sie nun zurück zur ProFTPD Konfigurationsdatei, um das generierte SSL Zertifikat zu nutzen.

 nano /etc/proftpd/proftpd.conf 

Kommentieren Sie dann die TLS Zeile:

 Include /etc/proftpd/tls.conf 

Nach Speichern der Datei, öffnen Sie bitte die TLS Konfigurationsdatei:

 nano /etc/proftpd/tls.conf 

Kommentieren Sie nun alle unten angezeigten Zeilen:

 TLSEngine                               on
TLSLog                                  /var/log/proftpd/tls.log
TLSProtocol                             SSLv23
TLSRSACertificateFile                   /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile                /etc/ssl/private/proftpd.key
TLSOptions                              NoCertRequest
TLSVerifyClient                         off
TLSRequired                             on 

Nach Abspeichern der Datei, starten Sie bitte den ProFTPD Dienst neu:

 service proftpd restart 

Hinweis: Wird Ihr der Dienst nicht neu gestartet, folgen Sie dieser Methode: .

Installationstest

Um die Konfiguration zu testen, verbinden Sie sich mit dem FTP Server  über FTP Client. Nutzen Sie den einfachen Befehl ftp-ssl, um die aktivierte Verschlüsselung zu verifizieren. Geben Sie bei Abfrage den Nutzernamen ein und das dazugehörige Passwort.

 ftp-ssl -v -v domainnameofyourftp.com 

Eine geglückte Verbindung sieht ungefähr so aus:

Sie hatten Schwierigkeiten uns bei den Schritten zu folgen? Kontaktieren Sie uns einfach, denn die Rackhansa Profis sinds stets zu Ihren Diensten und bereit Ihnen beim Umsetzen einer reibungslosen Onlinepräsenz zu helfen. Ebenso sind unsere Free Webhosting Services zugeschnitten auf Unternehmer, die gerade Ihr Onlinegeschäft starten. Besuchen Sie unsere Webseite und erfahren Sie mehr über unsere preiswerten Webhostingprodukte.