Zum Hauptinhalt springen

So richten Sie SFTP unter Linux ein: Eine detaillierte Anleitung für Anfänger

Secure File Transfer Protocol (SFTP) ist ein sicheres Dateiübertragungsprotokoll, das eine sichere Verbindung zwischen einem Client und einem Server ermöglicht. SFTP ist eine sicherere Alternative zum FTP-Protokoll, da alle über das Netzwerk übertragenen Daten verschlüsselt sind. Dieser Artikel beschreibt eine detaillierte Anleitung zum Konfigurieren von SFTP auf einem Linux-Server.

Bevor Sie mit der Konfiguration beginnen, stellen Sie sicher, dass Sie über SSH (Secure Shell) auf den Linux-Server zugreifen können. Wenn Sie keinen SSH-Zugriff haben, wenden Sie sich an Ihren Systemadministrator oder Hosting-Provider, um die erforderlichen Zugriffsrechte zu erhalten.

Der erste Schritt beim Einrichten von SFTP besteht darin, einen neuen Benutzer zu erstellen, der für die Verbindung verwendet wird. Führen Sie dazu den folgenden Befehl im Linux-Terminal aus:

sudo adduser username

Ersetzen Sie "username" durch den Benutzernamen, den Sie für die SFTP-Verbindung verwenden möchten. Während der Ausführung des Befehls werden Sie aufgefordert, das Kennwort für den neuen Benutzer einzugeben.

Installieren und Konfigurieren von SFTP

Führen Sie die folgenden Schritte aus, um SFTP auf Ihrem Linux-Server zu installieren und zu konfigurieren:

  1. Öffnen Sie ein Terminal und geben Sie den Befehl ein, um das OpenSSH-Paket zu installieren: sudo apt-get install openssh-server
  2. Überprüfen Sie nach der Installation des OpenSSH-Pakets den Status des SSH-Dienstes: sudo service ssh status
  3. Stellen Sie sicher, dass der SSH-Dienst ausgeführt und ausgeführt wird. Wenn der Dienststatus nicht "aktiv" ist, führen Sie den folgenden Befehl aus, um ihn zu starten: sudo service ssh start
  4. Öffnen Sie in der SSH-Konfigurationsdatei die Datei /etc/ssh/sshd_config mit einem Texteditor: sudo nano /etc/ssh/sshd_config
  5. Suchen Sie nach der Option "sftp-Subsystem" und stellen Sie sicher, dass die Zeile mit /usr/lib/openssh/sftp-server beginnt. Wenn nicht, bearbeiten Sie die Zeile: Subsystem sftp /usr/lib/openssh/sftp-server
  6. Speichern Sie die Änderungen und schließen Sie die SSH-Konfigurationsdatei.
  7. Starten Sie den SSH-Dienst neu, um die vorgenommenen Änderungen zu übernehmen: sudo service ssh restart
  8. Stellen Sie sicher, dass der SFTP-Dienst verfügbar ist, indem Sie Folgendes eingeben: sftp localhost
  9. Wenn Sie aufgefordert werden, einen Benutzernamen und ein Passwort einzugeben, ist SFTP erfolgreich auf Ihrem Linux-Server installiert und konfiguriert. Sie können SFTP-Clients verwenden, um eine Verbindung zum Server herzustellen und Dateien zu übertragen.

Erstellen eines Benutzers für SFTP

Der SFTP-Konfigurationsprozess unter Linux beinhaltet die Erstellung eines einzelnen Benutzers, der für den Zugriff über SFTP verwendet wird. Führen Sie die folgenden Schritte aus, um diesen Benutzer zu erstellen:

    Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein, um einen neuen Benutzer zu erstellen:

sudo adduser sftp_user
sudo cat /etc/passwd | grep sftp_user
sudo usermod sftp_user -s /usr/lib/openssh/sftp-server
sudo mkdir /home/sftp_user/sftp_files
sudo chown sftp_user:sftp_user /home/sftp_user/sftp_files
sudo chmod 700 /home/sftp_user/sftp_files

