So richten Sie den FTP-Server unter Ubuntu Linux ein und verwenden ihn
FTP steht für "File Transfer Protocol" und ist ein großartiges Protokoll zum Herunterladen von Dateien von einem Remote- oder lokalen Server oder zum Hochladen von Dateien auf den Server. Die Verwendung von FTP erweist sich als eine ziemlich einfache Aufgabe, nachdem es richtig eingerichtet wurde. Es funktioniert, indem es einen Server hat, der auf Verbindungen (standardmäßig an Port 21) von Clients wartet. Die Clients können mit ihrem Benutzerkonto auf ein Remoteverzeichnis zugreifen und dort Dateien herunterladen oder hochladen, abhängig von den Berechtigungen, die ihnen erteilt wurden. Es ist auch möglich, eine anonyme Autorisierung zu konfigurieren, was bedeutet, dass Benutzer kein eigenes Konto benötigen, um sich mit dem FTP-Server zu verbinden.
Unter Ubuntu Linux gibt es eine Vielzahl verschiedener FTP-Server- und Client-Softwarepakete. Sie können sogar die Standard-GUI und die Befehlszeilentools als FTP-Client verwenden. Ein sehr beliebtes und hochgradig konfigurierbares FTP-Serverpaket ist vsftpd, das für viele Linux-Systeme, einschließlich Ubuntu, verfügbar ist.
In dieser Anleitung gehen wir die Schritt-für-Schritt-Anleitung zur Installation von vsftpd auf Ubuntu durch. Wir werden auch sehen, wie Sie den FTP-Server über verschiedene Einstellungen konfigurieren und dann die Befehlszeile, die GNOME-GUI oder die FTP-Client-Software verwenden, um eine Verbindung zum FTP-Server herzustellen.
FTP ist für einige Situationen ausreichend, aber für Verbindungen über das Internet wird SFTP empfohlen. Dies liegt daran, dass die Verwendung von FTP über eine Internetverbindung nicht sicher ist, da Ihre Anmeldeinformationen und Daten unverschlüsselt übertragen werden. Das "S" in SFTP steht für "Secure" und tunnelt das FTP-Protokoll über SSH und bietet so die Verschlüsselung, die für den Aufbau einer sicheren Verbindung erforderlich ist. Weitere Informationen zu SFTP finden Sie in unserem Leitfaden zum sicheren Übertragen von Dateien mit SFTP.
In diesem Tutorial lernen Sie:
- So installieren und konfigurieren Sie vsftpd unter Ubuntu
- So richten Sie ein FTP-Benutzerkonto ein
- So verbinden Sie sich über die Befehlszeile mit dem FTP-Server
- So stellen Sie über die GUI eine Verbindung zum FTP-Server her
- So konfigurieren Sie die anonyme FTP-Anmeldung
- So ändern Sie den standardmäßigen FTP-Überwachungsport
- Fehlerbehebung bei dem FTP-Verbindungsfehler "Verbindung verweigert"
Verbinden mit dem FTP-Server unter Ubuntu Linux
VSFTPD-Installation
Installieren Sie vsftpd auf Ihrem Ubuntu-System, indem Sie diesen Befehl in das Terminal eingeben:
sudo apt install vsftpd
Konfigurieren des vsftpd-Servers
Es ist immer am besten, eine Sicherungskopie der ursprünglichen Konfigurationsdatei aufzubewahren, nur für den Fall, dass später etwas schief geht. Benennen wir die Standardkonfigurationsdatei um:
sudo mv /etc/vsftpd.conf /etc/vsftpd.conf_origErstellen Sie eine neue vsftpd-Konfigurationsdatei mit nano oder einem anderen Texteditor, den Sie bevorzugen:
sudo nano /etc/vsftpd.confKopieren Sie die folgende Basiskonfiguration in Ihre Datei. Diese Konfiguration reicht für einen einfachen FTP-Server aus und kann später an die spezifischen Anforderungen Ihrer Umgebung angepasst werden, sobald Sie überprüft haben, dass dies ordnungsgemäß funktioniert:
listen=NO listen_ipv6=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key ssl_enable=NO pasv_enable=Yes pasv_min_port=10000 pasv_max_port=10100 allow_writeable_chroot=YESFügen Sie die obigen Zeilen in die neu erstellte Datei
/etc/vsftpd.confein, speichern Sie die Änderungen und schließen Sie die Datei.Die integrierte Firewall von Ubuntu blockiert standardmäßig den FTP-Datenverkehr, aber der folgende Befehl erstellt eine Ausnahme in UFW, um den Datenverkehr zuzulassen:
sudo ufw allow from any to any port 20,21,10000:10100 proto tcp-
Nachdem Sie die Konfigurationsdatei gespeichert und die Firewallregeln aktualisiert haben, starten Sie vsftpd neu, um die neuen Änderungen zu übernehmen:
sudo systemctl restart vsftpd
vsftpd-Konfigurationsdatei
Erstellen eines FTP-Benutzers
Unser FTP-Server ist bereit, eingehende Verbindungen zu empfangen, daher ist es jetzt an der Zeit, ein neues Benutzerkonto zu erstellen, das wir für die Verbindung mit dem FTP-Dienst verwenden.
Verwenden Sie diesen ersten Befehl, um ein neues Konto mit dem Namen
ftpuserzu erstellen, und den zweiten Befehl, um ein Kennwort für das Konto festzulegen:sudo useradd -m ftpuser sudo passwd ftpuser New password: Retype new password: passwd: password updated successfullyUm zu überprüfen, ob alles ordnungsgemäß funktioniert, sollten Sie mindestens eine Datei im Home-Verzeichnis von ftpuser speichern. Diese Datei sollte sichtbar sein, wenn wir uns in den nächsten Schritten bei FTP anmelden.
sudo bash -c "echo FTP TESTING > /home/ftpuser/FTP-TEST"
Verbinden Sie sich über die Befehlszeile mit dem FTP-Server
Sie sollten jetzt in der Lage sein, sich entweder über die IP-Adresse oder den Hostnamen mit Ihrem FTP-Server zu verbinden. Stellen Sie zunächst sicher, dass das standardmäßige FTP-Client-Dienstprogramm auf Ihrem System installiert ist, indem Sie den folgenden Befehl ausführen. Es wird entweder die Software installieren oder Ihnen mitteilen, dass sie bereits auf dem System vorhanden ist.
sudo apt install ftp
Um eine Verbindung über die Befehlszeile herzustellen und zu überprüfen, ob alles funktioniert, öffnen Sie ein Terminal und verwenden Sie den FTP-Befehl von Ubuntu, um eine Verbindung zu Ihrer Loopback-Adresse (127.0.0.1) herzustellen.
ftp 127.0.0.1
Verbinden mit dem FTP-Server über die Befehlszeile
Wie Sie im obigen Screenshot sehen können, konnten wir uns beim FTP-Server anmelden, indem wir den Benutzernamen und das Passwort angegeben haben, die wir zuvor konfiguriert haben. Als Nächstes versuchen wir, einen ls-Befehl auszugeben, der die Testdatei auflisten sollte, die wir in den vorherigen Schritten erstellt haben.
ftp> ls
Auflisten unserer Testdatei, um sicherzustellen, dass wir den Inhalt des FTP-Servers anzeigen können
Ihre Ausgabe sollte wie im obigen Screenshot aussehen und eine erfolgreiche Anmeldung und einen ls-Befehl anzeigen, der unsere zuvor erstellte Testdatei anzeigt.
Verbinden Sie sich über die GNOME-GUI mit dem FTP-Server
Sie können sich auch über die GUI mit Ihrem FTP-Server verbinden, wenn Sie dies bevorzugen. Es gibt viele Optionen für FTP-Clients, aber die standardmäßige GNOME-GUI unter Ubuntu bietet bereits die Möglichkeit, über den Dateimanager eine Verbindung zu FTP-Servern herzustellen. Hier erfahren Sie, wie Sie es verwenden, um eine Verbindung zu Ihrem FTP-Server herzustellen.
- Öffnen Sie den Dateimanager über das Menü "Aktivitäten" oder die Schnellstartleiste.
- Klicken Sie auf "Andere Standorte" und geben
Sie ftp://127.0.0.1in das Feld "Mit Server verbinden" am unteren Rand des Fensters ein und klicken Sie auf Verbinden. - Wählen Sie "Registrierter Benutzer" und geben Sie dann die Anmeldeinformationen des FTP-Kontos ein, die wir zuvor eingerichtet haben, und klicken Sie auf Verbinden.
- Nach erfolgreicher Verbindung wird die Testdatei angezeigt, die Sie zuvor erstellt haben. Sie können diese Datei nun herunterladen und anzeigen oder Ihre eigenen Inhalte in das Verzeichnis hochladen.
Verbinden mit dem FTP-Server über den GNOME-Dateimanager
Eingabe unserer FTP-Benutzerdaten
Erfolgreiche Verbindung zum FTP-Server, Anzeige unserer Testdatei
Anonymen Zugriff in vsftpd zulassen
Bisher haben wir gesehen, wie man neue Benutzer anlegt, die auf den FTP-Server zugreifen können. Wenn Sie möchten, dass andere auf Ihren FTP-Server zugreifen können, ohne einen Benutzernamen und ein Kennwort anzugeben, können Sie die anonyme Authentifizierung konfigurieren. Führen Sie die folgenden Schritte aus, um es einzurichten.
Zuerst müssen wir die Datei
/etc/vsftpd.confbearbeiten, also öffnen Sie sie mit nano oder einem anderen Texteditor.sudo nano /etc/vsftpd.confSuchen Sie als Nächstes nach der Zeile
anonymous_enable=NOund ändern Sie die Einstellung inJA.anonymous_enable=YESWenn Sie fertig sind, beenden Sie diese Datei, während Sie die neuen Änderungen speichern, und starten Sie dann den vsftpd-Dienst neu, damit die Änderungen wirksam werden.
sudo systemctl restart vsftpd- Um die anonyme Anmeldung zu testen, geben Sie den Befehl
ftp 127.0.0.1ein, verwenden Sieanonymousals Benutzernamen und ein leeres Kennwort. Sie sollten die Meldung230 Login erfolgreicherhalten, wie im Screenshot unten gezeigt.
Anmeldung am FTP-Server mit anonymer
Ändern der Standard-FTP-Portnummer
Standardmäßig überwacht das FTP-Protokoll Port 21 für die Benutzerauthentifizierung und Port 20 für die Datenübertragung. Wir können dieses Verhalten jedoch ändern, indem wir eine kleine Änderung an der Datei /etc/vsftpd.conf vornehmen. Verwenden Sie am Ende der Datei die Direktive listen_port, um einen anderen Port anzugeben, den vsftpd verwenden soll. Wenn Sie z. B. die folgende Zeile hinzufügen, wird vsftpd angewiesen, Port 2121 zu überwachen:
listen_port=2121
Abschließende Gedanken
In dieser Anleitung haben wir gesehen, wie Sie das Softwarepaket vsftpd verwenden, um einen FTP-Server unter Ubuntu Linux zu erstellen. Wir haben auch gelernt, wie man die Befehlszeile oder die GNOME-GUI als FTP-Client verwendet, um eine Verbindung zum Server herzustellen. Wenn Sie dieser Anleitung folgen, können Computer in Ihrem lokalen Netzwerk auf Ihr System zugreifen, um Dateien zu speichern und abzurufen, entweder über die Befehlszeile oder ihren bevorzugten FTP-Client.
Fehlerbehebung
Der häufigste Fehler, den Sie möglicherweise erhalten, ist die Meldung "Verbindung verweigert", wenn Sie versuchen, eine Verbindung zum Server herzustellen. Dies kann verschiedene Gründe haben, ist aber häufig mit einer Firewall verbunden, die die Verbindung blockiert, oder einer falsch konfigurierten vstcd-Datei. Stellen Sie sicher, dass der FTP-Port nicht von Ihrer Firewall blockiert wird, indem Sie den folgenden Befehl ausführen:
sudo ufw allow from any to any port 20,21,10000:10100 proto tcp
Überprüfen Sie auch den Status des vsftpd-Diensts, um sicherzustellen, dass er ausgeführt wird und keine Startfehler aufgetreten sind.
systemctl status vsftpd
Überprüfen des Status des vsftpd-Dienstes
Verwenden Sie die folgenden Befehle, um vsftpd zu starten oder den Dienst nach dem Anwenden von Konfigurationsänderungen neu zu starten.
sudo systemctl start vsftpd
OR
sudo systemctl restart vsftpd
Denken Sie schließlich daran, dass auch ein Router oder eine externe Firewall für die Blockierung Ihrer Verbindung verantwortlich sein kann. Wenn Sie mit dem Befehl ftp 127.0.0.1 auf dem Server selbst erfolgreich eine Verbindung zu Ihrem FTP-Server herstellen können und die oben genannten Schritte zur Fehlerbehebung ausgeführt haben, aber nicht in der Lage sind, von einem Remote-System aus eine Verbindung zum FTP-Server herzustellen, befindet sich wahrscheinlich ein Gerät zwischen den beiden Systemen, das die Verbindung blockiert.







