Wie man SFTP (SSH File Transfer Protocol) verwendet

FTP ist die Standardmethode zum Übertragen von Dateien oder anderen Daten zwischen Computern, aber sie wird in der heutigen sicherheitsbewussten Umgebung immer mehr veraltet. Glücklicherweise kommt hier SFTP ins Spiel, was besonders nützlich für VPS-Hosting-Benutzer ist.

In diesem Leitfaden zeigen wir Ihnen, wie Sie SFTP für sichere Dateiübertragungen verwenden, sprechen über einige nützliche Befehle und erläutern genauer, wie es funktioniert.

Wie verbindet man sich mit SFTP?

SFTP ist ein Subsystem von SSH. Daher unterstützt es alle SSH-Authentifizierungsmethoden. Obwohl es einfacher ist, die Passwortauthentifizierung einzurichten und zu verwenden, ist es viel bequemer und sicherer, SSH-Schlüssel für eine passwortlose SFTP-Anmeldung zu erstellen.

Sobald Sie bereit sind, folgen Sie den unten aufgeführten Schritten, um eine Verbindung mit SFTP herzustellen:

Überprüfen Sie Ihren SSH-Zugang mit einem dieser Befehle:

ssh user@server_ipaddress

ssh user@remotehost_domainname

Danach verlassen Sie die Sitzung, wenn keine Fehler aufgetreten sind.

Initiieren Sie eine SFTP-Verbindung mit den folgenden Befehlen:

sftp user@server_ipaddress

sftp user@remotehost_domainname

Wenn Sie einen benutzerdefinierten SSH-Port verwenden, verwenden Sie einen dieser Befehle, um den SFTP-Port zu ändern:

sftp -oPort=customport user@server_ipaddress

sftp -oPort=customport user@remotehost_domainname

So sollte es aussehen:

sftp -oPort=49166 user@31.220.57.32

Sobald Sie verbunden sind, sehen Sie eine SFTP-Aufforderung.

Wie überträgt man Dateien mit SFTP?

Hier zeigen wir Ihnen, wie Sie mit SFTP Dateien vom Remote-System auf das lokale System übertragen und umgekehrt.

Profi-Tipp

Sie können Ihre Dateien auch mit SFTP-Clients übertragen, wie zum Beispiel WinSCP oder FileZilla.

Übertragung von Remote-Dateien von einem Server auf das lokale System

Um zu beginnen, überprüfen wir, welches lokale und welches Remote-Arbeitsverzeichnis wir verwenden. Um dies zu tun, verwenden wir diese SFTP-Befehle:

sftp> lpwd

Local directory: /LocalDirectory

sftp> pwd

Remote directory: /RemoteDirectory

Nun schauen wir, wie man eine Datei von einem Remote Server auf Ihren lokalen Rechner mit dem get-Befehl überträgt. Hier ist die grundlegende Syntax des get-Befehls:

get /RemoteDirectory/filename.txt

Um beispielsweise die Datei /etc/xinetd.conf vom Remote Server auf Ihren lokalen Rechner zu kopieren, würden Sie folgenden Befehl verwenden:

get /etc/xinetd.conf

Sobald der Download abgeschlossen ist, können Sie nun feststellen, dass die Datei xinetd.conf im Verzeichnis /user/home Ihres lokalen Rechners vorhanden ist.

Um mehrere Dateien mit SFTP herunterzuladen, verwenden Sie den mget-Befehl. Um alle Dateien in einem Verzeichnis namens /etc, die die Erweiterung .conf haben, in Ihr aktuelles Arbeitsverzeichnis herunterzuladen, verwenden Sie den folgenden Befehl:

