PKCS#12 / PFX Keystore-integrationsguide
Översikt
Den här guiden konfigurerar CBOM Secure Discover_Keystore-sensorn för att upptäcka PKCS#12 (.p12, .pfx) nyckellager – lösenordsskyddade behållare som paketerar en privat nyckel med dess certifikatkedja. Sensorn skannar konfigurerade sökvägar skrivskyddat och extraherar certifikatets subjekt/utfärdares DN, serienummer och giltighet, algoritm och storlek för publik nyckel, signaturalgoritm, SAN, nyckelanvändning och fingeravtryck. Den läser, lagrar eller överför aldrig privat nyckelmaterial.
Förutsättningar
- CBOM-plattformsåtkomst och Discover_Keystore-agenten installerad på värd(arna) med .p12/.pfx-filerna.
- Minst en .p12- eller .pfx-fil i målkatalogerna.
- Lösenordet för varje nyckellager som sensorn öppnar (anges som hemligheter, loggas aldrig).
- Java 8+ eller OpenSSL 1.1+ endast om du behöver skapa/konvertera nyckellager.
- Ett dedikerat OS-konto med lägst behörighet (cbom-sensor) med skrivskyddad åtkomst — aldrig root.
Steg-för-steg-guide
Steg 1: Leta reda på PKCS#12-filer
hitta /opt/certs /etc/ssl /var/lib/certs -type f \( -name "*.p12" -o -name "*.pfx" \) 2>/dev/null # verifiera att en fil är ett giltigt lösenordsskyddat paket (listar paket, inget nyckelmaterial): openssl pkcs12 -info -in /opt/certs/server.p12 -noout -passin pass:changeit
Steg 2: (Valfritt) Exportera en PKCS#12 från JKS eller PEM
Om certifikaten finns i ett JKS-nyckellager, exportera till PKCS#12; eller paketera separata PEM-certifikat-/nyckelfiler:
keytool -importkeystore \ -srckeystore keystore.jks -srcstoretype JKS -srcstorepass \ -destkeystore out.p12 -deststoretype PKCS12 -deststorepass -noprompt openssl pkcs12 -export -in cert.pem -inkey key.pem -certfile chain.pem \ -out bundle.p12 -namn "minserver" -passout pass:
Steg 3: Bevilja skrivskyddade filsystembehörigheter
sudo useradd --system --no-create-home --shell /sbin/nologin cbom-sensor sudo setfacl -R -mu:cbom-sensor:rX /opt/certs sudo -u cbom-sensor openssl pkcs12 -info -in /opt/certs/server.p12 -noout -passin pass:
Steg 4: Konfigurera CBOM Secure Sensor
sensorer: - namn: Discover_Keystore aktiverad: sant schema: "0 2 * * *" alternativ: scan_paths: [/opt/certs, /etc/ssl/private, /var/lib/tomcat/conf] file_extensions: [.p12, .pfx] rekursiv: sant keystore_credentials: - sökväg: /opt/certs/server.p12 password_env: CBOM_KS_SERVER_PASSWORD - sökväg: /opt/certs/wildcard.pfx password_env: CBOM_KS_WILDCARD_PASSWORD default_password_env: CBOM_KS_DEFAULT_PASSWORD exclude_paths: [/opt/certs/archive, /opt/certs/expired] output: format: cbom-json destination: plattform
Ställ in varje lösenordsvariabel i en begränsad miljöfil (chmod 640, root:cbom-sensor) och ladda sedan om agenten.
Steg 5: Validera
sudo journalctl -u cbom-agent -n 100 --no-pager sudo cbom-ctl sensor kör Discover_Keystore
Bekräfta att skanningen hittar de förväntade PKCS#12-filerna och publicerar resurserna. Kontrollera att ämne/utgångsdatum/algoritm är ifyllda i portalen (Tillgångar → Certifikat). Filer med felaktigt lösenord loggar en MAC-verifieringsvarning.
Vanliga fel
MAC-verifieringsfel / felaktigt lösenord
Orsak: Det angivna lösenordet matchar inte, eller så använder filen äldre RC2/3DES-kryptering som är inkompatibel med värdens OpenSSL.
Lösning: Verifiera med openssl pkcs12 -info; exportera äldre filer igen med modern kryptering.
Åtkomst nekad att läsa nyckelarkivet
Orsak: cbom-sensor saknar läsbehörighet för filen eller dess överordnade katalog.
Lösning: Bevilja läsning via setfacl eller gruppmedlemskap; kör sensorn igen.
0 tillgångar hittades trots att filer finns
Orsak: scan_paths eller file_extensions matchar inte de faktiska filerna (t.ex. saknad inledande punkt).
Lösning: Jämför utdata från ett find-kommando med konfigurationsfilen; korrigera felaktigheter och kör om.
Säkerhetsrekommendationer
- Referera till lösenord via password_env — bädda aldrig in dem i YAML.
- Kör sensorn som ett dedikerat skrivskyddat konto utan shell eller sudo.
- Begränsa miljöfilen till läge 640, root:cbom-sensor.
- Rotera PKCS#12-lösenord för lagring per policy och starta om agenten.
- Lägg till arkiverade/utgångna nyckelkataloger till exclude_paths.
Slutsats
Sensorn Discover_Keystore ger kontinuerlig, skrivskyddad insyn i PKCS#12-nyckellager – extraherar certifikat- och publika nycklar-metadata utan att någonsin vidröra privata nyckelmaterial – och avslöjar utgångna certifikat, svaga nyckelstorlekar och föråldrade signaturalgoritmer i CBOM Secure.
