FTP Server · 7 min read · Dec 22, 2025
So installieren Sie einen sicheren FTP-Server mit vsftpd auf Debian 12

vSFTPd oder Very Secure FTP Daemon ist eine kostenlose und Open-Source-FTP-Server-Software. Es ist ein FTP-Daemon für Unix-ähnliche Betriebssysteme und ist unter der GNU General Public License lizenziert. vSFTPd ist einer der am weitesten verbreiteten FTP-Daemons, er ist schnell und ressourcenschonend, sicher durch PAM- und SSL-Integration und stabil. vSFTPd hat das Vertrauen großer Unternehmen wie RedHat, SUSE, Debian, Gnome, KDE usw. aufgrund seiner Raffinesse gewonnen.
vSFTPd kann mit IPv6 betrieben werden und unterstützt virtuelle IP-Konfigurationen und Benutzer. Es kann als eigenständiger Daemon oder über inetd ausgeführt werden. Für die Benutzerverwaltung bietet vSFTPd eine Funktion, die es Benutzern ermöglicht, ihre eigene Konfiguration festzulegen, wie z. B. IP-Beschränkungen pro Quelle, Rekonfigurierbarkeit und Bandbreitenbegrenzung. Darüber hinaus unterstützt vSFTPd ein Plug-in-Authentifizierungsmodul (PAM) für virtuelle Benutzer und bietet auch eine Sicherheitsintegration mit SSL/TLS.
In diesem Tutorial lernen Sie, wie Sie einen sicheren FTP-Server mit vsftpd auf einem Debian 12-Server einrichten und erstellen. In diesem Leitfaden erfahren Sie auch, wie Sie Ihre FTP-Server-Installation über UFW (Uncomplicated Firewall) absichern und wie Sie sich mit dem FTP-Client FileZilla mit dem FTP-Server verbinden.
Voraussetzungen
Bevor Sie fortfahren, stellen Sie sicher, dass Sie Folgendes haben:
- Einen Debian 12-Server.
- Einen Nicht-Root-Benutzer mit sudo-Administratorrechten.
- Das Paket openssl ist auf Ihrem Server installiert.
Installation von vsftpd
Das vsftpd ist eine Implementierung des FTP-Protokolls für UNIX- und Linux-Betriebssysteme. Das vsftpd-Paket ist in den meisten Linux-Distributionen, einschließlich Debian, verfügbar. Jetzt installieren Sie vsftpd über APT und überprüfen den vsftpd-Dienst, um sicherzustellen, dass der Dienst läuft.
Bevor Sie das vsftpd-Paket installieren, führen Sie den folgenden Befehl aus, um Ihr Debian-Repository zu aktualisieren.
sudo apt update
Jetzt installieren Sie das vsftpd-Paket mit dem folgenden apt install-Befehl.
sudo apt install vsftpdBestätigen Sie die Installation, indem Sie y eingeben und die ENTER-Taste drücken.

Nachdem vsftpd installiert ist, wird der vsftpd-Dienst automatisch ausgeführt und aktiviert. Überprüfen Sie den vsftpd-Dienst mit dem folgenden Befehl.
sudo systemctl is-enabled vsftpd
sudo systemctl status vsftpdDie folgende Ausgabe bestätigt, dass der vsftpd-Dienst läuft und aktiviert ist. Außerdem wird der vsftpd-Dienst beim Systemstart automatisch gestartet.

Konfigurieren von vsftpd
Im nächsten Schritt konfigurieren und erstellen Sie einen sicheren FTP-Server mit vsftpd. Sie werden SSL/TLS-Zertifikate generieren und die Standardkonfiguration von vsftpd /etc/vsftpd.conf ändern.
Führen Sie zuerst den folgenden openssl-Befehl aus, um neue TLS-Zertifikate zu generieren, die für Ihre vsftpd-Serverinstallation verwendet werden.
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pemGeben Sie Ihre Details ein, wenn Sie dazu aufgefordert werden. Nach Abschluss des Prozesses sind Ihre TLS-Zertifikate unter /etc/ssl/private/vsftpd.pem verfügbar.

