GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So verwenden Sie SFTP zum Übertragen von Dateien

Einführung

SFTP (Safe File Transfer Protocol) ist zusammen mit SSH als sicherer Weg zum Übertragen von Dateien zwischen entfernten Systemen enthalten. Es ermöglicht Benutzern auch, grundlegende Verwaltungsaufgaben auf Remote-Servern auszuführen, wie z. B. das Verwalten von Dateien und Verzeichnissen und das Festlegen von Dateiberechtigungen.

In diesem Tutorial zeigen wir Ihnen, wie Sie SFTP verwenden, um Dateien zwischen einem lokalen und einem Remote-System über die Terminalschnittstelle zu übertragen.

Voraussetzungen

  • Zugriff auf ein lokales System und einen Remote-Server, verbunden über ein öffentliches SSH-Schlüsselpaar.
  • Eine funktionierende Internetverbindung.
  • Zugriff auf das Terminalfenster.

So stellen Sie eine Verbindung über SFTP her

SFTP stellt mithilfe des SSH-Netzwerkprotokolls eine sichere Verbindung zwischen Systemen her. Dadurch können Sie sich mit jedem System verbinden, das über eine Kopie Ihres öffentlichen SSH-Schlüssels verfügt.

Die Verbindung zu einem anderen System über SFTP folgt der gleichen Befehlssyntax wie die Verbindung über SSH. Für den Befehl müssen Sie einen Benutzernamen und einen Remote-Hostnamen oder eine IP-Adresse für das System angeben, auf das Sie zugreifen möchten:

sftp [username]@[remote hostname or IP address]

Im folgenden Beispiel verbinden wir uns mit einem System mit der IP-Adresse 192.168.100.5 mit dem phoenixnap Benutzername:

sftp [email protected]

Um eine aktuelle Verbindung zu beenden, verwenden Sie:

exit

So übertragen Sie Dateien mit SFTP

Mit SFTP können Sie Dateien von einem Remote-Server auf ein lokales System und umgekehrt übertragen.

Remote-Dateien auf ein lokales System übertragen

Verwenden Sie get Befehl in der SFTP-Schnittstelle, um eine Datei von einem Remote-Server auf Ihr lokales System zu übertragen:

get [path to file]

Zum Beispiel, um eine Datei namens example_document.txt zu übertragen vom Home des entfernten Systems Verzeichnis auf das lokale System, verwenden Sie:

get example_document.txt

Standardmäßig überträgt SFTP Dateien zum Home des lokalen Systems Verzeichnis. Um Dateien in ein anderes Verzeichnis zu übertragen, hängen Sie den Pfad zum Verzeichnis an das Ende von get an Befehl:

get example_document.txt Downloads

Um den Dateinamen auf dem lokalen System zu ändern, hängen Sie den neuen Dateinamen an das Ende von get an Befehl.

get example_document.txt sample01.txt

Im obigen Beispiel wird get Befehl ruft die example_document.txt ab Datei und speichert sie als sample01.txt auf dem lokalen System.

SFTP ermöglicht auch die Übertragung eines gesamten Verzeichnisses vom Remote-System mit -r Flag, das eine rekursive Übertragung aller Dateien im Verzeichnis anzeigt:

get -r Example_Directory

Fügen Sie das -P hinzu -Flag zum get Befehl zum Übertragen der Datei oder des Verzeichnisses unter Beibehaltung von Berechtigungen und Zugriffszeiten:

get -Pr Example_Directory

Verwenden Sie das ls Befehl, um die Übertragung auf das lokale System zu überprüfen:

ls -l

Lokale Dateien auf einen Remote-Server übertragen

Um Dateien von einem lokalen System auf einen Remote-Server zu übertragen, verwenden Sie put Befehl. Der put Der Befehl verwendet dieselbe Syntax und dieselben Optionen wie get Befehl.

put [path to file]

Beispielsweise um eine example01.txt zu übertragen Datei auf den Remote-Server, verwenden Sie:

