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

So verwenden Sie den SCP-Befehl für die Dateiübertragung

SCP (Secure Copy Protocol) ist ein Netzwerk-Dateiübertragungsprotokoll, das einfache und sichere Dateiübertragungen zwischen einem Remote-System und einem lokalen Host oder zwei Remote-Standorten ermöglicht. Es verwendet den Secure Shell (SSH)-Mechanismus, um Authentifizierungs- und Verschlüsselungsfunktionen für Ihre Daten und Anmeldeinformationen bereitzustellen.

Administratoren verwenden den SCP-Linux-Befehl, um den Datenübertragungsprozess zwischen Linux-Servern zu optimieren, da keine Anmeldung bei einem Server erforderlich ist. Darüber hinaus bietet es eine bessere Sicherheit als das File Transfer Protocol (FTP) und entspricht den Standards des PCI Security Council.

In diesem Artikel erfahren Sie, wie Sie SCP-Befehle auf einem Remote-Host wie einem VPS verwenden. Wir werden den grundlegenden SCP-Befehl aufschlüsseln und Beispiele liefern, damit Sie besser verstehen, wie Linux-Befehle funktionieren.

Verstehen der SCP-SSH-Befehlssyntax

Die grundlegende Syntax des SCP-Befehls zur Durchführung einer Dateiübertragung zwischen zwei entfernten Systemen sieht wie folgt aus:

scp [other options] [source username@IP]:/[directory and file name] [destination username@IP]:/[destination directory]

Hier ist eine Aufschlüsselung des Befehls:

  • [weitere Optionen] ‒ Modifikatoren, die Sie dem SCP-Befehl hinzufügen können. Die beliebtesten behandeln wir später.
  • [Quellnutzername@IP] ‒ Benutzername und IP des Rechners, der die Zieldatei hostet.
  • :/ ‒ teilt dem SCP-Befehl mit, dass der Benutzer das Quellverzeichnis eingeben wird.
  • [Verzeichnis- und Dateiname] ‒ Speicherort und Name der Datei.
  • [Zielnutzername@IP] ‒ Benutzername und IP des Zielsystems.
  • [Zielverzeichnis] ‒ das Zielverzeichnis, in dem die Datei gespeichert wird.

Das folgende Beispiel zeigt den SCP-Befehl in einem realen Szenario:

scp -p [email protected]:/media/scp.png [email protected]:/desktop/destination

Wenn Sie zu oder von einem lokalen Host kopieren, benötigen Sie weder die IP-Adresse noch den Ziel- oder Quellpfad wie /desktop/folder_name .

Kopieren von Dateien mit dem SCP-Befehl

Das Beste an SCP ist, dass Sie Dateien sicher zwischen zwei Remote-Hosts oder einem Remote-Computer und einem lokalen System übertragen können. Die folgenden Abschnitte behandeln, wie SCP-Befehle für jeden Übertragungstyp funktionieren.

Wichtig! Unabhängig von der Art der Übertragung, die Sie mit SCP durchführen, sollten Sie nicht über SSH mit dem Remote-Server verbunden sein.

Kopieren von einem lokalen Server auf einen Remote-Host

Wir kopieren eine lokale Datei scp.zip zu einem Remote-Server namens root . Die IP-Adresse des Servers kommt nach dem Benutzernamen.

scp /users/Hostinger/desktop/scp.zip [email protected]:/writing/article

Wenn Sie keine automatische SSH-Client-Bestätigung eingerichtet haben, werden Sie aufgefordert, das Benutzerkennwort des Remote-Computers einzugeben und eine Fortschrittsanzeige anzuzeigen. Es wird wie folgt aussehen:

[email protected]’s password:
novel3.zip 100% 0 0.0KB/s 00:00

Angenommen, der Remote-Server ist so eingestellt, dass er SSH-Verbindungen auf einem anderen Port als dem Standard-SSH-Port 22 abhört. In diesem Fall müssen Sie diesen Port mit -P angeben Option.

scp -P 2322 /users/Hostinger/desktop/scp.zip [email protected]:/writing/article

Wenn Sie während des Übertragungsvorgangs auch den Namen der Datei ändern möchten, sieht Ihr Befehl so aus (wenn Sie nicht den Standardport verwenden, fügen Sie –P hinzu gefolgt von der entsprechenden Portnummer):

