Server Installation · 5 min read · Dec 17, 2025

Wie man ProFTPD auf CentOS 7.0 installiert

Dieses Dokument beschreibt, wie man ProFTPD auf einem CentOS 7.0 Server installiert und konfiguriert. ProFTPD ist ein FTP-Daemon für Unix- und Unix-ähnliche Betriebssysteme. ProFTPD wird unter der GNU Public License (GPL) entwickelt, veröffentlicht und verteilt, die es im Wesentlichen als freie Software festlegt, was bedeutet, dass es verkauft, lizenziert und auf jede gewünschte Weise manipuliert werden kann, solange der vollständige und vollständige Quellcode entweder jedem ProFTPD-Paket beiliegt oder von allen Seiten, die vorkompilierte Binärdateien verteilen, zur Verfügung gestellt wird. Die Software kann von jedem jederzeit modifiziert werden, solange alle abgeleiteten Werke ebenfalls unter der GNU Public License lizenziert sind.

1 Vorbemerkung

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

2 ProFTPD installieren

2.1 Installation:

Dazu aktivieren Sie EPEL wie folgt:

rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm

Zuerst installieren wir ProFTPD und OpenSSL wie folgt:

yum install -y proftpd openssl proftpd-utils

Wir müssen die Dienste starten

systemctl start proftpd.service  
systemctl enable proftpd.service

Zusätzlich müssen wir in CentOS 7.0 die Firewall-cmd für den FTP-Dienst wie folgt konfigurieren:

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.5

[root@server1 ~]#

2.2 ProFTPD-Benutzer erstellen

Dazu werde ich eine Gruppe ftpgroup und den Benutzer srijan für ProFTPD erstellen. Ich werde den Benutzer srijan mit dem Home-Verzeichnis /ftpshare einschränken.

groupadd ftpgroup

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

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

Als nächstes müssen wir das Verzeichnis so schützen, dass dessen Inhalt von keinem Benutzer entfernt oder umbenannt werden kann, daher ändern wir die Verzeichnisberechtigungen wie folgt:

chmod -R 1777 /ftpshare/

Jetzt sind wir bereit für die ProFTPD-Verbindung

Jetzt können wir uns mit dem Benutzer srijan und dem Passwort unter ftp://192.168.0.100 anmelden.

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, eine Sicherung der Originaldatei zu erstellen und dann die Datei wie unten gezeigt zu bearbeiten:

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

Geben Sie die Einträge wie gezeigt ein

[...]  
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, bleibt das Feld leer.


Ländercode (2 Buchstaben) [XX]:

<–DE

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

<– Hamburg

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

<– Lüneburg

Name der Organisation (z. B. Unternehmen) [Standard Company Ltd]:

<– ISPConfig

Name der organisatorischen Einheit (z. B. Abteilung) []:

<– 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 obigen Werte in Rot nach Ihrem Wunsch 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

Schließlich starten Sie den ProFTPD-Dienst wie folgt neu:

systemctl restart proftpd.service

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

Die Details sind:

Host = 192.168.0.100
Protokoll = FTP
Benutzer = srijan
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 unverschlüsseltes FTP verwenden.

Es wird gefragt, ob Sie den Zertifikaten vertrauen, drücken Sie OK

Es wird eine Verbindung zum FTP-Shared-Verzeichnis mit TLS-Verbindung hergestellt.

4 Anonymer FTP-Zugriff in ProFTPD

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

nano /etc/proftpd.conf

Und fügen Sie diese Einträge 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 die Dienste neu starten:

systemctl restart proftpd.service

Jetzt verbinden Sie sich über Filezilla wie folgt:

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 unverschlüsseltes FTP verwenden.

Drücken Sie Verbinden:

Es wird gefragt, ob Sie den Zertifikaten vertrauen, drücken Sie OK

Wir haben erfolgreich eine Verbindung zum Server mit dem anonymen Benutzer hergestellt.

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

5 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.