Einen FTP-Server unter Linux einrichten
File Transfer Protocol (FTP) ist ein häufig verwendetes Netzwerkprotokoll, das zum Übertragen von Dateien zwischen zwei Computern verwendet wird. Das Protokoll basiert auf einer Client-Server-Architektur. Auf einem der Computer wird ein FTP-Serverprogramm ausgeführt, während auf dem anderen Computer ein FTP-Clientprogramm ausgeführt wird, das je nach Berechtigungen Dateien auf den Servercomputer herunterladen oder hochladen kann.
Normalerweise müssen sich Benutzer, die auf den FTP-Server zugreifen, mit einem Benutzernamen und einem Kennwort authentifizieren, der Server kann jedoch auch so konfiguriert werden, dass er anonymen Benutzern den Zugriff ermöglicht.
Fast alle gängigen Betriebssysteme wie Windows, GNU/Linux, Mac OS verfügen über einen FTP-Server und Client-Programme. In diesem Artikel erfahren Sie, wie Sie einen FTP-Server auf einem Ubuntu-System einrichten.
Installation
Unter Ubuntu ist das Programm vsftpd
, welches dafür steht Sehr sicherer FTP-Daemon ist ein beliebtes FTP-Serverprogramm, das wie die meisten Server als Daemon, also als Hintergrundprozess, ausgeführt werden kann.
Dieses Programm ist im Ubuntu-Standard-Repository verfügbar. Um es zu installieren, führen Sie Folgendes aus:
sudo apt install vsftpd
Notiz: Für Ubuntu-Versionen < 14.04 verwenden Sie apt-get
anstatt geeignet
.
Nach der Installation ist die vsftpd
Daemon sollte automatisch starten. Um zu überprüfen, ob es richtig gestartet wurde, führen Sie Folgendes aus:
Dienst vsftpd-Status

Wenn der Status nicht ist Aktiv
d.h. es wurde nicht richtig gestartet, führen Sie den folgenden Befehl aus, um es zu starten, und überprüfen Sie den Status nach dem Ausführen erneut, um zu sehen, ob er jetzt ist Aktiv
.
sudo service vsftpd start
Aufbau
Die Konfigurationsdatei für vsftpd
ist /etc/vsftpd.conf
. Hier stehen Ihnen zahlreiche Konfigurationsoptionen zur Verfügung. Wir werden zwei Optionen ändern, die häufig erforderlich sind.
Öffnen Sie die Datei entweder mit vim oder einem beliebigen Editor Ihrer Wahl.
sudo vim /etc/vsftpd.conf
Anonymer Zugriff auf den FTP-Server ist standardmäßig nicht erlaubt. Um einen anonymen Zugriff zu ermöglichen, ändern wir die Variable anonym_enable
von NEIN
zu JA
in der Datei.

Für den anonymen Zugriff ein Benutzer mit dem Namen ftp
wird während der Installation erstellt. Das Standardverzeichnis für den Zugriff auf einen anonymen Benutzer ist /srv/ftp
, das ist eigentlich das Home-Verzeichnis des Benutzers ftp
. Alle Dateien, die mit anonymen Benutzern geteilt werden sollen, müssen hierher kopiert werden.
Wenn das Verzeichnis für den anonymen Zugriff geändert werden soll, müssen wir das Heimatverzeichnis des Benutzers ändern ftp
. Führen Sie dazu Folgendes aus:
sudo usermod -d ftp

Ebenso ist standardmäßig kein Schreibzugriff, d. h. Upload-Zugriff, auf den FTP-Server erlaubt. Um es zu aktivieren, kommentieren wir die Zeile mit Variable write_enable=YES
.

