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.
Inhaltsverzeichnis
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.