{"copy":"M\u00e1sol\u00e1s","expand":"R\u00e9szletek megjelen\u00edt\u00e9se","collapse":"Bez\u00e1r\u00e1s","copy_success":"M\u00e1solva!","copy_error":"Sikertelen m\u00e1sol\u00e1s!"}

Hibakeresési útmutató a KeyLockerhez

A KeyLocker egy erőteljes kódaláíró eszköz, amely lehetővé teszi a Kód aláírási tanúsítványának tárolását a felhőben és annak hash-ének biztonságos távoli aláírását. Az első beállításnak azonban vannak bizonyos buktatói, amelyekben ez a cikk segít.

A cikk tartalma

Változók ellenőrzése

A KeyLocker működéséhez az ön rendszerén elengedhetetlen a változók helyes beállítása. Ezek nemcsak az aláíró eszközök útvonalát határozzák meg, hanem a hitelesítési adatokat is hordozzák. Ezeket beállíthatja egyetlen munkamenetre vagy tartósan.

Változókat különböző módokon állíthatja be a rendszerben. Az önálló fájl és változók mellett elmenthetők a Windows Credential Managerbe is. Ha grafikus felületen szeretne aláírni, beállíthatja azokat a Click-to-sign segédprogramban, amelyet a KeyLocker fiókjában talál (a változók azonban nem fognak működni rendszer szinten).

Egy változó beállítása Windowsban egyszerű a parancssorból. Futtassa a cmd parancsot, és írja be: setx VÁLTOZÓ=érték Vigyázat - a setx felhasználói változókkal működik, nem rendszerváltozókkal..

A KeyLocker megfelelő működéséhez szükséges az ügyfélhitelesítési változók és a DigiCert aláíró eszközök és könyvtárak helyének beállítása.

Hitelesítés beállítása

  • SM_CLIENT_CERT_FILE - az azonosító tanúsítvány elérési útja p12 kiterjesztéssel, amelyet a DigiCert ONE útmutatójából töltött le
  • SM_HOST - a DigiCert ONE host címe, ez https://clientauth.one.digicert.com

Ezt a két változót nem titok, mert a tanúsítványt jelszó védi. Nyugodtan beállíthatja őket a rendszerbe. A következő két változó viszont már titkos, és ajánlott, hogy ne állítsa be a rendszer szintjén, ha több felhasználó fér hozzá. Inkább mentse őket a Windows jelszókezelőbe. További információkat a Windows változók beállításáról a Credential setup for Windows cikkben találhat.

  • SM_API_KEY - API kulcs, amelyet a DigiCert ONE felületén generált
  • SM_CLIENT_CERT_PASSWORD - jelszó az azonosító tanúsítványhoz P12-ben, amelyet egyszeri megjelenik a DC1 útmutatóban

Aláíró eszközök útvonalának beállítása

A PATH változó értékének hozzáadása a setx PATH "elérési út;%PATH%" paranccsal történik. Ez a parancs hozzáad egy új értéket a már meglévő felhasználói PATH változókhoz, és véglegesen menti azt. A KeyLocker helyes működéséhez legalább két dolog beállítása szükséges:

  • Windows SDK és a signtool útvonal
  • A DigiCert Keylocker Tools útvonal

Keresse meg a telepített Windows SDK megfelelő útvonalát (az útvonal verziószámot használ, amelyet telepített). Ezután szüksége lesz a DigiCert Keylocker Tools-ra, amelyet letöltött és telepített a DigiCert ONE-ból, C:\Program Files\DigiCert\DigiCert Keylocker Tools alatt találja.

A változók mindkettőjét egyszerre adjuk hozzá CMD-n keresztül, különben az egyik felülírja a másikat: setx PATH "C:\Program Files\DigiCert\DigiCert Keylocker Tools\;C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\;%PATH%"

A rendszer változókat beállíthatjuk Windows GUI-n keresztül is; CMD-n keresztül gyorsabb, de értékek többszöri megadása esetén felülíródnak. Lehetőség van PowerShell használatára is.

Hogyan módosítsuk a PATH változót manuálisan Windows alatt

Ha biztosra akar menni, hogy értékek megmaradnak, módosíthatja a PATH-ot manuálisan:

  1. Nyissa meg a VezérlőpultRendszerRendszerbeállítások.
  2. Kattintson a Környezet változók lehetőségre.
  3. Keresd a PATH-ot (Rendszer változók vagy Felhasználói változók).
  4. Kattintson a Szerkesztés-re, adja hozzá az egyes útvonalakat, és mentse el.