Führen Sie jetzt den folgenden Befehl aus, um eine neue Datei /etc/vsftpd.userlist zum Speichern von FTP-Benutzern zu erstellen.
touch /etc/vsftpd.userlistFühren Sie danach den folgenden Befehl aus, um die vsftpd-Konfiguration zu sichern. Öffnen Sie dann die vsftpd-Konfiguration /etc/vsftpd.conf mit dem Nano-Editor.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
sudo nano /etc/vsftpd.confDeaktivieren Sie den anonymen Zugriff auf Ihren vsftpd-Server, indem Sie die Option anonymous_enable auf NO ändern.
anonymous_enable=NOErlauben Sie lokalen Benutzern innerhalb der Datei /etc/passwd und PAM-Benutzern, sich beim vsftpd-Server anzumelden, indem Sie die Option local_enable auf YES ändern.
local_enable=YESErlauben Sie FTP-Benutzern, Dateien auf den vsftpd-Server hochzuladen, indem Sie die Option write_enable auf YES ändern.
write_enable=YESAktivieren Sie nun chroot oder Jail für FTP-Benutzer, indem Sie die folgenden Optionen hinzufügen. Dies wird den FTP-Benutzer im Verzeichnis /home/$USER/chroot einsperren. Zum Beispiel wird der FTP-Benutzer bob im Verzeichnis /home/bob/chroot eingesperrt.
chroot_local_user=YES
user_sub_token=$USER
local_root=/home/$USER/chrootFügen Sie als Nächstes die folgende Konfiguration hinzu, um virtuelle Benutzer für vsftpd einzurichten. Jeder Benutzer in der Datei /etc/vsftpd.userlist wird berechtigt sein, sich beim vsftpd-Server anzumelden.
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NOFügen Sie die folgenden Zeilen hinzu, um Ihren vsftpd-Server mit SSL/TLS-Zertifikaten abzusichern. Dies zwingt die Benutzeranmeldung und die Datenübertragungsverbindung, sichere Verbindungen zu verwenden.
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGHFügen Sie nun die folgende Konfiguration hinzu, um die passiven Verbindungen über Ports zwischen 20000 und 25000 einzurichten.
pasv_min_port=20000
pasv_max_port=25000Speichern Sie die Datei und beenden Sie sie, wenn Sie fertig sind.
Führen Sie nun den folgenden systemctl-Befehl aus, um den vsftpd-Dienst neu zu starten und die Änderungen anzuwenden, die Sie vorgenommen haben.
sudo systemctl restart vsftpdDamit läuft Ihr vsftpd-Server jetzt mit neuen Konfigurationen.
Firewall einrichten
Im nächsten Schritt installieren Sie UFW (Uncomplicated Firewall) auf Ihrem Debian-Server und sichern Ihre FTP-Server-Installation damit. Sie installieren UFW über APT, öffnen den FTP-Serverport 20:21/tcp und den passiven Datenverbindungsport 20000:25000/tcp.
Installieren Sie UFW mit dem folgenden apt-Befehl. Geben Sie y ein, um mit der Installation fortzufahren.
sudo apt install ufw
Nachdem UFW installiert ist, führen Sie die folgenden ufw-Befehle aus, um den Port für den OpenSSH-Dienst, die vsftpd-Serverports 20:21 und die passive FTP-Verbindung zwischen den Ports 20000 und 25000 zu öffnen.
sudo ufw allow OpenSSH
sudo ufw allow 20:21/tcp
sudo ufw allow 20000:25000/tcpFühren Sie als Nächstes den folgenden ufw-Befehl aus, um UFW zu starten und zu aktivieren.
sudo ufw enableGeben Sie zur Bestätigung ein, und die UFW sollte auf Ihrem Debian-System laufen und aktiviert sein.

Überprüfen Sie den detaillierten Status von UFW mit dem folgenden Befehl.
sudo ufw statusDie Ausgabe aktiv bestätigt, dass UFW läuft und aktiviert ist. Außerdem ist der OpenSSH-Dienst hinzugefügt, und einige Ports für den vsftpd-Server 20:21/tcp und 20000:25000/tcp sind hinzugefügt.