scp /users/Hostinger/desktop/scp.zip [email protected]:/writing/article/howtoscp.zip

Verwenden Sie das –r Option, gefolgt von derselben Befehlszeile, um ein Verzeichnis mit mehreren Dateien oder Unterverzeichnissen zu kopieren.

scp -r /users/Hostinger/desktop [email protected]:/writing/article

Übertragen einer Remote-Datei auf einen lokalen Computer

Die Umkehrung des Quell- und Zielsystems des Befehls muss sich in der Syntax widerspiegeln. Dieses Mal kopieren wir die scp.zip Datei vom selben Remote-Host auf unseren lokalen Computer.

scp [email protected]:/writing/articles/SCP.zip Users/Hostinger/Desktop

Die Ausführung dieses Befehls führt zur gleichen SSH-Anmeldeausgabe, die ein Kennwort erfordert. Es wird nur dann nicht angezeigt, wenn sudo-Berechtigungen die Authentifizierung deaktiviert oder den SSH-Client gezwungen haben, einen privaten Schlüssel auf Ihrem Computer zu verwenden.

Sicheres Verschieben einer Datei zwischen Remote-Hosts

Um Dateien von einem Remote-Server auf einen anderen zu kopieren, müssen Sie die Passwörter für beide Konten eingeben, nachdem Sie den folgenden Befehl in Ihrem Terminal ausgeführt haben:

scp [email protected]:/writing/article/scp.zip [email protected]:/publishing

Der obige Befehl kopiert die Quelldatei /writing/article/scp.zip vom ersten Host zum zweiten. Verwenden Sie zum Kopieren von Ordnern das -r Option und geben Sie den Ordnerpfad anstelle der darin enthaltenen Datei an.

Unter normalen Umständen geht die Datei direkt vom ersten entfernten Server zum zweiten. Wenn Sie den Vorgang jedoch über Ihren Computer umleiten möchten, fügen Sie -3 hinzu Option, wie im folgenden Befehl gezeigt:

scp -3 [email protected]:/writing/article/scp.zip [email protected]:/publishing

Verwendung des SCP-Befehls mit Optionen

Die obigen Beispiele enthalten mehrere SCP-Optionen, die den Befehl ändern. Es gibt zahlreiche gebräuchliche Optionen in Einzelzeichenform (-o) und ihre beschreibende Entsprechung (–option).

Das -q Der Parameter z. B. fordert das System auf, den Vorgang im stillen Modus auszuführen. Es deaktiviert die Ausgabe des Fortschrittsmessers sowie Warn- und Diagnosemeldungen. Verwenden Sie das -v Parameter zum Aktivieren der ausführlichen Ausgabe für einfacheres Debugging:

scp -v /users/Hostinger/desktop/scp.zip [email protected]

Die -4 und -6 Die Optionen bestimmen die verwendete Protokollversion, die entweder IPv4 oder IPv6 ist. Sie können die IP-Adressanforderungen auch umfassender mit dem Schlüsselwort address-family konfigurieren.

scp -6 [email protected]:/users/Hostinger/desktop/scp.zip

Das -p Option behält Änderungen, Zugriffszeiten und Modi aus der Quelldatei bei.

scp -p /users/Hostinger/desktop/scp.zip [email protected]

Verwenden Sie die -Statistik Option, um die Details der kopierten Dateien zu überprüfen, wie z. B. das Erstellungsdatum und die Dateigröße.

Das -C aktiviert die Datenkomprimierung für große Dateien oder Verzeichnisse während des Übertragungsvorgangs. Beachten Sie, dass diese Option bei komprimierten Dateien wie .zip nicht funktioniert und .rar Archiv.

scp -C Folder [email protected]

Nicht zu verwechseln mit -C , das -c Mit der Option können Sie den Verschlüsselungsalgorithmus angeben, den der Client verwenden soll. Einige der Werte, die Sie eingeben können, sind „aes256-ctr ‘, ‘aes256-cbc ‘ und ‚3des-cbc ‘. Die Standardoption in der Shell-Konfiguration ist „AnyStdCipher ’.

scp -c 3des-cbc /users/Hostinger/desktop/scp.zip [email protected]

Wichtig! Seien Sie vorsichtig, wenn Sie SCP-Optionen verwenden, da zwischen Groß- und Kleinschreibung unterschieden wird.

Fazit

