Intelligente Lösungen
in neuer Dimension

Ubuntu-20.04: Hardware-Token SoloKey

Zur bessern Absicherung meiner Zugänge möchte ich ein Hardware-Token einsetzen. Meine Wahl fällt erstmal auf SoloKey. Hier ein paar Details zur Inbetriebnahme unter Ubuntu-20.04.

Diese Anleitung wurde erstellt mit Ubuntu-20.04 und einem SoloKey 4.0.0

Grundsichtung

Kommandozeilenfenster öffnen:

1
2
[email protected]:~$ sudo tail -f /var/log/syslog
...

Hardware-Token in USB-Port stecken und Kommandozeilenfenster beoachten:

1
2
3
4
5
6
7
8
9
10
11
12
Jan 21 10:30:29 ulicsl kernel: [ 8285.075595] usb 5-2.2: new full-speed USB device number 6 using xhci_hcd
Jan 21 10:30:29 ulicsl kernel: [ 8285.198080] usb 5-2.2: New USB device found, idVendor=0483, idProduct=a2ca, bcdDevice= 1.00
Jan 21 10:30:29 ulicsl kernel: [ 8285.198083] usb 5-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 21 10:30:29 ulicsl kernel: [ 8285.198086] usb 5-2.2: Product: Solo 4.0.0
Jan 21 10:30:29 ulicsl kernel: [ 8285.198087] usb 5-2.2: Manufacturer: SoloKeys
Jan 21 10:30:29 ulicsl kernel: [ 8285.198088] usb 5-2.2: SerialNumber: XXXX
Jan 21 10:30:29 ulicsl kernel: [ 8285.306344] hid-generic 0003:0483:A2CA.0009: hiddev0,hidraw3: USB HID v1.11 Device [SoloKeys Solo 4.0.0] on usb-0000:0c:00.4-2.2/input0
Jan 21 10:30:29 ulicsl mtp-probe: checking bus 5, device 6: "/sys/devices/pci0000:00/0000:00:08.1/0000:0c:00.4/usb5/5-2/5-2.2"
Jan 21 10:30:29 ulicsl mtp-probe: bus: 5, device: 6 was not an MTP device
Jan 21 10:30:29 ulicsl mtp-probe: checking bus 5, device 6: "/sys/devices/pci0000:00/0000:00:08.1/0000:0c:00.4/usb5/5-2/5-2.2"
Jan 21 10:30:29 ulicsl mtp-probe: bus: 5, device: 6 was not an MTP device
Jan 21 10:30:34 ulicsl colord-sane: io/hpmud/musb.c 2101: Invalid usb_open: Permission denied

Das sieht gut aus! Wichtig ist vermutlich insbesondere diese Zeile:

1
Jan 21 10:30:29 ulicsl kernel: [ 8285.306344] hid-generic 0003:0483:A2CA.0009: hiddev0,hidraw3: USB HID v1.11 Device [SoloKeys Solo 4.0.0] on usb-0000:0c:00.4-2.2/input0

Test mit WebAuthn.io

Chrome

Hinweis: Bei Ubuntu-20.04 kannst Du Chromium hierfür NICHT verwenden! Es muß “Chrome” sein!

  1. Browser: webauthn.io Ich habe es getestet mit Chrome 88.0.4324.96 (Offizieller Build) (64-Bit)
  2. Formular ausfüllen:
    • example_username: Heinz Becker
    • Attestion Type: None
    • Authenticator Type: Unspecified
    • Register
  3. Das HardwareToken blinkt nun rot und es wird diese Meldung angezeigt: “Sicherheitsschlüssel mit webauthn.io verwenden – Stecken Sie Ihren Sicherheitsschlüssel ein und tippen Sie darauf”
  4. Knopf auf dem Hardware-Token betätigen –> leuchtet danach grün, es wird angezeigt: “Success! Now try logging in”
  5. Login
  6. Wenn ein PIN vergeben wurde: Geben Sie die PIN … ein
  7. Das HardwareToken blinkt nun rot und es wird diese Meldung angezeigt: “Sicherheitsschlüssel mit webauthn.io verwenden – Stecken Sie Ihren Sicherheitsschlüssel ein und tippen Sie darauf”
  8. “You’re logged in!”

Beobachtung Uli: Nach Aktualisierung der Firmware auf 4.1.1 und Chrome auf 88.0.4324.150 werde ich beim Anmelden nicht mehr nach der PIN gefragt! Daraufhin habe ich die Firmware nochmals aktualisiert auf die bereits vorhandene Version 4.1.1, den Schlüssel aus- und wieder eingesteckt und den Test wiederholt. Diesmal werde ich nach der PIN gefragt. Merkwürdig!

Firefox

Voraussetzung: Der Ablauf muß mit Chrome bereits durchgespielt sein!

  1. Browser: webauthn.io Ich habe es getestet mit Firefox 84.0.2
  2. Formular ausfüllen:
    • example_username: Heinz Becker
  3. Login
  4. PIN wird generell nicht angefordert
  5. Das HardwareToken blinkt nun rot und es wird diese Meldung angezeigt: “Sicherheitsschlüssel mit webauthn.io verwenden – Stecken Sie Ihren Sicherheitsschlüssel ein und tippen Sie darauf”
  6. “You’re logged in!”

Links und Referenzen

Historie und Anmerkung

  • 2021-02-13: Hinweis auf Chromium, Firefox nach Chrome ohne Registrierung; keine PIN-Abfrage bei Chrome mehr
  • 2021-01-26: tail mit sudo ausführen
  • 2021-01-22: Keine PIN-Abfrage im Firefox
  • 2021-01-21: Erste Version