Server Installation · 5 min read · Dec 18, 2025

Wie man ProFTPD mit TLS auf CentOS 7.2 installiert

Dieses Tutorial beschreibt die Installation und Konfiguration von ProFTPD auf einem CentOS 7.2 Server. ProFTPD ist ein FTP-Daemon für Unix- und Linux-Betriebssysteme und wird unter der GNU Public License (GPL) vertrieben.

1 Vorbemerkung

Dieses Tutorial basiert auf einem CentOS-Server, daher sollten Sie eine grundlegende CentOS 7.2 Serverinstallation einrichten, bevor Sie mit diesem Tutorial fortfahren. Das System sollte eine statische IP-Adresse haben. Ich verwende 192.168.1.100 als meine IP-Adresse in diesem Tutorial und server1.example.com als den Hostnamen.

2 ProFTPD installieren und konfigurieren

2.1 Installation:

Wir benötigen Software aus dem EPEL-Repository, aktivieren Sie es wie folgt:

yum -y install epel-release

Dann importieren Sie den EPEL GPG-Schlüssel:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

und aktualisieren Sie die Pakete:

yum -y update

Wir werden ProFTPD und OpenSSL wie folgt installieren:

yum install -y proftpd openssl proftpd-utils

Wir müssen den Dienst starten und ihn so konfigurieren, dass er beim Booten automatisch startet.

systemctl start proftpd.service  
systemctl enable proftpd.service

Wenn Sie firewalld installiert haben, konfigurieren Sie die Firewall mit firewall-cmd, um den FTP-Port zu öffnen:

firewall-cmd --add-service=ftp --permanent  
firewall-cmd --reload

Wir können die ProFTPD-Version wie folgt überprüfen:

proftpd -v

[root@server1 ~]# proftpd -v

ProFTPD Version 1.3.5b

[root@server1 ~]#

2.2 ProFTPD-Benutzer erstellen

Ich werde eine Gruppe ftpgroup und einen Benutzer tom für ProFTPD erstellen. Ich werde /ftpshare als Home-Verzeichnis für den Benutzer tom festlegen.

groupadd ftpgroup

Als nächstes werde ich den Benutzer srijan in die ftpgroup hinzufügen:

useradd  -G ftpgroup tom -s /sbin/nologin -d /ftpshare  
passwd tom
[root@server1 ~]# passwd tom  
Passwort für Benutzer srijan ändern.  
Neues Passwort: <--ftppassword  
Neues Passwort erneut eingeben: <--ftppassword  
passwd: Alle Authentifizierungstokens erfolgreich aktualisiert.  
[root@server1 ~]# 

Setzen Sie die Berechtigungen für das Verzeichnis ftpshare:

chmod -R 1750 /ftpshare/

Jetzt sind wir bereit für die ProFTPD-Verbindung. Aber die Verbindungen sind noch nicht verschlüsselt, das werden wir im nächsten Kapitel lösen.

3 TLS in ProFTPD aktivieren

Um TLS in ProFTPD zu aktivieren, öffnen Sie /etc/proftpd/proftpd.conf. Bevor Sie die Datei bearbeiten, ist es besser, die Originaldatei zu sichern und dann die Datei mit nano zu bearbeiten.

cp -pf /etc/proftpd.conf /etc/proftpd.conf.bak  
nano /etc/proftpd.conf  

Fügen Sie die Zeilen hinzu und ändern Sie sie wie in Rot dargestellt.

[...]  
DefaultRoot                     ~ !adm
PassivePorts    6000    6100  
[...]   
  
#
  TLSEngine                     on
  TLSRequired                   on
  TLSRSACertificateFile         /etc/pki/tls/certs/proftpd.pem
  TLSRSACertificateKeyFile      /etc/pki/tls/certs/proftpd.pem
  TLSCipherSuite                ALL:!ADH:!DES
  TLSOptions                    NoCertRequest
  TLSVerifyClient               off
  TLSRenegotiate                ctrl 3600 data 512000 required off timeout 300
  TLSLog                        /var/log/proftpd/tls.log
#  
#    TLSSessionCache            shm:/file=/var/run/proftpd/sesscache
#  
#  
[...] 

Ich habe die Ports 6000 und 6100 hinzugefügt, um den passiven Modus von FTP zu ermöglichen, ebenso werde ich den passiven Modus über den CentOS firewalld-Dienst wie folgt zulassen:

firewall-cmd --add-port=6000-6100/tcp --permanent  
firewall-cmd --reload

Wir können den Status der Ports wie folgt überprüfen:

firewall-cmd --list-ports
[root@server1 ~]# firewall-cmd --list-ports  
6000-6100/tcp  
[root@server1 ~]#