Nachdem Sie nun einen Benutzer für SFTP erstellt haben, können Sie mit der Konfiguration des SFTP-Servers fortfahren, um eine sichere Verbindung von einem Remote-System zu ermöglichen.

Festlegen von Zugriffsrechten für SFTP-Benutzer

Nachdem Sie den SFTP-Server unter Linux installiert und konfiguriert haben, müssen Sie die Zugriffsrechte für die Benutzer konfigurieren, um ihre Funktionen einzuschränken und die Sicherheit des Systems zu gewährleisten. In diesem Abschnitt werden die grundlegenden Schritte zum Konfigurieren von Zugriffsrechten für SFTP-Benutzer beschrieben.

1. Erstellen von Benutzern: zunächst müssen Sie einzelne Benutzer erstellen, denen der Zugriff über das SFTP-Protokoll gestattet wird. Dies kann mit dem Befehl adduser erfolgen. Führen Sie beispielsweise den folgenden Befehl aus, um einen Benutzer mit dem Namen "sftpuser" zu erstellen:

sudo adduser sftpuser

2. Zugangsbeschränkung: um den Zugriff eines Benutzers auf ein bestimmtes Verzeichnis zu beschränken, wird empfohlen, für jeden Benutzer ein separates Verzeichnis zu erstellen. Erstellen Sie beispielsweise das Verzeichnis "sftpuser" im Verzeichnis "/home" und erteilen Sie nur diesem Benutzer Zugriffsrechte:

sudo mkdir /home/sftpusersudo chown sftpuser:sftpuser /home/sftpusersudo chmod 700 /home/sftpuser

3. Konfigurieren des SFTP-Subsystems: nachdem Sie Benutzer und Verzeichnisse erstellt haben, müssen Sie das SFTP-Subsystem konfigurieren, um den Zugriff auf diese Verzeichnisse zu ermöglichen. Öffnen Sie dazu die SFTP-Serverkonfigurationsdatei, die sich normalerweise im Pfad "/etc/ssh/sshd_config" befindet, und fügen Sie am Ende der Datei die folgenden Zeilen hinzu:

Match User sftpuserForceCommand internal-sftpPasswordAuthentication yesChrootDirectory /home/sftpuserPermitTunnel noAllowAgentForwarding noAllowTcpForwarding noX11Forwarding no

4. Neustart des SSH-Dienstes: nachdem Sie Änderungen an der Konfigurationsdatei des SFTP-Servers vorgenommen haben, müssen Sie den SSH-Dienst neu starten, damit die Änderungen wirksam werden. Führen Sie den folgenden Befehl aus:

sudo service ssh restart

Nach all diesen Schritten können Benutzer über das SFTP-Protokoll eine Verbindung zum Server herstellen und nur auf ihr eigenes, durch Zugriffsrechte eingeschränktes Verzeichnis zugreifen.

Anmerkung: vergessen Sie nicht, "sftpuser" durch den Namen des aktuellen Benutzers zu ersetzen, den Sie erstellt haben.

Verbindung zum SFTP-Server herstellen

Um eine Verbindung zu einem SFTP-Server unter Linux herzustellen, müssen Sie den Hostnamen oder die IP-Adresse des Servers sowie die Anmeldeinformationen für die Authentifizierung kennen.

Verwenden Sie den folgenden Befehl, um eine Verbindung mit einem SFTP-Server über die Befehlszeile unter Linux herzustellen:

sftp [Optionen] [Benutzername@]host
sftp [email protected]

Wenn Sie einen nicht standardmäßigen Port für die Verbindung mit dem Server verwenden möchten, können Sie ihn mit der Option -P angeben:

sftp -P-port [email protected]

Nachdem Sie den Befehl eingegeben haben, werden Sie zur Eingabe eines Kennworts zur Authentifizierung aufgefordert. Nach erfolgreicher Anmeldung werden Sie mit dem SFTP-Server verbunden.