Nitrokey Pro / Start / Guide för lagringsintegration

Översikt

Den här guiden konfigurerar CBOM Secure Discover_PGP-sensorn för att upptäcka kryptografiska tillgångar på Nitrokey Pro-, Start- eller Storage-enheter. Dessa implementerar OpenPGP-kortstandarden; privata nycklar finns på enheten och kan aldrig exporteras, medan GnuPG lagrar offentliga nyckelstubbar i den lokala nyckelringen. Sensorn läser dessa stubbar skrivskyddat:

  • OpenPGP-nyckelstubbar cachade i GnuPG-nyckelringen (~/.gnupg eller en anpassad GNUPGHOME)
  • Nyckelmetadata: nyckel-ID, fingeravtryck, algoritm, nyckellängd, skapande-/utgångsdatum, användar-ID:n
  • Undernyckelposter för signering, kryptering och autentiseringsplatser
  • (Endast Nitrokey HSM / PKCS#11-läge) certifikat, publika nycklar och privata nyckelhandtag via opensc-pkcs11.so

Förutsättningar

  1. En kompatibel Nitrokey (Pro 2, Start eller Storage) ansluten via USB.
  2. GnuPG 2.2 eller senare på sensorvärden, med scdaemon-komponenten närvarande.
  3. PC/SC-daemonen (pcscd) körs.
  4. Endast för Nitrokey HSM-läge (PKCS#11): opensc och opensc-pkcs11 installerade.
  5. CBOM-agenten är installerad och nåbar; läsåtkomst till GnuPG:s hemkatalog.
  6. Inget PIN-lås på enheten.

Steg-för-steg-guide

Steg 1: Verifiera enhetsidentifiering

systemctl status pcscd # börja med: sudo systemctl enable --now pcscd gpg --card-status # bekräfta läsare / applikations-ID / Nitrokey-serienummer

Steg 2: Bekräfta nyckelringsposter

Kortbaserade nycklar visas med prefixet > på raden sec/ssb, vilket indikerar att den privata nyckeln finns på hårdvaran. Om inga stubbar finns skapar gpg –card-status dem automatiskt:

gpg --list-keys gpg --list-secret-keys # leta efter sec> / ssb> (nyckel på kort)

Steg 3: (Endast HSM-läge) Räkna upp PKCS#11-objekt

Gäller endast när enheten används som en Nitrokey HSM med PKCS#11-åtkomst; hoppa över för standard OpenPGP-kortläge.

ls -l /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so # RHEL: /usr/lib64/opensc-pkcs11.so pkcs11-tool --module /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so --list-objects

Steg 4: Konfigurera CBOM Secure Sensor

sensor: namn: Discover_PGP aktiverad: true pgp: gpg_home: "/home/cbom-agent/.gnupg" gpg_binary: "/usr/bin/gpg" list_secret_stubs: true list_public_keys: true include_subkeys: true include_expired: false enhet: leverantör: "Nitrokey" modell: "Pro 2" # Pro 2 | Start | Lagring | HSM 2 serienummer: "00000XXX" # från gpg --card-status pkcs11: aktiverad: false # true endast för Nitrokey HSM-läge modul_sökväg: "/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so" plats: 0 list_private_key_handles: true # endast handles; nyckelmaterial läste aldrig utdata: format: "json" cbom_server_url: "https://cbom.example.com/api/v1/ingest" api_key: "${CBOM_API_KEY}" schema: interval_minutes: 60

Spara på /etc/cbom/sensors/nitrokey-pgp.yaml och ladda om agenten. Injicera CBOM_API_KEY via env/secrets manager.

Steg 5: Validera

cbom-cli sensor run --name Discover_PGP --config /etc/cbom/sensors/nitrokey-pgp.yaml --dry-run gpg --fingerprint --with-colons # korsreferens för fält mot skanningen

Bekräfta att skanningen rapporterar nyckelfingeravtryck, algoritmer och utgångsdatum som matchar GnuPG-stubbar, taggade med Nitrokey-serien som källa. Bekräfta att inget privat nyckelmaterial visas (private_key_exported: falskt på alla poster).

Vanliga fel

gpg: val av kort misslyckades: Enheten saknas

Orsak: pcscd körs inte, eller så upptäcks inte enheten av USB.

Lösning: Bekräfta lsusb | grep -i nitrokey, starta pcscd, starta om agenten (gpgconf –kill gpg-agent) och skicka USB-enheten igenom om den är i en virtuell maskin.

pkcs11-verktyg: Inläsning av PKCS#11-modul misslyckades

Orsak: Sökvägen till opensc-pkcs11.so är felaktig eller så är OpenSC inte installerat.

Lösning: hitta /usr/lib -name opensc-pkcs11.so, uppdatera module_path och installera opensc om det saknas.

scdaemon är äldre än oss

Orsak: En versionsmatchning mellan gpg och scdaemon från en partiell uppgradering.

Lösning: Uppgradera gnupg2 och scdaemon tillsammans, avsluta agenten (gpgconf –kill gpg-agent) och kör gpg –card-status igen.

Säkerhetsrekommendationer

  • Kör sensorn som ett dedikerat konto med låg behörighet och skrivskyddad åtkomst till GnuPG-hemsidan.
  • Lagra aldrig enhetens PIN-koder i konfigurationen – PGP-sensorn läser endast offentliga stubbar och metadata.
  • Begränsa GnuPG:s hemkatalog (chmod 700) till den ägande användaren och sensorkontot.
  • Rotera CBOM_API_KEY regelbundet och injicera den via env/secrets manager.
  • Granska Nitrokey PIN-återförsöksräknare via gpg –card-status för att upptäcka obehöriga försök.

Slutsats

Discover_PGP-sensorn tillhandahåller passiv, skrivskyddad identifiering av OpenPGP-nyckelstubbar (och valfria PKCS#11-objekt) förankrade i Nitrokey-enheter – utan att exponera eller exportera privat nyckelmaterial – vilket ger CBOM Secure kontinuerlig insyn i hårdvarutoken-nycklars utgångsdatum, algoritmer och livscykel.