Zusätzlich müssen wir SELINUX mitteilen, dass das Lesen/Schreiben der Dateien erlaubt ist.

setsebool -P allow_ftpd_full_access=1

Um TLS zu verwenden, müssen wir ein SSL-Zertifikat erstellen. Ich werde es in /etc/pki/tls/certs erstellen, wir können das SSL-Zertifikat wie folgt generieren:

openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem

[root@server1 certs]# openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem

Generiere einen 1024-Bit-RSA-Privatschlüssel

……………………………..++++++

………++++++

Schreibe neuen privaten Schlüssel in ‘/etc/pki/tls/certs/proftpd.pem’


Sie werden aufgefordert, Informationen einzugeben, die in Ihre Zertifikatsanfrage aufgenommen werden.

Was Sie eingeben, wird als Distinguished Name oder DN bezeichnet.

Es gibt einige Felder, die Sie leer lassen können.

Für einige Felder gibt es einen Standardwert,

Wenn Sie ‘.’ eingeben, wird das Feld leer gelassen.


Ländercode (2 Buchstaben) [XX]:

<–DE

Bundesland oder Provinzname (vollständiger Name) []:

<– Hamburg

Ortsname (z. B. Stadt) [Standardstadt]:

<– Lüneburg

Organisationsname (z. B. Unternehmen) [Standard Company Ltd]:

<–Howtoforge

Abteilung (z. B. Abschnitt) []:

<– Entwicklung

Allgemeiner Name (z. B. Ihr Name oder der Hostname Ihres Servers) []:

<–

server1.example.com

E-Mail-Adresse []:

<– [email protected]

[root@server1 certs]#

Geben Sie die oben genannten Werte in Rot nach Ihrem Ermessen ein, ich habe nur ein Beispiel gegeben.

Jetzt werde ich aus Sicherheitsgründen die Zertifikate nur lesbar machen:

chmod  0440 /etc/pki/tls/certs/proftpd.pem

Starten Sie schließlich den ProFTPD-Dienst wie folgt neu:

systemctl restart proftpd.service

Wir können uns mit der Filezilla-Software mit dem ProFTPD-Server verbinden, Sie müssen Filezilla auf dem Client-Computer installiert haben, um sich mit dem Server zu verbinden. Öffnen Sie Filezilla und geben Sie die folgenden Details ein:

Geben Sie die Kontodaten in FileZilla ein.

Die Details lauten:

Host = 192.168.1.100
Protokoll = FTP
Benutzer = tom
Port = kann leer bleiben, wenn Sie ihn nicht auf einen anderen Port als 21 angepasst haben
Passwort = ftppassword (gerade oben erstellt)

Hinweis: Da wir unsere Verbindung im obigen Schritt verschlüsselt haben, verwenden wir die Verschlüsselung mit Erfordere explizites FTP über TLS

Wenn Sie TLS nicht konfiguriert haben, können Sie Verwenden Sie Plain FTP verwenden.

Zertifikat akzeptieren

Es wird gefragt, ob Sie das Zertifikat vertrauen, drücken Sie OK

FileZilla verbunden mit ProFTPd.

Es wird mit dem FTP-geteilten Verzeichnis mit TLS-Verbindung verbunden.

4 Anonymer FTP-Zugriff in ProFTPD

Wir können ein anonymes FTP-Konto in ProFTPD erstellen, fügen Sie einfach diese Zeilen in die ProFTPD-Konfigurationsdatei ein:

nano /etc/proftpd.conf

Und fügen Sie diese Zeilen am Ende der Datei hinzu.

[...]  
###Anonymer Share#####

  Benutzer ftp
  Gruppe ftp

Benutzeralias anonym ftp
DirFakeUser       on ftp 
DirFakeGroup on ftp
MaxClients 10

        
     
DenyAll   
 
    

Jetzt müssen wir den FTP-Dienst neu starten:

systemctl restart proftpd.service

Jetzt verbinden Sie sich über Filezilla mit dem anonymen Konto wie folgt:

Anonymer Login

Hinweis: Da wir unsere Verbindung im obigen Schritt verschlüsselt haben, verwenden wir die Verschlüsselung mit Erfordere explizites FTP über TLS

Wenn Sie TLS nicht konfiguriert haben, können Sie Verwenden Sie Plain FTP verwenden.

Drücken Sie Verbinden.

Anonymer FTP-Login erfolgreich.

Wir sind erfolgreich mit dem Server mit einem anonymen Benutzer verbunden.

Herzlichen Glückwunsch! Jetzt haben wir erfolgreich die ProFTPD-Serverumgebung in CentOS 7.2 konfiguriert :)

5 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.