FTP ist ein sehr unsicheres Protokoll, da alle Passwörter und alle Daten im Klartext übertragen werden. Durch die Verwendung von TLS kann die gesamte Kommunikation verschlüsselt werden, wodurch FTP viel sicherer wird. Dieser Artikel erklärt, wie man PureFTPd konfiguriert, um TLS-Sitzungen auf einem Debian-Lenny-Server zu akzeptieren.
1 Vorbemerkung
Sie sollten ein funktionierendes PureFTPd-Setup auf Ihrem Debian-Lenny-Server haben, z. wie in diesem Tutorial gezeigt:Virtual Hosting With PureFTPd And MySQL (Incl. Quota And Bandwidth Management) On Debian Lenny.
2 Installation von OpenSSL
OpenSSL wird von TLS benötigt; Um OpenSSL zu installieren, führen wir einfach Folgendes aus:
aptitude install openssl
3 Konfigurieren von PureFTPd
Wenn Sie FTP und zulassen möchten TLS-Sitzungen ausführen
echo 1 > /etc/pure-ftpd/conf/TLS
Wenn Sie nur TLS-Sitzungen akzeptieren möchten (kein FTP), führen Sie
ausecho 2 > /etc/pure-ftpd/conf/TLS
stattdessen.
Um TLS überhaupt nicht zuzulassen (nur FTP), löschen Sie entweder /etc/pure-ftpd/conf/TLS oder führen Sie
ausecho 0 > /etc/pure-ftpd/conf/TLS
4 Erstellen des SSL-Zertifikats für TLS
Um TLS verwenden zu können, müssen wir ein SSL-Zertifikat erstellen. Ich erstelle es in /etc/ssl/private/, also erstelle ich zuerst dieses Verzeichnis:
mkdir -p /etc/ssl/private/
Anschließend können wir das SSL-Zertifikat wie folgt generieren:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Ländername (2-Buchstaben-Code) [AU]:<-- Geben Sie Ihren Ländernamen ein (z. B. "DE").
Staats- oder Provinzname (vollständiger Name) [Some-State]:<-- Geben Sie Ihren Staat ein oder Provinzname.
Ortsname (zB Stadt) []:<-- Geben Sie Ihre Stadt ein.
Organisationsname (zB Firma) [Internet Widgits Pty Ltd]:<-- Geben Sie Ihren Organisationsnamen ein (z. B. der Name Ihres Unternehmens).
Name der Organisationseinheit (z. B. Abteilung) []:<-- Geben Sie den Namen Ihrer Organisationseinheit ein (z. B. "IT-Abteilung").
Allgemeiner Name (z. B. IHR Name) []:<-- Geben Sie den vollständig qualifizierten Domänennamen des Systems ein (z. B. "server1.example.com").
E-Mail-Adresse []:<-- Geben Sie Ihre E-Mail-Adresse ein.
Ändern Sie die Berechtigungen des SSL-Zertifikats:
chmod 600 /etc/ssl/private/pure-ftpd.pem
Starten Sie abschließend PureFTPd neu:
/etc/init.d/pure-ftpd-mysql restart
Das ist es. Sie können jetzt versuchen, sich mit Ihrem FTP-Client zu verbinden; Sie sollten jedoch Ihren FTP-Client so konfigurieren, dass er TLS verwendet – siehe nächstes Kapitel, wie Sie dies mit FileZilla tun.
5 Konfigurieren von FileZilla für TLS
Um FTP mit TLS verwenden zu können, benötigen Sie einen FTP-Client, der TLS unterstützt, z. B. FileZilla.
Öffnen Sie in FileZilla den Server-Manager:
Wählen Sie den Server aus, der PureFTPd mit TLS verwendet; Wählen Sie im Dropdown-Menü Servertyp die Option FTPES anstelle von normalem FTP aus:
Jetzt können Sie sich mit dem Server verbinden. Wenn Sie dies zum ersten Mal tun, müssen Sie das neue SSL-Zertifikat des Servers akzeptieren:
Wenn alles gut geht, sollten Sie jetzt auf dem Server angemeldet sein:
6 Links
- PureFTPd:http://www.pureftpd.org/
- FileZilla:http://filezilla-project.org/
- Debian:http://www.debian.org/