Das Secure-Copy-Protokoll vereinfacht die Übertragung von Dateien zwischen mehreren Remote-Systemen in einem Netzwerk. Damit können Sie Dateien sicher von einem Remote-Host auf einen anderen kopieren, ohne sich über eine verschlüsselte Verbindung anmelden zu müssen.

Darüber hinaus verschlüsselt diese Remote-Dateiübertragungsmethode Ihre Daten mit einer sicheren Shell, wodurch die Vertraulichkeit der übertragenen Informationen gewährleistet wird.

Wir hoffen, dieser Artikel hat Ihnen geholfen zu verstehen, wie der SCP-Befehl funktioniert und wie man ihn richtig auf Linux-Servern verwendet.

So verwenden Sie den SCP-Befehl für die Dateiübertragung – FAQ

Wie führe ich SCP unter Windows aus?

Sie können SCP unter Windows über PuTTY ausführen. Dieser Terminalemulator bietet PSCP (PuTTY Secure Copy Client) für die Dateiübertragung über eine SSH-Verbindung.
Nach dem Herunterladen und Installieren von PuTTY können Sie den SCP-Befehl über die Windows-Befehlszeilenschnittstelle verwenden.
Die SCP-Syntax funktioniert auf Windows-Computern ähnlich. Der einzige Unterschied besteht darin, dass Sie jede Befehlszeile mit pscp -scp beginnen sollten .
Hier ist die grundlegende Syntax des SCP-Befehls unter Windows:
pscp -scp [other options] [source username@IP]:/[directory and file name] [destination username@IP]:/[destination directory]

Kann ich das Passwort im SCP-Befehl übergeben?

Eine der besten Eigenschaften des SCP-Befehls ist seine Passwortverschlüsselung, die Dateien und Verzeichnisse während des Übertragungsprozesses schützt. Die Eingabe des Benutzerkennworts zum Starten jeder Dateiübertragung kann jedoch zeitaufwändig sein, insbesondere wenn Sie mehrere Dateien verschieben müssen.
Durch die Implementierung von SSHPASS in der SCP-Befehlszeile können Sie den Authentifizierungsprozess automatisieren und die Kennwortabfrage umgehen .
Dieses Dienstprogramm bietet eine tastaturinteraktive Kennwortauthentifizierung, mit der Sie Dateien wie folgt mit einem einzeiligen Befehl vom Quell- auf ein Zielsystem übertragen können:
sshpass -p [password] scp -r /users/Hostinger/desktop [email protected]:/writing/article
Sie können SSHPASS aktivieren, indem Sie SSH-Schlüsselpaare generieren. Wenn Sie einen Windows-Computer verwenden, lässt Sie PSCP das Passwort mit -pw übergeben Option:
sshpass -pw [password] [email protected]:/writing/article

Wie stoppe oder pausiere ich SCP?

Sie können den Vorgang mit dem „Terminal Stop“-Signal (SIGTSTP) anhalten, indem Sie Strg+Z drücken . Um den Vorgang fortzusetzen, senden Sie das SIGCONT-Signal, indem Sie fg eingeben .
Wenn SIGCONT nicht funktioniert, besteht die andere Möglichkeit darin, rsync zu verwenden Nützlichkeit. Es vergleicht Quelldateien oder -verzeichnisse mit teilweise hochgeladenen, um Duplikate zu vermeiden, und setzt Ihren Download indirekt fort.
Hier ist die grundlegende Syntax von rsync :
rsync [option] user@host:[file/directory origin] [destination]
Das folgende Beispiel zeigt, wie man rysync verwendet, um eine .zip rekursiv zu kopieren Datei und bewahren Sie ihre Eigentümerschaft auf:
rsync -a /users/Hostinger/desktop/scp.zip [email protected]


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

  2. SCP-Befehl in Linux:Verwendung mit Beispielen

  3. SCP-Linux-Befehl – ​​So übertragen Sie SSH-Dateien von Remote auf Lokal

  4. Verwenden Sie SCP, um eine Datei vom lokalen Verzeichnis X in das Remote-Verzeichnis Y zu übertragen?

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

So verwenden Sie den Truncate-Befehl unter Linux

So verwenden Sie einen Dateibefehl unter Linux

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

So verwenden Sie den SCP-Befehl unter Linux

So verwenden Sie den Befehl lsof unter Linux

So verwenden Sie den Linux-Befehl shred