mget /etc/*.conf

Nach dem Download finden Sie alle *.conf Dateien im Verzeichnis /user/home Ihres lokalen Rechners.

Dateien von dem lokalen Rechner auf einen Remote Server übertragen

Um eine Datei vom lokalen Rechner auf den Remote Server zu kopieren, verwenden wir erneut den get-Befehl. In diesem Fall wird die Syntax des get-Befehls wie folgt sein:

get file.txt /RemoteDirectory

Um die Datei example.txt von einem lokalen Rechner auf den Remote Rechner zu verschieben, geben Sie den folgenden Befehl ein:

put /home/user-name/example.txt /root

Nun werden wir die Datei im Stammverzeichnis des entfernten Servers finden. Sie können auch versuchen, mehrere Dateien mit dem mput-Befehl zu übertragen. Er funktioniert fast genauso wie mget:

mput /home/user-name/*.txt /root

Dieser Befehl würde alle Dateien mit der .txt Erweiterung im Ordner /home/user-name vom lokalen Rechner in das entfernte /root-Verzeichnis verschieben.

Profi-Tipp

Bitte beachten Sie, dass Sie zum Herunterladen und Hochladen der Dateien mit SFTP den Befehl put oder get eingeben und die TAB-Taste drücken müssen.

Befehle zur Navigation mit SFTP

Einige Befehle können verwendet werden, um effizienter durch die Remote und lokalen Server mit SFTP zu navigieren. Sie ähneln denen, die Sie in der Linux-Shell-Aufforderung verwenden würden.

Zum Beispiel ist der Befehl pwd immer nützlich, um Sie darüber zu informieren, in welchem Arbeitsverzeichnis Sie sich gerade befinden.

sftp> pwd
Remote directory: /RemoteDirectory

oder

sftp> lpwd

Local directory: /LocalDirectory

Sie können auch die Liste der Dateien und Verzeichnisse anzeigen, die Sie für das Remote Verzeichnis verwenden:

ls

Ebenso für das lokale Arbeitsverzeichnis:

lls

Zum Beispiel wird die Ausgabe so aussehen:

Pictures     Templates     Media     Text.txt     Documents

Um von einem Remote-Arbeitsverzeichnis zu einem anderen lokalen Arbeitsverzeichnis zu wechseln, geben Sie die folgenden Befehle ein:

cd name_of_directory

lcd name_of_directory

Verwenden Sie schließlich die Befehle ! und exit, um zur lokalen Shell zurückzukehren und SFTP zu beenden.

Grundlagen der Dateipflege mit SFTP

Mit SFTP können Sie auch Verzeichnisse und Dateien mit spezifischen Befehlen verwalten.

Um den Festplattenspeicher des entfernten Servers in Gigabyte zu überprüfen, verwenden Sie die df-Funktion wie folgt:

df -h

Hier ist ein Ausgabebeispiel:

Filesystem         Size  Used Avail Use% Mounted on

/dev/ploop29212p1   59G  2.5G   56G   5% /

none               1.5G     0  1.5G   0% /sys/fs/cgroup

none               1.5G     0  1.5G   0% /dev

tmpfs              1.5G     0  1.5G   0% /dev/shm

tmpfs              1.5G  568K  1.5G   1% /run

tmpfs              308M     0  308M   0% /run/user/0

Verwenden Sie den Befehl mkdir, um ein neues Verzeichnis auf dem Remote oder lokalen Server zu erstellen:

mkdir name_of_directory

lmkdir name_of_directory

Sie können ein Verzeichnis vom Remote-Server mit dem rmdir-Befehl löschen:

rmdir name_of_directory

Gleichzeitig ist auch das Umbenennen einer Remote Datei ziemlich unkompliziert:

rename filename new_filename

Hier ist ein Beispiel:

rename Old_FileExample New_FileExample

Wenn Sie eine Remote Datei löschen möchten, verwenden Sie den rm-Befehl:

rm filename

Der chown-Befehl verwendet wird, um den Besitzer einer Datei zu ersetzen:

chown userid filename

userid kann entweder ein Benutzername oder eine numerische Benutzer-ID sein. Zum Beispiel:

chown UserOne FileExample

chown 1234 FileExample

chgrp wird verwendet, um den Gruppenbesitzer einer Datei zu ändern:

chgrp groupid filename

Zum Beispiel:

chgrp NewGroup FileExample

Sie ändern eine Dateiberechtigung, indem Sie den interaktiven Befehl chmod verwenden:

chmod 764 FileExample

In diesem Beispiel steht der dreistellige Wert für die Benutzer, Gruppe und andere Benutzer der Datei.

Was die Berechtigungen zum Lesen (r), Schreiben (w) und Ausführen (x) betrifft, so sind ihre Werte jeweils 4, 2, 1. 0 kann auch verwendet werden, um keine Berechtigungen zu gewähren.

Um Berechtigungen zuzuweisen, berechnen Sie einfach die Gesamtwerte für jede Benutzerklasse. Hier ist eine Aufschlüsselung des Beispiels:

chmod ugo FileExample

# u represents the User who'll be able to read, write and execute the file.

# g is for Groups, here we've given the permission to write and execute the file.

# o or Others will only be able to read the file.

Liste nützlicher SFTP-Befehle

Wenn Sie einen schnellen Spickzettel benötigen, ist hier eine Liste aller verfügbaren SFTP-Befehle. Sie können diese Liste selbst finden, indem Sie einfach den Befehl help oder ? eingeben — beide führen zum gleichen Ergebnis.

bye                                Quit sftp

cd path                            Change remote directory to 'path'

chgrp [-h] grp path                Change group of file 'path' to 'grp'

chmod [-h] mode path               Change permissions of file 'path' to 'mode'

chown [-h] own path                Change owner of file 'path' to 'own'

df [-hi] [path]                    Display statistics for current directory or

                                   filesystem containing 'path'

exit                               Quit sftp

get [-afpR] remote [local]         Download file

help                               Display this help text

lcd path                           Change local directory to 'path'

lls [ls-options [path]]            Display local directory listing

lmkdir path                        Create local directory

ln [-s] oldpath newpath            Link remote file (-s for symlink)

lpwd                               Print local working directory

ls [-1afhlnrSt] [path]             Display remote directory listing

lumask umask                       Set local umask to 'umask'

mkdir path                         Create remote directory

progress                           Toggle display of progress meter

put [-afpR] local [remote]         Upload file

pwd                                Display remote working directory

quit                               Quit sftp

reget [-fpR] remote [local]        Resume download file

rename oldpath newpath             Rename remote file

reput [-fpR] local [remote]        Resume upload file

rm path                            Delete remote file

rmdir path                         Remove remote directory

symlink oldpath newpath            Symlink remote file

version                            Show SFTP version

!command                           Execute 'command' in local shell

!                                  Escape to local shell

Was ist SFTP?

SFTP, oder kurz SSH File Transfer Protocol bzw. Secure File Transfer Protocol ist eine viel sicherere Methode, um Dateien zu verschieben. Unter Verwendung des SSH-Protokolls unterstützt es Verschlüsselung und andere Sicherheitsmethoden, die dazu dienen, Dateiübertragungen besser zu schützen. Es ist das einzige sichere Dateiübertragungs-Protokoll, das vor Angriffen zu jedem Zeitpunkt des Datenübertragungsprozesses schützt, wodurch es zum bevorzugten Protokoll wird.

Während der Dateiübertragung werden alle Daten in Pakete aufgeteilt und über eine einzige sichere Verbindung gesendet.

Sensible Informationen werden verschlüsselt und beim Übertragen zwischen dem Client und dem Server unlesbar gemacht. Mit anderen Worten wird der ursprüngliche Inhalt (Klartext) durch eine unzusammenhängende Zeichenkette (Geheimtext) ersetzt.

Nur der Empfänger mit dem erforderlichen Entschlüsselungsschlüssel wird in der Lage sein, den ursprünglichen Inhalt zu sehen. Dies verhindert jeglichen unbefugten Zugriff während der Dateiübertragung.

Das reguläre Dateiübertragungsprotokoll (FTP) verfügt über zwei verschiedene Kanäle zum Datenaustausch — den Befehlskanal und den Datenkanal. Im Gegensatz dazu hat SFTP nur einen verschlüsselten Kanal, auf dem die Daten in verschlüsselten, formatierten Paketen ausgetauscht werden und ist daher die bevorzugte Alternative in Bezug auf Sicherheit.

Profi-Tipp

Lernen Sie mehr darüber, was VPS-Hosting ist.

Fazit

Das deckt im Grunde die Grundlagen ab, wie man SFTP für sichere Dateiübertragungen verwendet. Wir hoffen, dass dieses Tutorial nützlich war. Wenn Sie jedoch mehr Informationen über FTP benötigen, können Sie weitere Tutorials hier finden.

Wenn Sie weitere Fragen haben, zögern Sie nicht, unten einen Kommentar zu hinterlassen.

Author
Erstellt von

Vera P.

Mit jahrelanger Erfahrung im Kundenservice ist es Vera wichtig, ihr Wissen über Hosting und Website-Erstellung zu teilen, sodass es jedem gelingt, online Erfolg zu haben. Ihre Freizeit verbringt sie gerne mit Schwimmen, Radfahren oder Tauchen.