
1. SSH-Key auf dem Client erstellen
ssh-keygen -t ed25519 -C "meine-rsync-backups"
Der Speicherort ist ~/.ssh/id_ed25519 (Standard). Die Passphrase lässt du für automatisierte Backups leer oder gibst sie für mehr Sicherheit ein. Bei Eingabe muss sie dann aber bei jeder Übertragung eingegeben werden.
2. Öffentlichen Schlüssel zum Server kopieren
ssh-copy-id -p PORT benutzer@server
Oder manuell:
cat ~/.ssh/id_ed25519.pub | ssh benutzer@server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
3. Testen & Login
ssh -p PORT benutzer@server
Die Verbindung sollte ohne Passwort funktionieren.
Alte & ungültige Schlüssel entfernen
Server: Schlüssel manuell entfernen
Ich öffne die Datei direkt auf dem Server mit einem Texteditor.
ssh -p PORT benutzer@server "vim ~/.ssh/authorized_keys"
Server: Berechtigungen korrigieren
Nach der Bearbeitung stelle ich sicher, dass die Datei die richtigen Berechtigungen hat.
ssh -p PORT benutzer@server "chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh"
Client
Client: Alten Schlüssel entfernen
Bevor ich den Schlüssel lokal lösche, prüfe ich, ob er noch im SSH-Agent geladen ist.
ssh-add -l | grep "alter-schluessel"
Falls der Schlüssel geladen ist, entferne ich ihn zuerst aus dem Agent.
ssh-add -d ~/.ssh/alter-schluessel
Danach lösche ich die Schlüsseldateien. Die Option -i fragt vor dem Löschen sicherheitshalber nach.
rm -i ~/.ssh/alter-schluessel ~/.ssh/alter-schluessel.pub