Einrichten einer sicheren FTP-Dateiübertragung mit SSL / TLS in RHEL 8

In unserem letzten Artikel haben wir ausführlich beschrieben, wie ein installiert und konfiguriert wird FTP Server in RHEL 8 Linux. In diesem Artikel erklären wir, wie Sie eine sichern FTP Server mit SSL / TLS um Datenverschlüsselungsdienste für die sichere Dateiübertragung zwischen Systemen zu aktivieren.

Wir hoffen, Sie haben bereits eine FTP Server installiert und läuft ordnungsgemäß. Wenn nicht, verwenden Sie bitte die folgende Anleitung, um es auf Ihrem System zu installieren.

  1. So installieren, konfigurieren und sichern Sie den FTP-Server in RHEL 8

Schritt 1. Generieren des SSL / TLS-Zertifikats und des privaten Schlüssels

1. Erstellen Sie das folgende Verzeichnis, um das zu speichern SSL / TLS Zertifikat- und Schlüsseldateien.

# mkdir -p /etc/ssl/vsftpd

2. Als nächstes generieren Sie eine selbstsignierte SSL / TLS Zertifikat und privater Schlüssel mit dem folgenden Befehl.

# openssl req -x509 -nodes -keyout /etc/ssl/vsftpd/vsftpd.pem -out /etc/ssl/vsftpd/vsftpd.pem -days 365 -newkey rsa:2048

Im Folgenden werden die im obigen Befehl verwendeten Flags erläutert.

  1. req – ist ein Befehl für die Verwaltung von X.509 Certificate Signing Request (CSR).
  2. x509 – bedeutet X.509-Zertifikatdatenverwaltung.
  3. Tage – Definiert eine Anzahl von Tagen, für die das Zertifikat gültig ist.
  4. Newkey – Gibt den Zertifikatschlüsselprozessor an.
  5. RSA: 2048 – Der RSA-Schlüsselprozessor generiert einen privaten 2048-Bit-Schlüssel.
  6. Keyout – Legt die Schlüsselspeicherdatei fest.
  7. aus – Legt die Zertifikatspeicherdatei fest. Beachten Sie, dass sowohl Zertifikat als auch Schlüssel in derselben Datei gespeichert sind: /etc/ssl/vsftpd/vsftpd.pem.


Mit dem obigen Befehl werden Sie aufgefordert, die folgenden Fragen zu beantworten. Denken Sie daran, Werte zu verwenden, die für Ihr Szenario gelten.

