Putty: Public Key Authentication konfigurieren
Putty ist ein freier ssh/telnet/rlogin-Client für Win32 Plattformen. Auf dieser Seite wird erklärt, wie man Putty für eine "Private Key Authentication" auf Rechner im Fachbereichsnetz konfiguriert.
1. Erzeugen der Keys
Zum Erzeugen des Schlüsselpaars wird auf der putty-Downloadseite das Programm 'puttygen.exe' angeboten. Das Programm bietet außerdem die Möglichkeit, einen bestehenden OpenSSH Private-Key in das für putty benötigte Format umzuwandeln.
Für das Erzeugen von neuen Keys, stellt man zuerst den Key-Typ auf EdDSA und wählt ed25519 im Auswahlfeld darunter aus ('ed448' wird derzeit nicht unterstützt). Nach einem Klick auf den Button Generate, muss man die Maus über die freie Fläche des Fensters bewegen, um Zufallswerte für die eigentliche Berechnung der Keys zu erzeugen.
Nachdem das Schlüsselpaar erzeugt wurde, sollte man noch eine Passphrase für den Private-Key erstellen ( vor dem Abspeichern des Private-Key eingeben) und einen Kommentar setzen, um z.B. den Zweck des Schlüsselpaars anzugeben. Der für Putty benötigten Private-Key kann man nun über den Button Save private key in einer *.pkk abspeichern. Das große Textfeld Public key for pasting into OpenSSH authorized_keys file enthält den Public-Key.
Screenshots
Festlegen der Schlüsselart und -länge:
Erzeugen von Zufallswerten:
Speichern der Keys:
2. Installieren des Public-Keys
2.1 Möglichkeit 1:
Der im vorherigen Schritt erzeugten Public-Key muss nun im Home-Verzeichnis des Fachbereichs-Accounts installiert werden. Zu diesem Zweck muss zunächst (falls nicht schon vorhanden) die Datei /home/$USER/.ssh/authorized_keys angelegt werden, die eine beliebige Anzahl an Public-Keys enthalten kann. Aus Sicherheitsgründen sollte diese Datei nur für den Besitzer schreib- und lesbar sein (chmod 600).
Anlegen der Datei:
mkdir ~/.ssh touch ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
Der Inhalt des Feldes Public key for pasting into OpenSSH authorized_keys file kann nun mit einem beliebigen Texteditor in diese Datei eingefügt werden. Dabei ist zu beachten, dass der gesamte Inhalt in einer einzigen Zeile steht.
Screenshots
Kopieren des Public-Keys:
2.2 Möglichkeit 2:
Web-Anwendung: https://usertools.informatik.uni-bremen.de/pubkeys
Hier mit dem UNIX-Benutzernamen und Passwort einloggen, den Public-Key-String in das leere Feld kopieren und mit dem Button "Hinzufügen" den Key abschicken.
Achtung: Auf diese Art installierte Public-Keys werden nicht direkt in das Heimverzeichnis installiert. Stattdessen werden die Keys in einer Datenbank hinterlegt und auf bestimmten Rechnern beim Anmelden direkt von dort abgefragt. Siehe auch den Text auf der Web-Anwendung.
3. Einbinden das Private-Keys in Putty
Im Category-Feld des Putty-Fensters kann unter dem Punkt Connection -> SSH -> Auth der in Schritt 1. erzeugte Private-Key eingebunden werden. Dazu muss einfach der Pfad zu der gespeicherten *.pkk-Datei im Feld Private key for authentication eingegeben werden. Zusätzlich muss noch der Benutzername eingestellt werden, mit dem das Login erfolgen soll. Dieser kann im Feld Auto-login username unter dem Punkt Connection -> Data im Category-Feld gesetzt werden.
Zum Schluss sollten diese Einstellungen noch als Profil gesichert werden, damit diese Schritte nicht bei jedem Login wiederholt werden müssen. Dazu kann man unter dem Punkt Session im Feld Saved sessions einen Namen für das Profil eingeben und dieses über den Button Save sichern. Hilfreich ist auch, vorher im Feld Host Name (or IP address) die Adresse des bevorzugten SSH-Servers einzustellen.
Screenshots
Einbinden des Private-Keys:
Setzen des Login-Namens:
Einstellen des Servers und Speichern eines Profils: