„Windows Active Directory“ sertifikatų paslaugos (ADCS) su PKI tarpininku

Šiame dokumente aprašoma „Windows Active Directory Certificate Services“ (ADCS) konfigūracija naudojant „PKI Proxy“ ir „NetHSM“.

Prerequisits

  • NetHSM

    • Provisioned

    • Administrative access

  • PKI Proxy server

    • NetHSM PKCS#11 modulis įdiegtas ir sukonfigūruotas naudoti su NetHSM

  • CA serveris (Windows Server)

    • ADCS role installed, but not configured

    • PKI Proxy client tools installed

    • Kliento įrankiai nėra reikalingi, jei šiame serveryje taip pat veikia PKI tarpinio serverio programa, nes ji jau apima kliento įrankius.

    • Pynitrokey installed

Root CA Key and Certificate

Toliau pateiktoje lentelėje išvardyti raktų algoritmai ir raktų ilgiai, taip pat maišos algoritmai, kuriuos „Windows ADCS“ gali naudoti su „NetHSM“.

Key Algorithm

Key Length

Hash Algorithm

RSA

1024

MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512

2048

MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512

4096

MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512

ECDSA

P256

SHA1, SHA256, SHA385, SHA512

P384

SHA1, SHA256, SHA385, SHA512

P521

SHA1, SHA256, SHA385, SHA512

Svarbu

Prašome laikytis geriausios praktikos, susijusios su saugaus raktų algoritmo, ilgio ir maišos algoritmo pasirinkimu.

Raktą ir sertifikatą galima sugeneruoti iš naujo arba perkelti esamą. Norėdami sužinoti daugiau apie jūsų konkrečiai situacijai tinkamą metodą, prašome susipažinti su toliau pateiktais poskyriais.

Generate a new Root CA Key and Certificate on Windows

Šios instrukcijos skirtos naujo rakto ir sertifikato, skirto naudoti „ “ šakninėje sertifikavimo institucijoje (Root CA), sukūrimui ADCS sistemoje.

Patarimas

Paprastai lengviau sugeneruoti raktą ir sertifikatą naudodamiesi ADCS konfigūracijos vedliu, o po to vadovautis instrukcijomis, pateiktomis adresu Migrate existing Key and Certificate.

Šiuo atveju prašymo šablonas naudojamas raktui su aiškiai nurodytais CA išplėtimais sugeneruoti. Konkrečias reikšmes reikia pritaikyti prie jūsų aplinkos.

Užklausos šabloną reikia išsaugoti į failą, kurio pavadinimas būtų „ ` “ RootCA.inf`, o turinys – toks, kaip nurodyta toliau.

Šis šablonas sukurs RSA raktą, kurio ilgis bus 4096 bitai. Turite pakeisti <CA-NAME> į savo sertifikavimo institucijos (CA) pavadinimą.

[Version]
Signature="$Windows NT$"

[NewRequest]
Subject = "CN=<CA-NAME>"
KeySpec = 1
KeyLength = 4096
Exportable = TRUE
MachineKeySet = TRUE
SMIME = FALSE
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
ProviderName = "Microsoft Software Key Storage Provider"
ProviderType = 0
RequestType = Cert
KeyUsage = 0x86

[Extensions]
; Key Usage: keyCertSign (0x04) + cRLSign (0x02) => 0x06
2.5.29.15 = "{critical}86"

; Basic Constraints: CA = TRUE, path length optional
2.5.29.19 = "{critical}{text}CA=TRUE"

; CA Version (V0.0)
1.3.6.1.4.1.311.21.1 = "{hex}02 01 00"

[RequestAttributes]
; Empty for self-signed request

Generate the key and certificate from the certificate template.

certreq -new RootCA.inf RootCA.req

Sertifikatas buvo įtrauktas į vietinio kompiuterio sertifikatų saugyklą. Eksportuokite sertifikatą į PFX failą, pakeisdami <THUMBPRINT> atitinkama reikšme iš ankstesnės komandos išvesties.

$password = Read-Host -AsSecureString "Password"
Export-PfxCertificate -Cert Cert:\LocalMachine\My\<THUMBPRINT> -FilePath RootCA.pfx -Password $password

Slaptažodžio reikšmė naudojama PKCS#12 archyvui (PFX failui) šifruoti. Galite tęsti skyrių „ “ („NetHSM konfigūracija“).

Migrate existing Key and Certificate