Proměnných pridanie cez Windows GUI
Proměnných pridanie cez Windows GUI

Hogyan adjunk hozzá PATH változót PowerShell segítségével

Ha tartósan szeretné hozzáadni az útvonalat a PATH változóhoz PowerShell segítségével, kövesse az alábbi lépéseket:

  1. Nyissa meg a PowerShellt rendszergazdaként (kattintson a jobb gombbal a Start menüre → Windows PowerShell (Admin)).
  2. Először olvassa ki az aktuális "PATH" változó értékét:
  3. [System.Environment]::GetEnvironmentVariable("Path", "User")
  4. Ezután adjon hozzá egy új útvonalat a meglévő értékekhez:
  5. 
    $path = [System.Environment]::GetEnvironmentVariable("Path", "User")
    $newPath = $path + ";C:\Program Files\DigiCert\DigiCert Keylocker Tools\"
    [System.Environment]::SetEnvironmentVariable("Path", $newPath, "User")
            
  6. Ha további útvonalat szeretne hozzáadni, ismételje meg a folyamatot:
  7. 
    $newPath = $newPath + ";C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\"
    [System.Environment]::SetEnvironmentVariable("Path", $newPath, "User")
            
  8. A parancsok végrehajtása után indítsa újra a parancssort vagy a számítógépet, hogy a változások érvényesüljenek.

Megjegyzés: Ha a rendszer "PATH" változót szeretné módosítani (ami minden felhasználóra érvényes), cserélje le a "User"-t "Machine"-ra a parancsban.

Változó értékének ellenőrzése cmd-ben: echo %VÁLTOZÓ% Például "echo %PATH%". Ezután a cmd kiírja annak értékét.

Beállítások ellenőrzése

A KeyLocker eszközök tartalmazzák a smctl segédprogramot, amellyel aláírhatunk, de az alapvető diagnosztikához is használható. A következő parancs ellenőrzi, hogy minden megfelelően van-e beállítva az állomáson, és az smctl csatlakozni tud-e a DigiCert felhőjéhez:

smctl healthcheck

Az ellenőrzés során megjelenik az megerősítés, hogy csatlakozott-e a KeyLockerhez (működik-e a hitelesítés), és hogy az smctl érzékeli-e az aláíró eszközök, például a signtool jelenlétét. Példa:

smctl healthcheck
--------- Fiókbeállítások ---------
Csapatok: Letiltva
Fenyegetésérzékelés: Engedélyezve
        Statikus bináris elemzés: Engedélyezve
        Szoftver összetétel elemzés: Letiltva

--------- Felhasználói hitelesítő adatok ---------
Állapot: Csatlakoztatva

Felhasználónév: XXXX-keylocker
Fiókok: XXXX-1699076
Hitelesítés: 2FA
Környezet: Prod
Hitelesítő adatok:
        Hoszt: https://clientauth.one.digicert.com
        API kulcs: 010897bf735bbc57d48270cd3d_50dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxe4 (Változó környezeti változójából származik)
        Ügyfél tanúsítványfájl elérési útja: C:\Users\xy\Documents\keylocker\Certificate_pkcs12.p12
        Ügyfél tanúsítvány jelszó: ytf_xxxxxx0F (Változó környezeti változójából származik)
API kulcsok:
        Név: xy (lejárati dátum: Mon, 31 Dec 2029 23:59:59 UTC)
       
Ügyfél tanúsítványok:
        Név: xy (lejárati dátum: Mon, 31 Dec 2029 23:59:59 UTC)
      
Előjogok:
        Aláírhat: Igen
        Offline kiadást jóváhagyhat: Nem
        Tanúsítvány visszavonhat: Igen
        Végezhet vizsgálatot: Nem

Engedélyek:
Fiók kezelő:
        MANAGE_AM_PERMISSION
        MANAGE_AM_ROLE
        MANAGE_AM_ACCOUNT_USER
        VIEW_AM_ROLE
        VIEW_AM_ACCOUNT
        VIEW_AM_USER
        VIEW_AM_ORGANIZATION
        VIEW_AM_AUDIT_LOG

