Zbieranie informacji o urządzeniu

ykman to podstawowe narzędzie do pracy z YubiKey.

ykman info
# Device type: YubiKey 5 NFC
# Serial number: 14308958
# Firmware version: 5.2.7
# Form factor: Keychain (USB-A)
# Enabled USB interfaces: OTP, FIDO, CCID
# NFC transport is enabled
# 
# Applications    USB             NFC
# Yubico OTP      Enabled         Enabled
# FIDO U2F        Enabled         Enabled
# FIDO2           Enabled         Enabled
# OATH            Enabled         Enabled
# PIV             Enabled         Enabled
# OpenPGP         Enabled         Enabled
# YubiHSM Auth    Not available   Not available

Nazwy appletów (case-insensitive): OTP, U2F, FIDO2, OATH, PIV, OPENPGP, HSMAUTH.

Przy pracy z dwoma kluczami (primary + backup) istotne jest rozróżnienie, na którym akurat się operuje. Pomyłka przy konfiguracji backupu może nadpisać klucze na primary. Przy więcej niż jednym podłączonym kluczu operacje należy kierować przez --device <serial>.

ykman list
# YubiKey 4 (4.3.5) [OTP+FIDO+CCID] Serial: 5660885
# YubiKey 5 NFC (5.2.7) [OTP+FIDO+CCID] Serial: 14308958
# ...

ykman info
# Multiple YubiKeys detected:
# - YubiKey 4 (4.3.5) [OTP+FIDO+CCID] Serial: 5660885
# - YubiKey 5 NFC (5.2.7) [OTP+FIDO+CCID] Serial: 14308958
# ERROR: Use --device SERIAL to specify which one to use.

ykman --device 14308958 info
# Device type: YubiKey 5 NFC
# Serial number: 14308958
# ...

Podstawowa konfiguracja

Poniżej komendy resetu poszczególnych apletów.

ykman fido reset
# WARNING! This will delete all FIDO credentials, including FIDO U2F credentials, and restore factory settings. Proceed? [y/N]: y
# ...

ykman openpgp reset
# WARNING! This will delete all stored OpenPGP keys and data and restore factory settings. Proceed? [y/N]: y
# ...

ykman oath reset
ykman otp delete 1  # slot 1 (short touch)
ykman otp delete 2  # slot 2 (long touch)

ykman nie posiada jednego polecenia resetującego wszystko naraz. Każdy applet ma własną procedurę: FIDO wymaga re-insertu i dotknięcia, OpenPGP nie. Pełny reset to wywołanie powyższych komend po kolei. OTP nie posiada reset i kasuje się per slot. FIDO U2F czyści się razem z fido reset. Konfiguracja interfejsów USB/NFC jest przechowywana osobno i nie jest przywracana przez reset apletów.

Do aktywowania poszczególnych aplikacji służy polecenie ykman config, osobno dla transportu USB i NFC.

# Stan obecny
ykman config usb --list
ykman config nfc --list

# Wyłącz applet na USB (np. OTP — pozbywa się przypadkowych "ccccc..." z dotknięcia)
ykman config usb --disable OTP
ykman config usb --disable OPENPGP
ykman config usb --disable PIV
ykman config usb --disable U2F

ykman config nfc --enable-all
ykman config nfc --disable-all

Zmiany wymagają zwykle re-insertu klucza, żeby system wykrył nowy zestaw interfejsów HID/CCID.

Klucz można zabezpieczyć przed zmianami konfiguracji przez ustawienie lock-code: 32-znakowego hex-a, bez którego ykman config odmówi modyfikacji USB/NFC.

# Wygeneruj i ustaw nowy lock code (wypisany raz — zachowaj w password managerze)
ykman config set-lock-code --generate

# Każda kolejna zmiana wymaga --lock-code
ykman config usb --disable OTP --lock-code <hex>

# Usunięcie blokady
ykman config set-lock-code --clear --lock-code <hex>

Konfiguracja PIN

# FIDO2 PIN (wymagany dla resident keys)
ykman fido access change-pin

# OpenPGP PIN-y (domyślne: 123456 / 12345678)
ykman openpgp access change-pin
ykman openpgp access change-admin-pin
Limity błędnych prób PIN-u
AppletLimit błędówSkutek przekroczenia
FIDO23 błędne próbyBlokada PIN-u — odblokowanie tylko przez fido reset (= utrata wszystkich kluczy FIDO2).
OpenPGP3 × user PINBlokada user PIN-u — odblokowanie admin PIN-em.
OpenPGP3 × admin PINTrwała blokada appletu — ratuje tylko openpgp reset.

Windows — narzędzia i sprawdzenie klucza

Wszystkie opisane polecenia (ykman info, reset apletów, ykman config usb/nfc, lock-code, zmiana PIN-ów) działają tak samo na Windowsie. ykman posiada natywny port dla tej platformy. Dostępne są dwa narzędzia: CLI (ykman.exe) i GUI (YubiKey Manager). ykman najprościej zainstalować przez winget; alternatywnie dostępny jest instalator MSI.

Wszystkie polecenia z sekcji "Podstawowa konfiguracja" działają identycznie w PowerShellu. Składnia, flagi i output są takie same jak w bashu.

winget install Yubico.YubikeyManagerCLI

# Po instalacji otwórz nowy PowerShell i sprawdź:
ykman --version
ykman info

YubiKey Manager (GUI)

Yubico udostępnia oficjalny GUI z tego samego linku (jeden instalator instaluje GUI + CLI). Wewnętrznie GUI wywołuje te same polecenia ykman, co CLI. Wybór między nimi to kwestia wygody.