GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Installieren Sie Vsftpd mit SSL/TLS auf Ubuntu 20.04

Vsftpd (d.h. sehr sicherer FTP-Daemon) ist eine FTP-Server-Software für Linux und andere Unix-ähnliche Systeme. Eine FTP-Server-Software erleichtert die Übertragung von Dateien von einem Client-Computer auf den Server und umgekehrt.

In diesem Tutorial erfahren Sie, wie Sie Vsftpd installieren auf Ubuntu 20.04 und sichere Dateiübertragung (FTPS) über SSL/TLS aktivieren.

Voraussetzungen

  • Ein Ubuntu 20.04 Linux-System
  • Ein Benutzer mit sudo-Fähigkeit
  • Ein SSL-fähiger FTP-Client wie FileZilla

Installieren Sie Vsftpd auf Ubuntu

Vsftpd ist im standardmäßigen Ubuntu-Paket-Repository verfügbar. Sie können damit beginnen, verfügbare Pakete mit dem folgenden Befehl zu aktualisieren.

$ sudo apt update

Führen Sie als Nächstes den folgenden Befehl aus, um Vsftpd zu installieren.

$ sudo apt install vsftpd

Geben Sie y ein wenn Sie aufgefordert werden, mit der Installation fortzufahren.

Sobald Vsftpd erfolgreich installiert ist, können Sie die Version mit dem folgenden Befehl überprüfen.

$ vsftpd -v

Überprüfen Sie außerdem den Status des Vsftpd-Servers wie folgt.

$ sudo systemctl status vsftpd

Der vsftpd Der Dienst sollte bereits aktiv sein. Drücken Sie q um zur Eingabeaufforderung zurückzukehren.

Falls der vsftpd-Dienst noch nicht aktiv ist, können Sie ihn mit dem nächsten Befehl starten.

$ sudo systemctl start vsftpd

Vsftpd konfigurieren

Es gibt viele Optionen, die Sie für vsftpd konfigurieren können, aber wir werden in diesem Tutorial nur die Grundlagen untersuchen. Öffnen Sie die vsftpd-Konfigurationsdatei mit dem folgenden Befehl.

$ sudo nano /etc/vsftpd.conf

Sie werden sehen, dass die verschiedenen vsftpd-Optionen in der Konfigurationsdatei gut erklärt sind. Sie müssen nur die Anweisungen lesen, um zu verstehen, was Sie aktivieren oder deaktivieren möchten. Nachfolgend finden Sie einige Beispiele.

Anonymen FTP-Zugriff konfigurieren

Standardmäßig ist anonymes FTP deaktiviert. Wir empfehlen, diese Standardeinstellung unverändert zu lassen. Wenn Sie jedoch aus irgendeinem Grund den anonymen FTP-Zugriff zu Testzwecken aktivieren möchten, ändern Sie den Wert von anonymous_enable Option von NEIN bis JA.

Lassen Sie es vorerst so wie es ist.

Lokalen Benutzern erlauben, sich anzumelden

Lokale Benutzer dürfen sich standardmäßig anmelden. Wenn Sie verhindern möchten, dass sich lokale Benutzer beim Vsftpd-Server anmelden, ändern Sie den Wert von local_enable von JA zu NEIN.

Sie könnten auch nur bestimmten lokalen Benutzern erlauben, sich beim Vsftpd-Server anzumelden. Stellen Sie dazu sicher, dass local_enable ist auf JA stellen.

Fügen Sie danach die folgenden Zeilen darunter hinzu.

userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO 

Speichern und schließen Sie die vsftpd.conf-Datei.

Erstellen Sie als Nächstes die Benutzerlistendatei mit dem nächsten Befehl und geben Sie die zulässigen Benutzer einzeln pro Zeile ein.

$ sudo nano /etc/vsftpd.userlist

Speichern und schließen Sie die Benutzerlistendatei.

Starten Sie vsftpd neu mit:

$ sudo systemctl restart vsftpd

FTP-Schreibbefehl aktivieren

Damit FTP-Benutzer Dateien erstellen, löschen, umbenennen und speichern können, kommentieren Sie write_enable aus Option und vergewissern Sie sich, dass sie auf JA eingestellt ist.

Bevor wir fortfahren, melden wir uns beim Vsftpd-Server an, um zu bestätigen, dass er funktioniert. Speichern Sie zunächst alle Änderungen und schließen Sie die vsftpd-Konfigurationsdatei.

Melden Sie sich beim Vsftpd-Server an

Lassen Sie sich dazu einen Testbenutzer anlegen und wie folgt ein Passwort vergeben.

$ sudo useradd -m myftpuser
$ sudo passwd myftpuser

Hinweis: Wenn Sie die vsftpd Benutzerliste aktiviert haben vergessen Sie nicht, den FTP-Benutzer entsprechend zu /etc/vsftpd.userlist hinzuzufügen. Standardmäßig haben Benutzer ssh-Zugriff, es wird empfohlen, den Shell-Zugriff für FTP-Benutzer zu deaktivieren.