Einrichten von FTP-Virtualbenutzern
An diesem Punkt haben Sie die Konfiguration Ihres vsftpd-Servers abgeschlossen. Jetzt werden Sie einen neuen FTP-Benutzer erstellen, der zum Anmelden am FTP-Server und zum Hochladen von Dateien verwendet wird.
Führen Sie den folgenden Befehl aus, um eine neue Datei /bin/ftponly zu erstellen. Machen Sie sie dann mit dem folgenden chmod-Befehl ausführbar. Die Datei /bin/ftponly wird als Standardshell für FTP-Benutzer verwendet.
echo -e '#!/bin/sh
echo "Shell für FTP-Benutzer nur."' | sudo tee -a /bin/ftponly
sudo chmod a+x /bin/ftponlyFügen Sie die Datei /bin/ftponly zu /etc/shells hinzu, um sicherzustellen, dass es sich um eine gültige Shell handelt.
sudo echo "/bin/ftponly" >> /etc/shellsErstellen Sie jetzt einen neuen FTP-Benutzer bob und richten Sie das Passwort ein, indem Sie den folgenden Befehl ausführen. Geben Sie Ihr Passwort ein und wiederholen Sie es.
sudo useradd -m -s /bin/ftponly bob
sudo passwd bobFühren Sie danach den folgenden Befehl aus, um ein neues chroot-Verzeichnis /home/bob/chroot für den Benutzer bob zu erstellen. Außerdem stellen Sie sicher, dass das chroot-Verzeichnis /home/bob/chroot das richtige Eigentum hat.
sudo -u bob mkdir -p /home/bob/chroot
sudo chown -R bob: /home/bob/chrootFühren Sie als Nächstes den folgenden Befehl aus, um weitere neue Verzeichnisse data und upload zu erstellen, die zum Speichern von FTP-Benutzerdaten verwendet werden. Stellen Sie sicher, dass Sie das Eigentum für diese Verzeichnisse richtig konfigurieren.
sudo -u bob mkdir -p /home/bob/chroot/{data,upload}
sudo chown -R bob: /home/bob/chroot/{data,upload}Führen Sie jetzt den folgenden Befehl aus, um die Berechtigung des Verzeichnisses /home/bob/chroot auf 550 und die beiden Verzeichnisse data und upload auf 750 zu ändern.
sudo chmod 550 /home/bob/chroot
sudo chmod 750 /home/bob/chroot/{data,upload}Nachdem Sie einen neuen Benutzer erstellt haben, führen Sie den folgenden Befehl aus, um den Benutzer bob zur Datei /etc/vsftpd.userlist hinzuzufügen.
echo "bob" >> /etc/vsftpd.userlistFühren Sie schließlich den folgenden Befehl aus, um den vsftpd-Dienst neu zu starten und die Änderungen anzuwenden. Nach Ausführung des Befehls ist Ihr FTP-Benutzer bob bereit.
sudo systemctl restart vsftpdDateien auf den FTP-Server hochladen
Um Ihre vsftpd-Serverinstallation zu überprüfen, werden Sie sich mit dem neuen Benutzer, den Sie über die FTP-Client-Software erstellt haben, mit dem FTP-Server verbinden. Dann werden Sie auch neue Dateien hochladen, um sicherzustellen, dass Ihre Installation erfolgreich ist.
Laden Sie den FTP-Client für Ihren lokalen Computer herunter und installieren Sie ihn. Sie können FileZilla verwenden, das auf Windows, Linux und MacOS installiert werden kann. Sobald FileZilla installiert ist, öffnen Sie es, um sich mit Ihrem sicheren FTP-Server zu verbinden.
Geben Sie die IP-Adresse Ihres FTP-Servers sowie den Benutzernamen und das Passwort Ihres FTP-Benutzers ein. Klicken Sie dann auf Schnellverbindung, um zu bestätigen.
Wählen Sie die Option Dieses Zertifikat in zukünftigen Sitzungen immer vertrauen und klicken Sie auf OK, um zu bestätigen.

Sobald Sie mit Ihrem FTP-Server verbunden sind, sollten Sie zwei Verzeichnisse data und upload auf Ihrem FTP-Server sehen. Sie können Dateien in beide Verzeichnisse data und upload hochladen, aber Sie können keine Dateien außerhalb dieser Verzeichnisse hochladen, die über chroot geschützt sind.

Sie können Ihre Dateien per Drag & Drop hochladen.

Fazit
Zusammenfassend haben Sie erfolgreich einen sicheren FTP-Server mit vsftpd auf einem Debian 12-Server erstellt. Sie haben auch Ihre FTP-Server-Installation über UFW (Uncomplicated Firewall) gesichert und gelernt, wie man FTP-Benutzer erstellt. Sie können den FTP-Server jetzt als Hauptdatenübertragungsmittel zwischen Ihrem lokalen Computer und Ihrem Server verwenden. Sie können auch eine andere FTP-Client-Software nach Ihren Vorlieben finden.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.