put example01.txt

Um die Datei in ein bestimmtes Verzeichnis auf dem Remote-Server zu übertragen, hängen Sie den Pfad zum Verzeichnis an das Ende von put an Befehl.

put example01.txt Example_Directory

Anhängen eines neuen Dateinamens an das Ende von put Befehl ändert den Namen der übertragenen Datei auf dem Remote-Server.

put example01.txt text_sample.txt

Für die Übertragung eines gesamten Verzeichnisses ist -r erforderlich Flagge.

put -r Test_Directory

Fügen Sie das -P hinzu -Flag zum put Befehl zum Beibehalten von Dateiberechtigungen:

put -Pr Test_Directory

Überprüfen Sie die Dateiübertragung mithilfe von ls Befehl auf dem entfernten System:

Dateipflege mit SFTP

SFTP unterstützt die grundlegende Dateiverwaltung. Verwenden Sie beispielsweise SFTP, um Datei- und Verzeichnisberechtigungen auf einem Remote-System zu ändern.

Der chown Der Befehl ändert den Dateibesitz ähnlich wie der Befehl chmod:

chown [user ID] [path to file]

Im Gegensatz zu chmod Befehl, chown akzeptiert nur Benutzer-IDs und keine Benutzernamen. Um die UIDs für den Remote-Server über die SFTP-Schnittstelle zu finden, müssen Sie /etc/passwd übertragen und darauf zugreifen Datei:

get /etc/passwd
!less passwd

Die UID für jeden Benutzer finden Sie in der dritten Spalte, getrennt durch Doppelpunkte:

Der chmod Befehl funktioniert genauso wie in der Standard-Shell:

chmod [permission] [path to file]

Eine andere Möglichkeit besteht darin, den Besitz der Gruppendatei mit chgrp zu ändern Befehl:

chgrp [group ID] [path to file]

Wie bei den UIDs befinden sich die Gruppen-IDs in der dritten Spalte der /etc/group Datei auf dem Remote-Server:

get /etc/group
!less group

Mit SFTP können Sie eine lokale umask festlegen, die die standardmäßige Dateiberechtigung für die auf das lokale System übertragenen Dateien ändert.

Zum Beispiel:

lumask 022

Der obige Befehl ändert die lokale Umask in 022 . Jede Datei, die übertragen wird, nachdem Sie diese umask gesetzt haben, hat jetzt die 644 Berechtigung standardmäßig. Sie können die ursprüngliche Berechtigung weiterhin beibehalten, indem Sie -p verwenden Flagge.

Eine andere Möglichkeit, lokale Dateiberechtigungen zu ändern, besteht darin, SFTP zu verwenden, um das Verhalten von Shell-Befehlen zu replizieren. Fügen Sie dazu ein Ausrufezeichen hinzu (! ) vor dem Befehlsnamen.

Verwenden Sie zum Beispiel chmod Befehl auf dem lokalen System:

!chmod [permission] [path to file]

Ubuntu
  1. So verwenden Sie den SFTP-Befehl für die sichere Dateiübertragung

  2. So übertragen Sie Dateien zwischen lokalen und Remote-Computern mit dem SFTP-Protokoll

  3. Verwenden des SFTP-Protokolls zum Übertragen von Dateien zwischen lokalen und Remote-Computern

  4. So übertragen Sie Dateien sicher mit sftp (Beispiele enthalten)

  5. Wie verwende ich rsync vom Windows-PC zum Remote-Linux-Server?

So verwenden Sie den Linux-FTP-Befehl zum Übertragen von Dateien

So verwenden Sie den SCP-Befehl zum sicheren Übertragen von Dateien

So verwenden Sie den SFTP-Befehl zum Übertragen von Dateien

So verwenden Sie den SCP-Befehl zum Übertragen von Dateien

So verwenden Sie Bluetooth unter Ubuntu für die Dateiübertragung

Gewusst wie:SFTP-Befehle – Dateien sicher auf einen Remote-Server übertragen