Starten Sie nun einen SSL-fähigen FTP-Client wie FileZilla und melden Sie sich dann mit dem neu erstellten Testbenutzer an.

In meinem Fall hat FileZilla mich benachrichtigt, dass der Server unsicher ist, da er FTP über TLS nicht unterstützt.

Trennen Sie die Verbindung. Lassen Sie uns dies im nächsten Abschnitt beheben.

SSL/TLS für sichere Dateiübertragung aktivieren

Um die sichere Dateiübertragung per TLS zu aktivieren, gehen Sie wie folgt vor.

Öffnen Sie zunächst die vsftpd-Konfigurationsdatei mit dem folgenden Befehl.

$ sudo nano /etc/vsftpd.conf

Suchen Sie als Nächstes nach der rsa_cert_file und rsa_private_key_file Optionen und aktualisieren Sie die Werte wie unten gezeigt.

rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.key 

Suchen Sie auch nach ssl_enable und ändern Sie den Wert auf JA.

ssl_enable=YES 

Speichern und schließen Sie die vsftpd-Konfigurationsdatei.

Generieren Sie einen privaten Schlüssel und ein Zertifikat

Jetzt müssten Sie einen privaten Schlüssel erstellen und ein TLS/SSL-Zertifikat mit openssl generieren. Sie können das kostenlose SSL-Zertifikat von Let's Encrypt verwenden, wenn Sie eine Domain haben, die auf den FTP-Server verweist.

Führen Sie zum Generieren eines privaten Schlüssels Folgendes aus:

$ sudo openssl genrsa -out /etc/ssl/private/vsftpd.key

Generieren Sie als Nächstes mit dem folgenden Befehl eine Zertifikatssignierungsanforderung. Sie werden aufgefordert, einige Informationen wie Land, Stadt, E-Mail-Adresse usw. anzugeben. Bitte lesen Sie die Anweisungen sorgfältig durch.

$ sudo openssl req -new -key /etc/ssl/private/vsftpd.key -out /etc/ssl/certs/vsftpd.csr

Generieren und signieren Sie nun das 365 Tage gültige Zertifikat wie folgt.

$ sudo openssl x509 -req -days 365 -in /etc/ssl/certs/vsftpd.csr -signkey /etc/ssl/private/vsftpd.key -out /etc/ssl/certs/vsftpd.pem 

Starten Sie vsftpd neu mit:

$ sudo systemctl restart vsftpd

Versuchen Sie erneut, sich mit dem Vsftpd-Server zu verbinden.

Sicherlich konnte sich FileZilla dieses Mal sicher über TLS verbinden. Sie können sicher die Option wählen, diesem Zertifikat in zukünftigen Sitzungen immer zu vertrauen. Klicken Sie dann auf OK um mit der Verbindung fortzufahren.

Wenn Sie versuchen, sich über die Befehlszeile mit dem FTP-Server zu verbinden, der FTP über TLS nicht unterstützt, erhalten Sie eine Fehlermeldung. Zum Beispiel:

$ ftp 192.168.100.168

Dies ist ein weiterer Beweis dafür, dass Ihr Vsftpd-Server tatsächlich für die sichere Dateiübertragung über TLS aktiviert ist.

Schlussfolgerung

In diesem Tutorial haben wir Ihnen gezeigt, wie Sie einen Vsftpd-Server unter Ubuntu 20.04 installieren. Wir haben auch beschrieben, wie Sie die sichere Dateiübertragung über das TLS-Protokoll aktivieren können. Wir haben in diesem Artikel nur grundlegende Vsftpd-Optionen behandelt, aber Sie können weitere Optionen auf der Handbuchseite für vsftpd-Konfigurationsoptionen erkunden.


Ubuntu
  1. So installieren Sie einen FTP-Server unter CentOS 7 mit VSFTPD

  2. So installieren und konfigurieren Sie einen FTP-Server (vsftpd) mit SSL/TLS unter Ubuntu 20.04

  3. Installieren Sie Vsftpd mit SSL / TLS auf Ubuntu 20.04 - Beste Vorgehensweise?

  4. Installieren Sie VSFTPD auf Ubuntu 16.04

  5. Installieren Sie Vsftpd mit SSL/TLS auf Ubuntu 20.04

So installieren Sie den VsFTPD-Server mit TLS unter Ubuntu 18.04 LTS

So installieren Sie ProFTPD mit TLS unter Ubuntu 20.04 LTS

So installieren und konfigurieren Sie Apache mit Let’s Encrypt TLS/SSL unter Ubuntu 20.04

So installieren Sie Nginx mit Let’s Encrypt TLS/SSL unter Ubuntu 20.04

So installieren Sie Vsftpd unter Ubuntu 16.04

So installieren Sie Vsftpd unter Ubuntu 18.04 LTS