Nitrokey 3
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 24.04 Noble Numbat
Ubuntu 22.04 Jammy Jellyfish
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Beim Nitrokey 3 🇩🇪 des Herstellers Nitrokey 🇩🇪 handelt es sich um einen Security-Token, welcher unter Linux die folgenden Funktionen 🇩🇪 bietet:
FIDO2 zur passwortfreien Anmeldung,
Speicherung von Schlüsseln auf dem Stick und
einen integrierten Passwortmanager.
Der Hersteller stellt für den Token die Programme pynitrokey und Nitrokey App 2 zur Verfügung.
Zusätzlich kann er mit Chromium/Chrome, GnuPG, KeePassXC, Nextcloud, SSH und Thunderbird verwendet werden. Dienste, welche 2FA unterstützen, findet man auf der Seite dongleauth.com 🇬🇧.
Erkennung¶
lsusb¶
Über lsusb kann überprüft werden ob der Stick erkannt wurde [1]:
lsusb
Hier erhält man unter anderem Informationen über den Hersteller und die Geräte-ID.
Bus 001 Device 007: ID 20a0:42b2 Clay Logic Nitrokey 3
lshw¶
lshw liefert ebenso Informationen zur Hardwarekomponente [1] [2]:
sudo lshw -short -C input
H/W-Pfad Gerät Klasse Beschreibung =============================================================== ... /0/100/8.1/0.3/0/4 input Nitrokey 3 ...
usb-devices¶
Genauere Informationen erhält man über den folgenden Befehl [1]:
usb-devices
T: Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 7 Spd=12 MxCh= 0 D: Ver= 2.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=20a0 ProdID=42b2 Rev=01.07 S: Manufacturer=Nitrokey S: Product=Nitrokey 3 C: #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=100mA I: If#= 0 Alt= 0 #EPs= 2 Cls=0b(scard) Sub=00 Prot=00 Driver=(none) E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms I: If#= 1 Alt= 0 #EPs= 2 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid E: Ad=02(O) Atr=03(Int.) MxPS= 64 Ivl=5ms E: Ad=82(I) Atr=03(Int.) MxPS= 64 Ivl=5ms
Einrichtung¶
udev-Regeln¶
Um auf den Nitrokey ohne Root-Rechte zugreifen zu können, benötigt man die entsprechenden udev-Regeln [1] [2], welche mit den folgenden Befehlen heruntergeladen und an die passende Stelle verschoben werden:
wget https://raw.githubusercontent.com/Nitrokey/nitrokey-udev-rules/main/41-nitrokey.rules sudo mv 41-nitrokey.rules /etc/udev/rules.d/
Im nächsten Schritt müssen die Berechtigungen angepaßt und für die Verwendung geladen werden [1] [2] [3]:
sudo chown root:root /etc/udev/rules.d/41-nitrokey.rules sudo chmod 644 /etc/udev/rules.d/41-nitrokey.rules sudo udevadm control --reload-rules && sudo udevadm trigger
41-nitrokey.rules¶
# # Copyright (c) 2015-2022 Nitrokey GmbH # # This file is part of libnitrokey. # # libnitrokey is free software: you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation, either version 3 of the License, or # any later version. # # libnitrokey is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU Lesser General Public License # along with libnitrokey. If not, see <http://www.gnu.org/licenses/>. # # SPDX-License-Identifier: LGPL-3.0 # # Here rules in new style should be provided. Matching devices should be tagged with 'uaccess'. # File prefix number should be lower than 73, to be correctly processed by the Udev. # Recommended udev version: >= 188. # ACTION!="add|change", GOTO="u2f_end" # Nitrokey U2F KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="f1d0", TAG+="uaccess" # Nitrokey FIDO U2F KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4287", TAG+="uaccess" # Nitrokey FIDO2 KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="42b1", TAG+="uaccess" # Nitrokey 3A Mini/3A NFC/3C NFC KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="42b2", TAG+="uaccess" # Nitrokey 3A NFC Bootloader/3C NFC Bootloader KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="42dd", TAG+="uaccess" # Nitrokey 3A Mini Bootloader ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="42e8", TAG+="uaccess" LABEL="u2f_end" SUBSYSTEM!="usb", GOTO="gnupg_rules_end" ACTION!="add", GOTO="gnupg_rules_end" # USB SmartCard Readers ## Crypto Stick 1.2 ATTR{idVendor}=="20a0", ATTR{idProduct}=="4107", ENV{ID_SMARTCARD_READER}="1", ENV{ID_SMARTCARD_READER_DRIVER}="gnupg", TAG+="uaccess" ## Nitrokey Pro ATTR{idVendor}=="20a0", ATTR{idProduct}=="4108", ENV{ID_SMARTCARD_READER}="1", ENV{ID_SMARTCARD_READER_DRIVER}="gnupg", TAG+="uaccess" ## Nitrokey Pro Bootloader ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="42b4", TAG+="uaccess" ## Nitrokey Storage ATTR{idVendor}=="20a0", ATTR{idProduct}=="4109", ENV{ID_SMARTCARD_READER}="1", ENV{ID_SMARTCARD_READER_DRIVER}="gnupg", TAG+="uaccess" ## Nitrokey Storage Bootloader ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff1", TAG+="uaccess" ## Nitrokey Start ATTR{idVendor}=="20a0", ATTR{idProduct}=="4211", ENV{ID_SMARTCARD_READER}="1", ENV{ID_SMARTCARD_READER_DRIVER}="gnupg", TAG+="uaccess" ## Nitrokey HSM ATTR{idVendor}=="20a0", ATTR{idProduct}=="4230", ENV{ID_SMARTCARD_READER}="1", ENV{ID_SMARTCARD_READER_DRIVER}="gnupg", TAG+="uaccess" LABEL="gnupg_rules_end" # Nitrokey Storage dev Entry KERNEL=="sd?1", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4109", SYMLINK+="nitrospace"
Hinweis:
Falls auf den Key nicht zugegriffen werden kann, hilft ggf. ein Neustart des Systems. Falls dies nicht funktionieren sollte: ein Fehlerbericht auf GitHub liefert weitere Hinweise zur Problemlösung.
Firmware¶
Die Firmware kann über das GUI oder die Befehlszeile auf den aktuellen Stand gebracht werden.
Infobox¶
Nitrokey 3A NFC | |
Hersteller: | Clay Logic |
USB ID: | 20a0:42b2 Clay Logic Nitrokey 3 |
Links¶
Herstellerseite 🇩🇪 🇬🇧 🇫🇷
Forum 🇩🇪 🇬🇧
Blogeintrag 🇩🇪
Shop 🇩🇪 🇬🇧