|
Verschlüsselter Datentransfer mit SCP Da scp zu Beginn eines Datentransfers eine Verbindung mit SSH aufbaut, gelten die meisten, im vorherigen Kapitel beschriebenen, Optionen von SSH auch für scp. Bei scp handelt es sich jedoch in erster Linie um ein Dateitransferprogramm. Dadurch hat dieses Programm noch weitere spezifische Ausführungsoptionen.
Startet man einen Dateitransfer mit scp, so versucht scp das gesamte Datentransfervolumen zu belegen. Oft will man jedoch nicht die ganze Bandbreite für einen Datentransfer ausschöpfen und möchte scp daher anweisen, nur einen bestimmten Anteil der Bandbreite zu nutzen. Diese Einstellung kann man mit Hilfe des Schalters -l gefolgt von einem Zahlenwert, der die Bandbreite in kbits/sec festlegt, vornehmen.
scp -l Anzahl_kbits_sec Name_des_SSH_Servers:Pfad_der_Quelldatei Pfad_der_Zieldatei Verzeichnisse inklusive Inhalt kopieren Mit scp können nicht nur einzelne Dateien, sondern auch ganze Verzeichnisse kopiert werden. Möchte man jedoch ein ganzes Verzeichnis kopieren, so muss scp mit dem Schalter -r gestartet werden. Anschließend kopiert scp die Inhalte des Verzeichnisses rekursiv über das Netzwerk.
scp -r Name_des_SSH_Servers:Pfad_des_Quellverzeichnisses Pfad_des_Zielverzeichnisses Abgebrochenen Dateitransfer fortsetzen In der Praxis passiert es immer wieder, dass ein Datentransfer aufgrund eines Verbindungsproblems abgebrochen wird, bevor die Daten komplett übertragen worden sind. Scp bietet leider keine Möglichkeit einen abgebrochenen Datentransfer fortzusetzen. Man ist also gezwungen, den Transfer neu zu starten. Da dieser Umstand nicht benutzerfreundlich ist, wird an dieser Stelle ein Workaround vorgestellt, mit dem man abgebrochene Datenübertragungen fortsetzen kann. Mit Hilfe des Programms rsync, das unter den meisten Unix-Derivaten zur Standardausstattung gehört, ist es möglich einen scp Datentransfer an der Stelle fort zu setzen, an der er abgebrochen wurde.
rsync --partial --progress Name_des_SSH_Servers:Pfad_der_Quelldatei Pfad_der_Zieldatei Dieses Verfahren hat jedoch einen großen Nachteil. Rsync bietet standardmäßig keinerlei Sicherheitsfeatures. Die Daten werden also unverschlüsselt über das Netzwerk gesendet. Mit einem einfachen Parameter bringt man rsync jedoch dazu, SSH als sogenannte Remoteshell zu benutzen, wodurch der Datentransfer auf gewohnte Weise mit Hilfe von SSH verschlüsselt wird.
rsync --partial --progress --rsh=ssh Name_des_SSH_Servers:Pfad_der_Quelldatei Pfad_der_Zieldatei
|
||||||
Stefan Schweiger, Am Spörkel 41, 44227 Dortmund Email: info@ssh-tutorial.de Verantwortlich für den Inhalt gemäß § 10 MDStV: Stefan Schweiger |