Kulcspárok:
        SIGN_SM_HASH
        VIEW_SM_KEYPAIR
        MANAGE_SM_KEYPAIR

Tanúsítványok:
        VIEW_SM_CERTIFICATE
        REVOKE_SM_CERTIFICATE

Egyéb engedélyek:
        VIEW_SM_LICENSE
        MANAGE_SM_CC_API_KEY

--------- Aláíró eszközök ---------
Signtool 32 bit:
        Leképezve: Nem
Signtool:
        Leképezve: Igen
        Útvonal: C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\signtool.exe
Mage:
        Leképezve: Nem
Nuget:
        Leképezve: Nem
Jarsigner:
        Leképezve: Nem
Apksigner:
        Leképezve: Nem    

Ha probléma van a hitelesítéssel, ellenőrizze, hogy a KeyLocker útmutatója alapján kapott helyes értékeket állította-e be a DigiCert ONE felületén. Ha kétségei vannak, akkor az útmutatót visszaállíthatja és új hitelesítő adatokat hozhat létre.

Lehet, hogy előfordul, hogy az smctl nem érzékeli a signtool vagy további aláíró eszközök jelenlétét. Ez azt jelenti, hogy meg kell adni a helyüket a PATH felhasználói vagy rendszerváltozókban. Lásd fent a változók részlegnél.

MMC és tanúsítvány jelenlétének ellenőrzése

Ha Windows rendszert használ, nézzen be a tanúsítványkezelőbe, amelyet a certmgr.msc parancs futtatásával indíthat el. Ha a KeyLockerrel való szinkronizáció sikeres, látja a tanúsítványt privát kulcs jelzéssel a tanúsítványtárban. Ez azonban nem jelenti azt, hogy az valóban privát kulccsal rendelkezik - a privát kulcsú tanúsítvány továbbra is a felhőben van tárolva.

Ha a tanúsítvány nincs ott, indítson el egy szinkronizációt. smctl windows certsync Sikeres szinkronizálás esetén megerősítést kap:

Tanúsítvány szinkronizálása álnévhez: key_1236506290, ID: ac793b6d-cac4-4be4-b145-003d4d1d63db és SHA1 Fingerprint: 54d0c7a2d93ae4d5fccb41d97c51a8ab3581c72c

Aláírási problémák

Ha aláírási problémái vannak, próbáljon a legegyszerűbbtől a bonyolultabb felé haladni. A legegyszerűbb az aláírás a DigiCert smctl segédprogramjával, amely használható aláíró eszközök, például a signtool vagy a jarsigner fölött is. Ez a legkevesebb konfliktussal járó módszer, és nem igényel paramétereket. A problémamegoldás során ne használjon időbélyeget vagy más lehetőségeket.

Az smctl segítségével történő aláírás egyszerűen elvégezhető: smctl sign --keypair-alias=key_1234567890 --input C:\Users\John.Doe\Desktop\file_to_sign.exe

A tanúsítványra való hivatkozás a "keypair-alias" vagy a "fingerprint" paraméterrel történhet, a tanúsítványról szóló információkat például a smctl windows certsync parancs segítségével találhatja meg.

Aláírás után ellenőrizheti az aláírást: smctl sign verify --input

Az aláírásra vonatkozó útmutatást a Sign binaries with SMCTL cikkben találhatja.

Sikeres aláírás után smctl segítségével más eszközzel is aláírhat, például a signtool-lal. Ennek is működnie kellene. Hagyja a tanúsítványokat automatikusan megválasztani, majd fokozatosan adjon hozzá további paramétereket.

Amint a kívánt módon sikeresen működik, próbálkozhat például Visual Studio vagy más fejlesztői környezet használatával is aláírni.

Hol találhatók a naplók

Ha a fentiek egyike sem működik, és az aláírás nem működik, javaslom, hogy tekintse át az smctl és a DigiCert további eszközeinek naplóit. Ha a támogatásunkkal történő probléma megoldása során naplókkal rendelkezik, az biztosan gyorsítja a probléma megoldását.

Az smctl segédprogram naplóját megtalálja a smctl.log fájlban, amely a / és a .signingmanager/logs mappában található a felhasználó profiljában. Próbálja kiírni cmd-ben echo %USERPROFILE%/.signingmanager/logs , és látni fogja a mappa teljes elérési útját.

További források és információk

Hasznos volt Önnek ez a cikk?