SSH-Schlüssel einrichten
Login mit Schlüsselpaar statt Passwort.
Ein SSH-Schlüssel besteht aus einem privaten Teil, der auf dem eigenen Rechner bleibt, und einem öffentlichen Teil, der auf den Server kommt.
Warum ein Schlüssel sinnvoll ist
- Sicherer als ein Passwort: Ein Schlüssel hat eine Länge, die niemand erraten oder durchprobieren kann. Ein Passwort dagegen versuchen automatisierte Programme ständig über Wörterbücher und Zufallskombinationen.
- Kein Passwort über das Netz: Beim Login beweist der eigene Rechner mit dem privaten Schlüssel, dass er berechtigt ist. Das Geheimnis selbst wird nicht übertragen.
- Bequemer: Nach der Einrichtung ist kein Passwort mehr nötig, und Skripte oder Backups können sich damit automatisch anmelden.
- Voraussetzung für mehr Schutz: Erst mit Schlüssel lässt sich das Passwort-Login später sicher abschalten (siehe SSH absichern).
1. Schlüssel auf dem eigenen Rechner erzeugen
ssh-keygen -t ed25519 -C "name@geraet"
Der Schlüssel landet unter ~/.ssh/id_ed25519 (privat) und ~/.ssh/id_ed25519.pub (öffentlich). Eine Passphrase ist empfehlenswert.
2. Öffentlichen Schlüssel auf den Server kopieren
ssh-copy-id -i ~/.ssh/id_ed25519.pub root@IP-ADRESSE
Unter Windows (PowerShell) klappt das ebenfalls. Falls ssh-copy-id fehlt, den Inhalt von id_ed25519.pub in /root/.ssh/authorized_keys einfügen.
3. Login testen
ssh -i ~/.ssh/id_ed25519 root@IP-ADRESSE
Alternative: RSA-Schlüssel
ed25519 ist die empfohlene Wahl. Manche Programme, ältere Geräte und Panels können ed25519 aber nicht. Dann einen RSA-Schlüssel mit mindestens 3072 Bit nehmen, besser 4096:
ssh-keygen -t rsa -b 4096 -C "name@geraet"
Der Ablauf ist derselbe wie oben: Der öffentliche Teil ~/.ssh/id_rsa.pub kommt mit ssh-copy-id -i ~/.ssh/id_rsa.pub root@IP-ADRESSE auf den Server, der Login wird mit ssh -i ~/.ssh/id_rsa root@IP-ADRESSE getestet. Den privaten Schlüssel id_rsa niemals weitergeben.
Weiter mit Benutzer mit sudo und SSH absichern.
Zum Mitverfolgen
Die folgende Vorführung zeigt die Schritte Zeile für Zeile. Sie läuft nicht auf einem echten Server, du kannst sie aber im eigenen Tempo durchklicken.