Speichern und beenden Sie die Datei. Wenn Sie vim verwenden, drücken Sie Flucht
um in den vim-Befehlsmodus zu wechseln, dann tippe :wq
und drücke Eingeben
um die Datei zu speichern und zu verlassen.
Wir müssen den FTP-Server-Daemon neu starten, damit diese Änderungen wirksam werden. Um es neu zu starten, führen Sie Folgendes aus:
sudo service vsftpd neustart
Testen des Servers
Die meisten modernen Webbrowser haben eine integrierte Unterstützung für den Zugriff auf FTP-Server, d. h. sie können als integrierte FTP-Clients fungieren. Sie unterstützen jedoch nur das Herunterladen von Dateien vom Server und nicht das Hochladen.
Test herunterladen
Eingeben ftp://
in der Adressleiste des Browsers, um auf den FTP-Server zuzugreifen, wo ist die IP-Adresse oder der Domänenname des FTP-Servers. Um Ihren lokalen FTP-Server zu testen, geben Sie
ftp:://127.0.0.1

Beachten Sie, dass uns der Server, da der anonyme Zugriff aktiviert wurde, eine Verzeichnisliste des Ordners anzeigt, den wir für den anonymen Zugriff aktiviert haben, nämlich. /srv/files/ftp
.

Lassen Sie uns die Konfigurationsdatei ändern, um den anonymen Zugriff jetzt zu deaktivieren und den Zugriff mit Benutzeranmeldung zu testen.
sudo vim /etc/vsftpd.conf
Ändern Sie die Variable anonym_enable
zu NEIN
.

Speichern und beenden Sie die Datei. Starten Sie den FTP-Server neu, damit diese Änderungen wirksam werden.
sudo service vsftpd neustart
Öffnen Sie dieselbe URL erneut im Browser (ftp://127.0.0.1
).

Wie wir sehen, fordert uns der Server nun auf, den Benutzernamen und das Passwort einzugeben. Geben Sie die Zugangsdaten ein und drücken Sie OK
.

Jetzt ist die Verzeichnisliste das Home-Verzeichnis des angemeldeten Benutzers. In diesem Fall ist es /home/abhi
.

Test hochladen
Webbrowser erlauben nur das Herunterladen von Dateien von FTP-Servern. Um Dateien auf einen FTP-Server hochzuladen, greifen wir über einen Datei-Explorer auf den Server zu.
In Ubuntu verwenden wir den Standarddatei-Explorer Nautilus. Öffnen Sie Nautilus, indem Sie auf das Symbol im Dock klicken, oder suchen Sie es in Dash und öffnen Sie es.

Klicke auf Andere Standorte
ganz unten.

Geben Sie ganz unten unsere FTP-Server-URL ein (ftp:://127.0.0.1
) in das Eingabefeld Mit Server verbinden und klicken Sie auf die Schaltfläche „Verbinden“.

Markieren Sie das Kontrollkästchen „Registrierter Benutzer“ und geben Sie den Benutzernamen und das Passwort ein. Sie können zwischen drei Optionen wählen, um sich das oben eingegebene Passwort zu merken. Drücken Sie abschließend oben im Fenster auf die Schaltfläche „Verbinden“.

Jetzt können wir ganz einfach eine Datei auf dem FTP-Server kopieren oder erstellen, wie wir es in einem Datei-Explorer tun. Der FTP-Server erscheint auf der linken Seite, wie unten gezeigt.

nHinweis: Obwohl vsftpd
kann für den Schreibzugriff anonymer Benutzer konfiguriert werden, dies stellt ein großes Sicherheitsrisiko für das System dar und darf niemals verwendet werden! Upload auf FTP-Server muss nur für Systembenutzer aktiviert werden.
Fazit
Auf diese Weise können wir einen FTP-Server auf Ubuntu einrichten. Stellen Sie sicher, dass Sie von einem anderen System in Ihrem Netzwerk darauf zugreifen. In diesem Fall müssen Sie eingeben ftp://Ihre_IP_Adresse
anstatt ftp://127.0.0.1
im Browser des anderen Systems.
Beachten Sie, dass die meisten FTP-Serverprogramme gesichert sind, um die übertragenen Inhalte mit SSL/TLS (genannt FTPS) oder mit SSH-FTP zu verschlüsseln. vsftpd
verwendet FTPS in seiner Implementierung.