Skip to main content

FTP-Server auf einem Debian Server einrichten

Einleitung

In diesem kleinen Artikel beschreibe ich kurz, wie wir auf einem Debian Server einen FTP-Server einrichten können. Dazu verwenden wir den ProFTPD-Dienst welchen wir einfach herunterladen können. 

Durchführung

Dienst Installation

Im ersten Schritt müssen wir natürlich den FTP-Dienst installieren. Dazu stellen wir im ersten Schritt eine SSH-Verbindung mit unserem Debian Server her und geben den folgenden Befehl ein:

sudo apt install proftpd-basic
Dienst Konfiguration

Im zweiten Schritt müssen wir den Dienst konfigurieren. Wir legen hier die Konfigurationsdatei im conf.d Verzeichnis an, damit bei Paketupdates unsere Konfiguration nicht überschrieben werden kann. 

nano /etc/proftpd/conf.d/config.conf

In diese Datei fügen wir den folgenden Inhalt ein:

# Ftp Benutzer benötigt keine Shell
<Global>
    RequireValidShell off
</Global>
# Deaktiviere IPv6
UseIPv6 off
# Standard Verzeichnis für ftpuser
DefaultRoot ~ ftpuser
# Erlaube FTP Login nur für eine Gruppe
<Limit LOGIN>
    DenyGroup !ftpuser
</Limit>

Im letzten Schritt müssen wir den FTP-Dienst einmal neu starten. 

sudo systemctl restart proftpd.service
FTP-Gruppe anlegen

Im nächsten Schritt muss die FTP-Gruppe ftpuser angelegt werden, damit wir die Benutzer welche eine FTP Verbindung herstellen sollen, die Berechtigung dazu erhalten. Dazu führen wir den folgenden Befehl aus:

sudo groupadd ftpuser
FTP-Benutzer anlegen

Jetzt legen wir einen Benutzer an, welcher dazu verwendet wird, eine FTP-Verbindung herzustellen. Dieser bekommt dann auch ein Home-Verzeichnis zugewiesen, in dem sich der Benutzer automatisch befindet, wenn der Benutzer eine Verbindung herstellt. 

Um den Benutzer anzulegen, führen wir den folgenden Befehl durch:

sudo adduser <benutzername> --shell /bin/false --home <pfad-zum-home-verzeichnis>

# Beispiel
sudo adduser transfer --shell /bin/false --home /home/transfer

Info: Wir werden bei Ausführung des Befehls nach einem Kennwort gefragt, hier wird empfohlen ein möglichst komplexes Kennwort zu verwenden. 

Jetzt fügen wir den Benutzer nur noch der entsprechenden Gruppe hinzu:

sudo usermod -aG <gruppe> <benutzername>

# Beispiel
sudo usermod -aG ftpuser transfer

Jetzt können wir eine Verbindung mit unserem FTP-Server herstellen.