Norint perkelti esamą raktą ir sertifikatą, juos reikia eksportuoti iš ADCS sertifikatų saugyklos, o gautą archyvą – importuoti į „NetHSM“.

Svarbu

Prieš atliekant pakeitimus gamybinėje sertifikavimo institucijoje, rekomenduojama sukurti jos atsarginę kopiją. Daugiau informacijos rasite šioje <https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/ca-backup-and-restore-windows-powershell-cmdlets> __ puslapyje.

  1. Atidarykite „ ` “ certlm.msc`.

  2. Eikite į „ “ > „Sertifikatai“ > „Vietinis kompiuteris“ → „Asmeniniai“ → „Sertifikatai“.

  3. Select the certificate in the list on the right.

  4. Viršutinėje meniu juostoje pasirinkite „ “ > „Veiksmai“ → „Visos užduotys“ → „Eksportuoti…“. Tai paleis „ “ sertifikatų eksporto vedlį.

  5. Confirm the introduction of the assistant with Next.

  6. Pažymėkite pasirinkimo mygtuką šalia „ “ („Taip, eksportuoti privatųjį raktą“) ir patvirtinkite pasirinkdami „ “ („Taip, eksportuoti privatųjį raktą“). Jei pasirinkimo mygtukas nėra rodomas, raktas pažymėtas kaip neeksportuojamas. Tokiu atveju šis vadovas netaikomas numatytam naudojimo atvejui.

  7. Jei įmanoma, įtraukite visus sertifikatus į sertifikavimo kelią

  8. Pažymėkite pasirinkimo mygtuką šalia „ “ („Taip, eksportuoti privatųjį raktą“) ir patvirtinkite pasirinkdami „ “ („Taip, eksportuoti privatųjį raktą“). Toliau.

  9. Pažymėkite pasirinkimo mygtuką šalia „ Personal Information Exchange – PKCS #12 (.PFX)“. Įsitikinkite, kad pažymėjote šias parinktis:

    • Jei įmanoma, įtraukite visus sertifikatus į sertifikavimo kelią

    • Eksportuoti visas išplėstines savybes

    • Enable certificate privacy

    Confirm the selection with Next.

  10. Pažymėkite pasirinkimo mygtuką šalia „ “ (Slaptažodis). Įveskite slaptažodį į slaptažodžio laukelius. Iš išskleidžiamojo meniu šalia „ Encryption“ (Slaptažodžio šifravimas) pasirinkite „ “ (Slaptažodžio šifravimas) AES256-SHA256.

    Svarbu

    Šifravimo metodas „ “ (AES256-SHA256) palaikomas tik nuo „Windows Server 2019“ ir „Windows 11“ versijų. Norėdami naudoti senesnėse versijose, palikite numatytąjį metodą „ “ (TripleDES-SHA1).

    Confirm the selection with Next.

  11. Choose a storage location and file name and confirm with Next.

    Svarbu

    Eksportuotas raktas ir sertifikatas turėtų būti saugomi saugioje vietoje, kur prie jų gali prieiti tik įgalioti vartotojai.

  12. Confirm the export with Finish.

  13. Įsitikinkite, kad dešinėje esančiame sąraše vis dar yra pažymėtas sertifikatas.

  14. Viršutinėje meniu juostoje pereikite į „ “ → „Veiksmai“ → „Visos užduotys“ → „Ištrinti“. Patvirtinkite privataus rakto ir sertifikato ištrinimą, pasirinkdami „ “ → „Taip“.

Galite tęsti skyrių „ “ („NetHSM konfigūracija“).

NetHSM Configuration

Ankstesniame skyriuje nurodytą raktą ir sertifikatą reikia importuoti į „NetHSM“. Naudodami komandą „ nitropija“, galime importuoti PKCS#12 archyvą tiesiai į „NetHSM“.

Importuokite PKCS#12 archyvą taip, kaip nurodyta toliau, pakeisdami <KEY-ID>, <MECHANISM> ir <PKCS12-ARCHIVE> atitinkamomis reikšmėmis.

nitropy nethsm import-pkcs12 -k <KEY-ID> -m <MECHANISM> -p <password> <PKCS12-ARCHIVE>

RSA raktų atveju mechanizmas turi būti rsa_signature_pkcs1, o ECDSA raktų atveju – ecdsa_signature.

Dabar galite patikrinti, ar sertifikatas yra „NetHSM“ įrenginyje.

nitropy nethsm list-keys

Raktas bus rodomas su ankstesnėje komandoje nurodytu rakto ID.

PKI Proxy Server Configuration

