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

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

Simple File Transfer Protocol (SFTP) ist ein Protokoll, das verwendet wird, um Dateien zwischen zwei Geräten über das Internet zu übertragen. Es läuft über File Transfer Protocol (FTP) und Secure Shell (SSH).

Während das Protokoll Dateien überträgt, schützt es auch vor Passwort-Sniffing, Man-in-the-Middle-Angriffen und der Offenlegung sensibler Daten. Es bewahrt auch die Integrität der Daten mit Hilfe von Verschlüsselungs- und kryptografischen Hash-Funktionen. Es authentifiziert auch den Client und den Server, bevor es Zugriff gewährt. Dies ermöglicht eine sichere Übertragung von Dateien.

Hier bei LinuxAPT werden wir untersuchen, wie Sie mit diesem superpraktischen Dateiübertragungsprotokoll problemlos Dateien zwischen lokalen und entfernten Computern austauschen können.

Hier verwenden wir Linux Mint Cinamon 20.02 als unsere lokale Maschine und Ubuntu 20.04 LTS als Remote-Maschine.

Im ersten Teil erfahren Sie, wie Sie eine Datei von einem Remote-Computer auf einen lokalen Computer übertragen. Im anderen Teil sehen Sie, wie Sie eine Datei von Ihrem lokalen Rechner auf einen entfernten Rechner übertragen.

Um zu sehen, wie Sie einen ProFTPD-Server unter Linux Mint 20 einrichten können, besuchen Sie:https://linuxapt.com/blog/1032-install-proftpd-on-linux-mint-20


a. Schritte zum Übertragen einer Datei von einem Remote-Rechner auf einen lokalen Rechner

1. SSH zu Remote-Rechner

Stellen Sie zunächst eine SSH-Verbindung zu Ihrem Remote-Computer her. Melden Sie sich dazu zunächst mit dem folgenden Befehl als Superuser an:

$ sudo -i

Nachdem Sie nun Superuser geworden sind, senden Sie eine SSH-Verbindung zum Remote-Computer (192.168.10.23), mit dem Sie kommunizieren möchten, um die Datei abzurufen.

$ ssh [email protected]


2. Suchen Sie die zu übertragende Datei

Suchen Sie nun die Datei, die Sie kopieren möchten. In diesem Tutorial erstellen wir eine neue Datei, um sie auf meinen lokalen Computer zu übertragen.

Dazu gehe ich in das /etc-Verzeichnis, indem ich den folgenden Befehl ausführe:

$ cd /etc

Mit Hilfe des Touch-Befehls erstelle ich eine neue Datei mit dem Namen „transfer.txt“:

$ touch transfer.txt


3. Stellen Sie eine SFTP-Verbindung mit dem Remote-Computer her

Jetzt verbinden wir uns mit sftp:

mit dem Remote-Rechner
$ sftp [email protected]

Wenn Sie sehen, dass sftp so geschrieben ist:

sftp> pwd
Remote working directory: /home

Dies bedeutet, dass Sie sich im sftp-Modus befinden. Jetzt können die lokalen und entfernten Rechner Dateien mit diesem Protokoll austauschen.


4. Überprüfen Sie, mit welchen Verzeichnissen sftp interagiert

Bevor wir mit der Übertragung von Dateien fortfahren, lassen Sie uns ein wenig navigieren, um zu verstehen, mit welchen Verzeichnissen sftp interagiert. Führen Sie den folgenden Befehl aus, um Ihr aktuelles Arbeitsverzeichnis zu erfahren:

$ pwd

Um das aktuelle Arbeitsverzeichnis des lokalen Rechners anzuzeigen, verwenden wir:

lpwd

Wir können auch das Verzeichnis ändern, mit dem wir interagieren möchten. Es ist im zweiten Teil dieser Anleitung enthalten.


5. Übertragen Sie die Datei

Navigieren Sie zum Verzeichnis /etc, in dem wir die Datei transfer.txt erstellt haben:

$ cd /etc

Um eine Datei von der entfernten Maschine an die lokale Maschine zu senden, verwenden wir den get-Befehl, gefolgt vom Dateinamen:

$ get transfer.txt
Fetching /etc/transfer.txt to transfer.txt

Gehen Sie nun mit dem folgenden Befehl in das Stammverzeichnis Ihres lokalen Systems:

$ cd ~

Verwenden Sie ls, um alle Dateien im Verzeichnis anzuzeigen:

$ ls

Sie werden nun sehen, dass sich die Datei transfer.txt jetzt auf unserem lokalen Rechner befindet.

Nachdem Sie die sftp-Sitzung geschlossen haben, können Sie die Datei aus Ihrem Stammverzeichnis in einen beliebigen anderen Ordner auf Ihrem Computer übertragen.


b. Datei von einem lokalen Rechner auf einen entfernten Rechner übertragen

Wir haben eine weitere Datei test.txt auf unserem lokalen Rechner im folgenden Verzeichnispfad:

$ /home/linuxAPT/Downloads/folder

Von hier aus übertragen wir es auf unseren Remote-Rechner.

1. Stellen Sie über SFTP eine Verbindung zum Remote-Computer her:

$ sftp [email protected]


2. Ändern Sie das lokale Verzeichnis, mit dem sftp interagiert

Das lokale aktuelle Arbeitsverzeichnis ist:

$ lpwd
Local working directory: /root

Wie bereits erwähnt, können wir das lokale Verzeichnis ändern, mit dem sftp interagieren soll. Verwenden Sie dazu den lcd-Befehl:

$ lcd /home/linuxAPT/Downloads/folder

Zuvor interagierte sftp mit dem Stammverzeichnis des lokalen Computers. Jetzt interagiert es mit dem Verzeichnis /home/linuxAPT/Downloads/folder. Sie können dies mit dem folgenden Befehl bestätigen:

$ lpwd
working directory: /home/linuxAPT/Downloads/folder


4. Übertragen Sie die Datei

Als nächstes verwenden wir den put-Befehl, um die Datei von der lokalen Maschine auf die entfernte Maschine zu übertragen:

$ put test.txt
uploading test.txt to /home

Führen Sie nun den Befehl ls aus, um zu sehen, ob die Datei erfolgreich in das /home-Verzeichnis des Remote-Computers übertragen wurde:

$ ls

Jetzt befindet sich die von uns übertragene Datei hier auf dem Remote-Computer.

Jetzt können Sie die Sitzung mit einem einfachen Tschüss-Befehl beenden:

$ bye



Ubuntu
  1. So übertragen Sie Dateien zwischen zwei Computern mit den Befehlen nc und pv

  2. So kopieren Sie Dateien sicher zwischen Linux-Hosts mit SCP und SFTP

  3. So übertragen Sie Dateien zwischen Servern in Linux mit SCP und FTP

  4. Wie übertrage ich Dateien zwischen Ubuntu-Rechnern?

  5. So übertragen Sie Dateien sicher mit dem SCP-Befehl unter Linux

So teilen und übertragen Sie Dateien zwischen Linux und Windows

Übertragen Sie Dateien und Ordner zwischen Computern mit Croc

Übertragen Sie Dateien zwischen beliebigen Geräten mit Piping Server

So übertragen Sie Dateien sicher zwischen Ubuntu-Systemen mit Croc

4 Möglichkeiten zum Übertragen von Dateien zwischen Remote- und lokalen Systemen über SSH

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