Server-Konfiguration · 3 min read · Dec 14, 2025

So konfigurieren Sie PureFTPd und FileZilla zur Verwendung von TLS-Sitzungen auf CentOS 7.2

Dieser Artikel erklärt, wie Sie PureFTPd so konfigurieren, dass es TLS-Sitzungen auf einem CentOS 7.2-Server akzeptiert. Einfaches FTP ist ein unsicheres Protokoll, da alle Passwörter und Daten im Klartext übertragen werden. Durch die Verwendung von TLS kann die gesamte Kommunikation verschlüsselt werden, wodurch FTP viel sicherer wird.

1 Vorbemerkung

Sie sollten eine funktionierende PureFTPd-Installation auf Ihrem CentOS 7.2-Server haben, z. B. wie in diesem Tutorial gezeigt: FTP-Server mit PureFTPd, MariaDB und virtuellen Benutzern (inkl. Quota- und Bandbreitenmanagement) auf CentOS 7.2

2 OpenSSL installieren

TLS benötigt OpenSSL; um OpenSSL zu installieren, führen wir einfach aus:

yum -y install openssl

3 PureFTPd konfigurieren

Öffnen Sie /etc/pure-ftpd/pure-ftpd.conf…

nano /etc/pure-ftpd/pure-ftpd.conf

Wenn Sie FTP und TLS-Sitzungen zulassen möchten, setzen Sie TLS auf 1:

[...]
# Diese Option kann drei Werte annehmen:
# 0 : deaktiviert die SSL/TLS-Verschlüsselungsschicht (Standard).
# 1 : akzeptiert sowohl traditionelle als auch verschlüsselte Sitzungen.
# 2 : verweigert Verbindungen, die keine SSL/TLS-Sicherheitsmechanismen verwenden,
#     einschließlich anonymer Sitzungen.
# Kommentieren Sie dies _nicht_ blind aus. Stellen Sie sicher, dass:
# 1) Ihr Server mit SSL/TLS-Unterstützung kompiliert wurde (--with-tls),
# 2) Ein gültiges Zertifikat vorhanden ist,
# 3) Nur kompatible Clients sich anmelden.

TLS                      1
[...]

Wenn Sie nur TLS-Sitzungen akzeptieren möchten (kein FTP), setzen Sie TLS auf 2:

[...]
# Diese Option kann drei Werte annehmen:
# 0 : deaktiviert die SSL/TLS-Verschlüsselungsschicht (Standard).
# 1 : akzeptiert sowohl traditionelle als auch verschlüsselte Sitzungen.
# 2 : verweigert Verbindungen, die keine SSL/TLS-Sicherheitsmechanismen verwenden,
#     einschließlich anonymer Sitzungen.
# Kommentieren Sie dies _nicht_ blind aus. Stellen Sie sicher, dass:
# 1) Ihr Server mit SSL/TLS-Unterstützung kompiliert wurde (--with-tls),
# 2) Ein gültiges Zertifikat vorhanden ist,
# 3) Nur kompatible Clients sich anmelden.

TLS                      2
[...]

Um TLS überhaupt nicht zuzulassen (nur FTP), setzen Sie TLS auf 0:

[...]
# Diese Option kann drei Werte annehmen:
# 0 : deaktiviert die SSL/TLS-Verschlüsselungsschicht (Standard).
# 1 : akzeptiert sowohl traditionelle als auch verschlüsselte Sitzungen.
# 2 : verweigert Verbindungen, die keine SSL/TLS-Sicherheitsmechanismen verwenden,
#     einschließlich anonymer Sitzungen.
# Kommentieren Sie dies _nicht_ blind aus. Stellen Sie sicher, dass:
# 1) Ihr Server mit SSL/TLS-Unterstützung kompiliert wurde (--with-tls),
# 2) Ein gültiges Zertifikat vorhanden ist,
# 3) Nur kompatible Clients sich anmelden.

TLS                      0
[...]

Entfernen Sie dann das # vor den folgenden 2 Zeilen:

TLSCipherSuite           HIGH  
CertFile                 /etc/ssl/private/pure-ftpd.pem

und speichern Sie die geänderte Konfigurationsdatei.

4 Erstellen des SSL-Zertifikats für TLS

Um TLS zu verwenden, müssen wir ein SSL-Zertifikat erstellen. Ich erstelle es in /etc/ssl/private/, daher 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

Landname (2-Buchstaben-Code) [XX]: <– Geben Sie Ihren Landnamen ein (z. B. “DE”).
Bundesland oder Provinzname (vollständiger Name) []: <– Geben Sie den Namen Ihres Bundeslandes oder Ihrer Provinz ein.
Ortsname (z. B. Stadt) [Standardstadt]: <– Geben Sie Ihre Stadt ein.
Organisationsname (z. B. Firma) [Standardfirma GmbH]: <– Geben Sie den Namen Ihrer Organisation ein (z. B. den Namen Ihres Unternehmens).
Name der organisatorischen Einheit (z. B. Abteilung) []: <– Geben Sie den Namen Ihrer organisatorischen Einheit ein (z. B. “IT-Abteilung”).
Allgemeiner Name (z. B. Ihr Name oder der Hostname Ihres Servers) []: <– Geben Sie den vollqualifizierten Domainnamen 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 schließlich PureFTPd neu:

systemctl restart pure-ftpd.service

Das war’s. 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 das nächste Kapitel, wie Sie dies mit FileZilla tun.

5 FileZilla für TLS konfigurieren

Um FTP mit TLS zu verwenden, benötigen Sie einen FTP-Client, der TLS unterstützt, wie FileZilla oder das Firefox FireFTP-Plugin.

Öffnen Sie in FileZilla den Site-Manager:

FileZilla - Site-Manager öffnen.

Wählen Sie den Server aus, der PureFTPd mit TLS verwendet; wählen Sie im Dropdown-Menü Servertyp Erfordere explizites FTP über TLS anstelle von normalem FTP:

Geben Sie die Benutzerdaten ein.

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, da wir hier ein selbstsigniertes SSL-Zertifikat verwenden:

SSL-Fehler akzeptieren

Wenn alles gut geht, sollten Sie jetzt auf dem Server eingeloggt sein:

Login mit TLS erfolgreich.

6 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.