Country Name (2 letter code) [XX]:IN
State or Province Name (full name) []:Lower Parel
Locality Name (eg, city) [Default City]:Mumbai
Organization Name (eg, company) [Default Company Ltd]:TecMint.com
Organizational Unit Name (eg, section) []:Linux and Open Source
Common Name (eg, your name or your server's hostname) []:tecmint
Email Address []:[email protected]
Erstellen Sie ein SSL-Zertifikat für den FTP-Server
Erstellen Sie ein SSL-Zertifikat für den FTP-Server

Schritt 2. Konfigurieren von VSFTPD für die Verwendung von SSL / TLS

3. Öffnen Sie die VSFTPD-Konfigurationsdatei zur Bearbeitung mit Ihrem bevorzugten Befehlszeileneditor.

# vi /etc/vsftpd/vsftpd.conf

Fügen Sie die folgenden Konfigurationsparameter hinzu, um SSL zu aktivieren, und wählen Sie dann am Ende der Datei die zu verwendende Version von SSL und TLS aus.

ssl_enable=YES
ssl_tlsv1_2=YES
ssl_sslv2=NO
ssl_sslv3=NO

4. Als nächstes fügen Sie die rsa_cert_file und rsa_private_key_file Optionen zum Angeben des Speicherorts des SSL-Zertifikats bzw. der Schlüsseldatei.

rsa_cert_file=/etc/ssl/vsftpd/vsftpd.pem
rsa_private_key_file=/etc/ssl/vsftpd/vsftpd.pem

5. Fügen Sie nun diese Parameter hinzu, um die Verwendung anonymer Verbindungen zu deaktivieren SSL und erzwingen Sie alle nicht anonymen Verbindungen über SSL.

allow_anon_ssl=NO          # disable anonymous users from using SSL
force_local_data_ssl=YES        # force all non-anonymous logins to use a secure SSL connection for data transfer
force_local_logins_ssl=YES      # force all non-anonymous logins  to send the password over SSL

6. Fügen Sie als Nächstes diese Option hinzu, um die Wiederverwendung von SSL-Datenverbindungen zu deaktivieren und die SSL-Chiffren festzulegen HOCH um verschlüsselte SSL-Verbindungen zuzulassen.

require_ssl_reuse=NO
ssl_ciphers=HIGH

7. Sie müssen auch den Portbereich (Min- und Max-Port) der passiven Ports angeben, die von vsftpd für sichere Verbindungen verwendet werden sollen pasv_min_port und pasv_max_port Parameter jeweils. Darüber hinaus können Sie optional das SSL-Debugging zur Fehlerbehebung mithilfe von aktivieren debug_ssl Möglichkeit.

pasv_min_port=40000
pasv_max_port=50000
debug_ssl=YES

8. Speichern Sie abschließend die Datei und starten Sie den vsftpd-Dienst neu, damit die oben genannten Änderungen wirksam werden.

# systemctl restart vsftpd

9. Eine weitere wichtige Aufgabe, die Sie ausführen müssen, bevor Sie sicher auf den FTP-Server zugreifen können, ist das Öffnen der Ports 990 und 40000-50000 in der Systemfirewall. Auf diese Weise können TLS-Verbindungen zum vsftpd-Dienst hergestellt und der in der VSFTPD-Konfigurationsdatei definierte Portbereich passiver Ports wie folgt geöffnet werden.

# firewall-cmd --zone=public --permanent –add-port=990/tcp
# firewall-cmd --zone=public --permanent –add-port=40000-50000/tcp
# firewall-cmd --reload

Schritt 3: Installieren Sie FileZilla, um eine sichere Verbindung zum FTP-Server herzustellen

10. Um eine sichere Verbindung zum FTP-Server herzustellen, benötigen Sie einen FTP-Client, der dies unterstützt SSL / TLS Verbindungen wie FileZilla – ist ein weit verbreiteter, plattformübergreifender Open-Source-FTP-, SFTP- und FTPS-Client, der standardmäßig SSL / TLS-Verbindungen unterstützt.

Installieren FileZilla Verwenden Sie unter Linux Ihren Standardpaketmanager wie folgt:

$ sudo apt-get install filezilla           #Debian/Ubuntu
# yum install epel-release filezilla        #On CentOS/RHEL
# dnf install filezilla                 #Fedora 22+
$ sudo zypper install filezilla         #openSUSE

11. Nach dem Filezilla Paket installiert ist, suchen Sie es im Systemmenü und öffnen Sie es. Geben Sie die Host-IP-Adresse, den Benutzernamen und das Kennwort des Benutzers an, um den Remote-FTP-Server über die Hauptschnittstelle schnell zu verbinden. Dann klick Schnelle Verbindung.

Stellen Sie mit Filezilla eine Verbindung zum FTP-Server her
Stellen Sie mit Filezilla eine Verbindung zum FTP-Server her

12. Anschließend werden Sie von der Anwendung aufgefordert, eine sichere Verbindung mit dem unbekannten, selbstsignierten Zertifikat zuzulassen. Klicken OK fortfahren.

Akzeptieren Sie das SSL-Zertifikat, um FTP zu verbinden
Akzeptieren Sie das SSL-Zertifikat, um FTP zu verbinden

Wenn die Konfiguration auf dem Server in Ordnung ist, sollte die Verbindung erfolgreich sein, wie im folgenden Screenshot gezeigt.

Verbundener FTP-Server
Verbundener FTP-Server

13. Testen Sie abschließend den Status der sicheren FTP-Verbindung, indem Sie versuchen, Dateien von Ihrem Computer auf den Server hochzuladen, wie im nächsten Screenshot gezeigt.

Übertragen Sie Dateien sicher über Filezilla
Übertragen Sie Dateien sicher über Filezilla

Das ist alles! In diesem Artikel haben wir gezeigt, wie ein FTP-Server mit gesichert wird SSL / TLS für die sichere Dateiübertragung in RHEL 8. Dies ist der zweite Teil unseres umfassenden Handbuchs zum Installieren, Konfigurieren und Sichern eines FTP-Servers in RHEL 8. Verwenden Sie das unten stehende Feedback-Formular, um Fragen oder Gedanken zu teilen.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *