Wie richte ich SSH-Schlüssel für Rsync-Verbindungen unter Windows ein?
- Voraussetzungen
- SSH-Schlüssel generieren
- Öffentlichen Schlüssel auf den Zielserver kopieren
- Rsync mit SSH-Schlüssel nutzen
- Optional: SSH-Konfigurationsdatei anpassen
- Zusammenfassung
Um Rsync über eine SSH-Verbindung unter Windows sicher und bequem nutzen zu können, ist es empfehlenswert, SSH-Schlüssel zu verwenden. Dadurch entfällt die manuelle Eingabe des Passworts bei jeder Verbindung. Im Folgenden wird ausführlich erklärt, wie man SSH-Schlüssel generiert, konfiguriert und für Rsync-Verbindungen nutzt.
Voraussetzungen
Als Erstes solltest du sicherstellen, dass auf deinem Windows-System eine passende Bash-Umgebung mit SSH-Unterstützung installiert ist. Dazu eignet sich beispielsweise Windows Subsystem for Linux (WSL), Git Bash oder ein installiertes OpenSSH-Client-Tool. Für die meisten Anwender ist die Nutzung von WSL oder Git Bash am einfachsten, da sie direkt Linux-ähnliche Tools bieten, inklusive ssh und ssh-keygen.
SSH-Schlüssel generieren
Starte die gewählte Bash-Umgebung und öffne ein Terminal. Dort kannst du mit dem Befehl ssh-keygen ein Schlüsselpaar erzeugen. Tippe dazu einfach ssh-keygen ein und folge den Anweisungen. Du kannst den Standardspeicherort bestätigen (meist ~/.ssh/id_rsa), oder einen benutzerdefinierten Pfad wählen. Optional kannst du ein Passwort für die Schlüsseldatei vergeben, das zusätzliche Sicherheit bietet, aber auch bei jeder Verbindung abgefragt wird.
Nach Abschluss des Vorgangs findest du deinen privaten Schlüssel id_rsa und den öffentlichen Schlüssel id_rsa.pub im Verzeichnis ~/.ssh/.
Öffentlichen Schlüssel auf den Zielserver kopieren
Damit der SSH-Schlüssel zur Authentifizierung genutzt werden kann, musst du den öffentlichen Schlüssel auf den entfernten Server übertragen. Das erreichst du am einfachsten mit dem Befehl ssh-copy-id, sofern verfügbar. Beispiel:
ssh-copy-id benutzername@remote-serverDer Befehl kopiert den Inhalt von id_rsa.pub in die Datei ~/.ssh/authorized_keys des entfernten Nutzers. Falls ssh-copy-id nicht verfügbar ist, kannst du den Inhalt der Datei id_rsa.pub manuell per SSH, SFTP oder sogar über ein anderes Zugriffsverfahren in die Datei ~/.ssh/authorized_keys auf dem Server einfügen. Achte darauf, dass die Zugriffsrechte des Verzeichnisses .ssh (meist 700) und der Datei authorized_keys (meist 600) korrekt gesetzt sind, um Verbote oder Warnungen zu vermeiden.
Rsync mit SSH-Schlüssel nutzen
Nachdem die Schlüssel auf beiden Seiten korrekt eingerichtet sind, kannst du Rsync über SSH ohne Passwortabfrage nutzen. Ein Beispielaufruf könnte so aussehen:
rsync -avz -e ssh pfad/zur/quelldatei benutzername@remote-server:/ziel/pfad/Hier sorgt die Option -e ssh dafür, dass Rsync den SSH-Transport verwendet. Dank des eingerichteten Schlüssels klappt nun die Authentifizierung automatisch.
Optional: SSH-Konfigurationsdatei anpassen
Um wiederholte Angaben (Benutzer, Port, Schlüsseldatei) zu vermeiden, kannst du in ~/.ssh/config eine Konfigurationsdatei mit Host-Aliassen anlegen. Ein Beispiel:
Host myserver HostName remote-server User benutzername IdentityFile ~/.ssh/id_rsa Port 22Danach kannst du Rsync einfacher aufrufen, z. B. rsync -avz -e ssh pfad myserver:/ziel/pfad/.
Zusammenfassung
Zusammengefasst sind folgende Schritte notwendig: Installation oder Nutzung einer Bash-Umgebung mit SSH-Unterstützung unter Windows, Erstellung eines SSH-Schlüsselpaars mittels ssh-keygen, Übertragung des öffentlichen Schlüssels auf den Zielserver, und Nutzung von Rsync mit SSH als Transportmethode. Die Schlüssel-basierte Authentifizierung macht Rsync-Verbindungen sicherer und komfortabler, indem Passworteingaben entfallen.
Wenn du diese Anleitung befolgst, kannst du unter Windows problemlos Rsync per SSH mit SSH-Schlüsseln nutzen und Daten sicher zwischen verschiedenen Rechnern synchronisieren.
