Wie richten Sie SSH / PuTTY für die Verwendung der Yubikey OpenPGP-Authentifizierung ein?

2334
burnersk

Ich möchte die OpenPGP-Schnittstelle meines Yubikey verwenden, um mich an meinem OpenSSH-Server auf meinem Windows 10-Computer zu authentifizieren, wie hier gezeigt .

Ich hatte die Schlüssel gemäß der Dokumentation erstellt .

gpg --card-status würde folgendes zurückgeben:

Reader ...........: Yubico Yubikey 4 OTP U2F CCID 0 Application ID ...: BEEFBEEFBEEFBEEFBEEFBEEF99990000 Version ..........: 2.1 Manufacturer .....: Yubico Serial number ....: 99999999 Name of cardholder: John Doe Language prefs ...: en Sex ..............: male URL of public key : https://example.com/pgp.asc Login data .......: johndoe Signature PIN ....: required Key attributes ...: rsa4096 rsa4096 rsa4096 Max. PIN lengths .: 127 127 127 PIN retry counter : 3 3 3 Signature counter : 39 Signature key ....: BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF 0001 created ....: 2017-11-20 00:00:01 Encryption key....: BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF 0002 created ....: 2017-11-20 00:00:02 Authentication key: BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF 0003 created ....: 2017-11-20 00:00:03 General key info..: pub rsa4096/BEEFBEEFBEEF0001 2017-11-20 John Doe <john@example.com> sec> rsa4096/BEEFBEEFBEEF0001 created: 2017-11-20 expires: never Cardnumber:BEEF BEEF9999 ssb> rsa4096/BEEFBEEFBEEF0002 created: 2017-11-20 expires: never Cardnumber:BEEF BEEF9999 ssb> rsa4096/BEEFBEEFBEEF0003 created: 2017-11-20 expires: never Cardnumber:BEEF BEEF9999 

Jetzt erhebt sich das Schwarze Loch. Wie in der genannten Vitrine Dokumentation soll PuTTY arbeiten direkt aus der Box . Jahr richtig dachte ich, aber ich habe es versucht. Natürlich funktioniert es nicht, da der OpenSSH-Server den öffentlichen Teil des Authentifizierungsschlüssels nicht kennt. Was für eine Überraschung .

Ich habe jedoch den erforderlichen OpenSSH-kompatiblen Fingerabdruck extrahiert, um ihn einzufügen .ssh/authorized_keys:

gpg --export-ssh-key BEEFBEEFBEEFBEEFBEEFBEEFBEEFBEEFBEEF0003 

Das Ergebnis war ein OpenSSH-kompatibler Fingerabdruck mit folgendem Kommentar:

ssh-rsa [...omitted...] openpgp:0xBEEF0003 

Ich habe den Yubikey wieder eingefügt, starte den gpg-agent neu und versuche mich erneut bei meinem OpenSSH-Server anzumelden. Es hat auch nicht geklappt.

Also googelte ich wieder und fand ein weiteres Tutorial, um Yubikey als SSH-Authentifizierung zu verwenden .

Ich setze mich so ein, wie es von McQueen Labs empfohlen wird, aber das hat auch für mich nicht funktioniert.

Es gab keine Eingabeaufforderung für die Karten-PIN oder Fehlermeldungen No supported authentication methods available (server sent: publickey).

Dies lässt mich denken, dass diese Art der SSH-Authentifizierung nicht mit der Methode publickey durchgeführt wird (was ich weniger wahrscheinlich finde), oder es fehlt eine Konfiguration.

Was bringt mich zu meiner Frage: Wie kann ich PuTTY für die Verwendung der Yubikey OpenPGP-Authentifizierung einrichten? Und was konfigurieren Sie auf der Serverseite.

Edit: Die Yubikey OpenPGP-Schnittstelle funktioniert gut mit Git-Commits usw. Aber ich kann es nicht für die SSH-Authentifizierung verwenden.

3
Mir wurde gerade klar, dass ich Keepass mit dem KeeAgent-Plugin hatte, das mit gpg-agent um putty-Anmeldeinformationen kämpfte. Ich wurde misstrauisch, als das KeePass-Fenster nach dem Öffnen von Putty auftauchte. Überprüfe also und vergewissere dich, dass im Hintergrund kein anderer Festzug läuft. Nach dem Deaktivieren des KeeAgent-Plugins funktioniert es gut für mich. baloan vor 6 Jahren 1
Nein Keepass läuft auf der Maschine. Aber danke für den Hinweis. Und mit Pageant habe ich beide Staaten getestet. burnersk vor 6 Jahren 0
Ich habe einen Unterschied im Verhalten festgestellt, nachdem ich die Verzeichnisse `C: \ Program Files (x86) \ GnuPG \ bin` und` C: \ Program Files \ PuTTY` zu PATH hinzugefügt habe. baloan vor 6 Jahren 0

0 Antworten auf die Frage