Via SCP Dateien sicher zwischen Linux und Windows übertragen

Daten sicher via SCP übertragen

Im letzten Artikel habe ich dir gezeigt, wie du via FTP Daten auf ein Ubuntu System übertragen kannst. FTP ist heutzutage aber nicht mehr sicher genug für den Betrieb über das Internet. Daher zeige ich dir heute SCP. Als Basis benutzt SCP das SSH Protokoll. Deswegen benötigst du einen User, der ebenfalls via SSH auf den Server zugreifen kann. Genau wie bei SSH kannst du bei SCP Verbindungen auch mit Hilfe von SSH-Keys aufbauen.
Da Linux Server auch von einem Windows Client aus verwaltet werden können, zeige ich dir ebenfalls das kostenlose Programm WinSCP im Laufe dieses Artikels, mit dem du auch von Windows aus Daten via SCP an Linux Server übermitteln kannst.

Server vorbereiten

Da SCP bzw. SSH als Client fester Bestandteil jeder Linux Distribution ist, benötigst du auf Client Seite keine weitere Vorbereitung. Auf Server Seite kann es – je nach Distribution – aber sein, dass du den SSH Server Dienst noch installieren musst.
Wie vor jeder Installation, solltest du deinen Server auf den neuesten Stand bringen. Für Betriebssysteme, die auf Debian basieren (wie zum Beispiel Ubuntu oder Kubuntu), nutze folgenden Befehl:

apt -y update && apt -y upgrade && apt -y dist-upgrade

Für CentOS oder Red Hat oder ähnliche Distributionen kommt als Paketmanger YUM zum Einsatz. Daher lautet der Befehl wie folgt:

yum update

Eine weitere Besonderheit bietet Fedora. Um dein Fedora System auf den neuesten Stand zu bringen, nutze folgenden Befehl

dnf update && dnf upgrade

Die Installation startest du anschließend mit folgendem Befehl:

Debian / Ubuntu

apt -y install openssh-server

CentOS / RHEL

yum install openssh-server

Fedora

dnf install openssh-server

SSH Verbindung aufbauen

Um zu Testen ob die Einrichtung erfolgreich war, verbinde dich via SSH mit deinem Server. Öffne dazu von deinem Linux oder Apple Client aus ein Terminal und führe folgenden Befehl aus:

ssh <benutzername>@<IPoderDomaindesServers>

Beispiel:

ssh root@10.10.0.12

Wenn du einen SSH-Key verwendest, gebe jetzt das Passwort für deinen Schlüssel ein. Ansonsten muss das Passwort für den User auf dem entfernten Rechner angegebenen werden.

Ist alles eingerichtet, sollte sich jetzt die Konsole des entfernten Rechners sichtbar sein. Wenn nicht, überprüfe deine Firewall Einstellungen. SSH benötigt den Port 22/tcp. Außerdem kannst du die Config des SSH Servers überprüfen und sicherstellen, dass dein User die entsprechende Berechtigung besitzt.

Hast du die Verbindung einmal erfolgreich hergestellt, kannst du sie wieder beenden. Gebe dazu einfach den Befehl exit ein.

exit

Bist du bereit zu starten?

Oder hast du noch Fragen? Erstelle dir jetzt dein kostenloses Konto oder lass dich in einem persönlichen Gespräch beraten.

Eine Datei via SCP übertragen

Zum Testen erstellst du am Besten eine Testdatei.

touch /test.datei

Um die Datei test.datei jetzt auf den anderen Server zu übertragen nutzt du folgenden Befehl:

scp /pfad/zur/datei <benutzername>@<IPoderDomaindesServers>:/Pfad/zum/Zielordner/

Beispiel:

scp /test.datei root@10.10.0.12:/root/geheim/test.datei

Die Datei wird jetzt nach /root/geheim auf dem Server mit der IP 10.10.0.12 übertragen.

Möchtest du eine Datei von einem entfernten Rechner herunterladen, kannst du dafür ebenfalls SCP benutzen. Der Aufbau des Befehls muss dazu lediglich umgedreht werden.

scp <benutzername>@<IPoderDomaindesServers>:/Pfad/zur/Datei /Ziel/Pfad

Beispiel:

scp root@10.10.0.12:/root/geheim/test.datei /root/lokalegeheimnisse/test.datei

Achte darauf, dass die Verzeichnisse bereits existieren müssen.

Du kannst über SCP auch Dateien von einem Server zu einem anderen Server übertragen, und das von deinem Client aus.

Der Syntax sieht dann wie folgt aus.

scp <benutzername>@<IPoderDomaindesServers>:/Pfad/zur/Datei <benutzername>@<IPoderDomaindesServers>:/Pfad/zum/Ziel

Beispiel:

scp root@10.10.0.12:/test.datei root@10.10.0.13/root/geheim/test.datei

Nutzt du Windows 10 als Client (ab Version 16.07) kannst du dir das Linux Subsystem installieren und erhältst eine Ubuntu Bash inklusive APT. Damit kannst du den bereits gezeigten Syntax ebenfalls nutzen.

Bist du bereit zu starten?

Oder hast du noch Fragen? Erstelle dir jetzt dein kostenloses Konto oder lass dich in einem persönlichen Gespräch beraten.

Rechtsklicke hierzu “Start”, anschließend auf “Programme und Features” bzw. bei Version 1703 “Apps und Features” und anschließend auf “Programme und Features”, dann auf “Windows-Features aktivieren oder deaktivieren”. Im jetzt offenen Fenster suchst du “Windows-Subsystem für Linux (beta)”. Anschließend muss unter Start -> Einstellungen -> Update und Sicherheit -> Für Entwickler der Entwicklermodus aktiviert werden. Nach der Installation führe cmd aus und tippe den Befehl bash ein.

bash

Anschließend bestätige die Installation mit Y und tippe anschließend nach kurzer Wartezeit einen Benutzernamen und ein Passwort ein.

Nutzt du eine ältere Version Windows, kannst du dir einmal das Programm WinSCP angucken. Die aktuelle Release findest du hier.

Die Einrichtung des Tools ist ziemlich einfach. Wähle bei der Installation den Total-Commander Modus aus. So wird dir auf der linken Hälfte des Fensters deine Lokale Ordner Struktur angezeigt und auf der Rechten, die des Servers mit dem du dich verbunden hast. Dateien lassen sich via Drag ‘n Drop hin und her Schieben und per Rechtsklick unter anderem umbenennen, ausführen oder löschen.

Zusammenfassung

SCP ist ziemlich schnell zu erlernen und überträgt zuverlässig auch große Mengen an Daten sicher über das Internet. SCP ist leider sehr Linux-lastig – soll heißen – Windows als Client ist zwar kein Problem, aber sobald man Windows als Server nutzt, wird es sehr schwierig. Als Alternative kann man hier zum Beispiel WebDAV einsetzen. Wie das funktioniert, zeige ich dir in diesem Artikel. Wer also mit verschiedenen Betriebssystemen arbeitet, sollte sich beide Techniken einmal angucken.