PKI tarpinio serverio aplinkoje turite pasidalinti ką tik iš „NetHSM“ pridėtą sertifikatą. Norėdami sužinoti daugiau, atlikite veiksmus, aprašytus straipsnyje „ : sertifikatų iš „NetHSM“ paskelbimas“.

Windows ADCS Configuration

PKI Proxy Client Tools Configuration

Toliau pateikiame raktą ir sertifikatą, kuriuos galima rasti „Windows“ vietinio kompiuterio sertifikatų saugykloje.

  1. Open the PKI Proxy Certificate Manager.

  2. Click the Add… button.

  3. Užpildykite privalomus laukelius.

    • Vieta, pvz., https://localhost:9266

    • Autentiškumo nustatymas

    • User

    • Secret Key/Password/SPN

    • Certificate Store: LOCALMACHINE\My

    Confirm the configuration with the OK button. This will bring you back to the previous window.

  4. The list under Certificate Management in the PKI Proxy Certificate Manager should now show the just added certificate.

Dabar galite patikrinti, ar sertifikatas yra vietiniame kompiuterio sertifikatų saugykloje.

  1. Atidarykite dialogo langą „ **“ („Vykdyti“ ), dešiniuoju pelės mygtuku spustelėdami „Windows“ „Pradžios“ meniu ir pasirinkdami „ “ („Vykdyti“ ) arba klaviatūroje paspausdami „Windows“ klavišą + „R“**.

  2. ** Dialoge „ “ („Vykdyti“ > „ “) įveskite „ ` “ certlm.msc` ir patvirtinkite paspaudę „ “ („Enter“) klavišą arba spustelėję „ **“ „OK“.

  3. Atsidariusioje sertifikatų tvarkyklėje kairėje esančioje medžio struktūroje pereikite į „ “ sertifikatai – Vietinis kompiuteris → Asmeniniai → Sertifikatai.

  4. The published certificate is now listed on the right.

Windows ADCS Configuration

  1. Atidarykite „ “ serverio tvarkyklę iš „ “ pradžios meniu arba paspaudę „Windows“ klavišą + R klaviatūroje ir įveskite ServerManager.exe.

  2. Dešinėje viršuje esančioje meniu juostoje spustelėkite vėliavėlės piktogramą ir iš pranešimų po diegimo pasirinkite „ “ („Konfigūruoti Active Directory sertifikatų paslaugas“), paskirties serveryje. Tai paleis „ “ AD CS konfigūracijos vedlį.

  3. In the wizard, set the settings below according to the stage.

    • Role Services

      Check the radio button next to Certification Authority.

    • Setup Type

      Pasirinkite „ “ įmonės sertifikavimo centrą (Enterprise CA) arba „ “ autonominį sertifikavimo centrą (Standalone CA), priklausomai nuo jūsų aplinkos.

    • CA Type

      Pasirinkite „ “ pagrindinį sertifikatų išdavėją

    • Private Key

      Pažymėkite pasirinkimo mygtuką šalia „ “ („Naudoti esamą privatųjį raktą“). Pasirinkus šią parinktį, pažymėkite pasirinkimo mygtuką šalia „ “ („Pasirinkti sertifikatą ir naudoti su juo susietus privačiuosius raktus“).

      • Existing Certificate

        “ sertifikatų sąraše pasirinkite sertifikatą, kurį norite naudoti. Įsitikinkite, kad langelis šalia „ “ (Leisti administratoriaus sąveiką, kai CA prieina prie privataus rakto) nėra pažymėtas. Tai nėra būtina, nes „PKI Proxy KSP“ nereikalauja jokio papildomo autentiškumo patvirtinimo norint naudoti privatų raktą.

  4. Baigus konfigūracijos vedlio darbą, atidarykite „ “ sertifikavimo instituciją iš „ “ pradžios meniu arba paspaudę klavišų kombinaciją „ “ „Windows“ klavišas + „R“ ir įvedę certsrv.msc. Galite įsitikinti, kad sertifikavimo institucijos paslauga paleista teisingai, jei prie sertifikavimo institucijos pavadinimo matote žalią tašką su balta varnele.

Svarbu

Sertifikavimo institucijos veikimas priklauso nuo privataus rakto ir sertifikato prieinamumo. Jei jų nėra, sertifikavimo institucijos paslauga gali nepavykti paleisti arba netikėtai sustoti. Jei atsiranda klaida, daugiau informacijos ieškokite „Windows“ įvykių žurnalo įraše „ “ ( ).