Unabhängig davon, ob Sie einen Ubuntu-Server betreiben oder einfach Dateien aus der Ferne kopieren möchten, ist die Einrichtung eines Ubuntu-FTP-Servers einfach.
Wenn Sie einen Linux-Server einrichten, benötigen Sie einen FTP-Zugriff. Dies bedeutet, dass Sie zunächst eine installieren müssen FTP-Server unter Linux. Dies sollte eines der ersten Dinge sein, die Sie nach der Installation Ihres Server-Betriebssystems tun.
Auf vielen Linux-Servern wird Ubuntu ausgeführt. Schauen wir uns also an, wie man einen FTP-Server auf einem Ubuntu-Server einrichtet.
Was ist ein FTP-Server?
FTP oder File Transfer Protocol ist das System, das zum Hochladen (Ablegen) oder Herunterladen (Abrufen) von Dateien von einem Server verwendet wird. Sie haben es wahrscheinlich schon einmal verwendet, ohne es zu merken, wenn Sie Dateien abgerufen oder Bilder ins Internet hochgeladen haben. Oder Sie haben möglicherweise einen FTP-Client verwendet, um eine direkte Verbindung zum FTP-Dateiserver herzustellen.
Dazu muss FTP-Serversoftware auf dem Remote-Server installiert sein, auf dem sich die Dateien befinden.
Unabhängig davon, ob Sie einen Linux-Heimserver, einen Webserver, einen Spieleserver oder einen anderen Server erstellen, der zu Ihrem Projekt passt, ist FTP die einfachste Möglichkeit, Daten von einem System auf ein anderes zu übertragen.
Installieren Sie einen Server unter Ubuntu
Die Installation eines FTP-Servers unter Ubuntu ist unkompliziert. Die wohl beste Lösung ist vsftpd. Führen Sie die folgenden Schritte aus, um einen FTP-Server unter Ubuntu mit vsftpd zu installieren und zu konfigurieren.
1. Installieren Sie vsftpd
Möglicherweise haben Sie vsftpd bereits installiert. Um dies zu überprüfen, öffnen Sie ein Terminalfenster und geben Sie ein
sudo apt list --installed
Sie sollten vsftpd am Ende der Liste finden. Wenn nicht, installieren Sie einfach mit
sudo apt install vsftpd
Nach der Installation ist es an der Zeit, vsftpd zu konfigurieren. Erstellen Sie zunächst eine Kopie der ursprünglichen Konfigurationsdatei. Das heißt, wenn etwas schief geht, kann die Standardkonfiguration wiederhergestellt werden.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default
Wenn das erledigt ist, starten Sie den Dienst mit:
sudo systemctl start vsftpd
Bestätigen Sie, dass der Server läuft mit:
sudo systemctl enable vsftpd
Wenn vsftpd installiert ist, können Sie mit der Konfiguration beginnen.
2. Erstellen Sie einen FTP-Benutzer
Als erstes benötigen Sie ein FTP-Benutzerkonto. Damit können Sie mit jedem FTP-Client über vsftpd auf die auf dem Server gehosteten Dateien zugreifen. Geben Sie im Terminal Folgendes ein:
sudo useradd –m username
(Ersetzen Sie „Benutzername“ durch Ihren beabsichtigten Benutzernamen.)
sudo password username
Erstellen Sie mit festgelegtem Benutzernamen und Passwort eine Testdatei im Home-Ordner des Kontos, um zu bestätigen, dass es funktioniert:
cd /home/username
sudo nano testfile.txt
Wenn Sie zum ersten Mal eine Verbindung zu Ihrem Ubuntu-FTP-Server herstellen, sollte testfile.txt angezeigt werden.
3. Sichern Sie Ihren Ubuntu-FTP-Server
Bevor Sie jedoch eine Verbindung einrichten, müssen Sie sicherstellen, dass die FTP-Ports in Ubuntu geöffnet sind. Standardmäßig sind diese aus Sicherheitsgründen in der ufw (Uncomplicated Firewall) geschlossen.
Um den Zugriff über Port 20 zu ermöglichen, verwenden Sie
sudo ufw allow 20/tcp
Wenn Ihre Distribution eine andere Firewall verwendet oder Sie eine Alternative installiert haben, lesen Sie in der Dokumentation nach, um die Ports zu öffnen.
Sie möchten außerdem, dass Benutzer Dateien hochladen können. Sie können dies in der Konfigurationsdatei festlegen. Öffnen Sie es zum Bearbeiten:
sudo nano /etc/vsftpd.conf
Suchen Sie write_enabled und kommentieren Sie den Eintrag aus. Stellen Sie dabei sicher, dass er auf „YES“ gesetzt ist:
write_enable=YES
Schlag Strg+X verlassen, und Y speichern.
Bei öffentlich zugänglichen FTP-Servern sollten Sie den Zugriff jedes Benutzers einschränken. Mit chroot können wir jeden Benutzer auf sein Home-Verzeichnis beschränken. Suchen Sie in vsftpd.conf nach dieser Zeile und kommentieren Sie sie aus (entfernen Sie das #):
chroot_local_user=YES
Wieder, Strg+X verlassen, und Y speichern.
Für mehrere Benutzer ist die Führung einer Liste eine intelligentere Option.
Öffnen Sie zunächst vsftpd.chroot_list in Ihrem Texteditor.
sudo nano /etc/ vsftpd.chroot_list
Listen Sie hier die Benutzernamen auf, die Sie auf ihre eigenen Ordner beschränken möchten. Speichern und beenden Sie, kehren Sie dann zu vsftpd.conf zurück und stellen Sie sicher, dass chroot_local_user=YES unkommentiert ist:
#chroot_local_user=YES
Kommentieren Sie stattdessen
chroot_list_enable=YES
Und
chroot_list_file=/etc/vsftpd.chroot_list
Es sollte so aussehen:
Nochmals speichern und beenden. Starten Sie abschließend den FTP-Dienst neu:
sudo systemctl restart vsftpd.service
Zum Schluss verwenden Sie die Hostname Befehl, um den Namen Ihres Ubuntu-Servers zu überprüfen. Über diesen können Sie dann eine Verbindung zum FTP-Server herstellen. Wenn Sie lieber die IP-Adresse verwenden möchten, geben Sie die ein IP Adresse Befehl und notieren Sie ihn.
4. Verschlüsselte Verbindungen: FTP+SSL=FTPS
Sie können auch die Verschlüsselung des Datenverkehrs von und zu Ihrem Ubuntu-FTP-Server mithilfe von SSL/TLS erzwingen.
Verwandt: Verschlüsselungsbegriffe, die jeder kennen sollte
Suchen Sie in der Datei vsftpd.conf nach einem Verweis auf „SSL-verschlüsselte Verbindungen“ und fügen Sie Folgendes hinzu:
ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Speichern und beenden Sie die Datei. Sie können jetzt FTPS als Verbindungsprotokoll in Ihrem FTP-Client angeben.
5. Installieren Sie einen FTP-Client unter Ubuntu
Von einem anderen System aus können Sie mit einem Befehlszeilentool oder einer Desktop-App eine Verbindung zu Ihrem Ubuntu-FTP-Server herstellen.
Unter Linux können Sie im Terminal mit auf den Server zugreifen
sudo ftp hostname
Stellen Sie sicher, dass Sie „hostname“ durch den Hostnamen Ihres Servers ersetzen. Sie können auch die IP-Adresse verwenden
sudo ftp ipaddress
Wenn Sie dazu aufgefordert werden, geben Sie den Benutzernamen und das Passwort ein, die Sie zuvor festgelegt haben. Anschließend können Sie die Befehle get und put zum Übertragen von Daten verwenden.
Möchten Sie etwas intuitiveres oder von einem anderen Betriebssystem aus auf den FTP-Server zugreifen? Sie benötigen einen FTP-Client und der wohl beste verfügbare Client ist FileZilla. Diese Open-Source-Lösung ist für Windows (sowie einen Server) und macOS verfügbar und es gibt 32-Bit- und 64-Bit-Versionen für Linux. Leider gibt es keinen FileZilla-FTP-Server für Ubuntu oder andere Linux-Distributionen.
Herunterladen:FileZilla (Frei)
Um mit dem FileZilla-Client eine Verbindung zu Ihrem Ubuntu-FTP-Server herzustellen, installieren und starten Sie die App. Dann:
- Klicken Datei > Site-Manager
- Hier klicken Neue Seite
- Wählen Sie im rechten Bereich aus FTP
- Wenn Sie FTPS verwenden, wählen Sie TLS für Verschlüsselung.
- Geben Sie als Nächstes den Hostnamen oder die IP-Adresse ein Gastgeber und füge hinzu Hafen.
- Für Anmeldetyp Geben Sie Ihre Kontodaten ein Benutzer Und Passwort.
- Klicken Verbinden.
Anschließend können Sie Daten von Ihrem Ubuntu-FTP-Server hoch- und herunterladen (Put-and-Get). Ziehen Sie einfach die Dateien, die Sie verschieben möchten, per Drag & Drop.
Verwenden Sie einen anderen FTP-Client? Die Schritte sollten im Großen und Ganzen gleich sein, sehen Sie sich jedoch die Dokumentation der App zur Klarstellung an.
Sie haben einen FTP-Server auf Ubuntu erstellt
Unabhängig davon, ob Sie eine Desktop- oder Serverversion des Ubuntu-Betriebssystems verwendet haben, wird jetzt ein FTP-Server ausgeführt. Dies kann für zahlreiche Zwecke verwendet werden, vom Hochladen von Webseiten bis hin zum einfachen Zugriff auf wichtige Daten. Mithilfe von FTP können Sie die Daten abrufen, wann immer Sie sie benötigen, ohne physischen Zugriff auf den Servercomputer.