„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.
Atidarykite „ ` “ certlm.msc`.
Eikite į „ “ > „Sertifikatai“ > „Vietinis kompiuteris“ → „Asmeniniai“ → „Sertifikatai“.
Select the certificate in the list on the right.
Viršutinėje meniu juostoje pasirinkite „ “ > „Veiksmai“ → „Visos užduotys“ → „Eksportuoti…“. Tai paleis „ “ sertifikatų eksporto vedlį.
Confirm the introduction of the assistant with Next.
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.
Jei įmanoma, įtraukite visus sertifikatus į sertifikavimo kelią
Pažymėkite pasirinkimo mygtuką šalia „ “ („Taip, eksportuoti privatųjį raktą“) ir patvirtinkite pasirinkdami „ “ („Taip, eksportuoti privatųjį raktą“). Toliau.
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.
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.
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.
Confirm the export with Finish.
Įsitikinkite, kad dešinėje esančiame sąraše vis dar yra pažymėtas sertifikatas.
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.
Open the PKI Proxy Certificate Manager.
Click the Add… button.
Užpildykite privalomus laukelius.
Vieta, pvz.,
https://localhost:9266Autentiš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.
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.
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“**.
** Dialoge „ “ („Vykdyti“ > „ “) įveskite „ ` “ certlm.msc` ir patvirtinkite paspaudę „ “ („Enter“) klavišą arba spustelėję „ **“ „OK“.
Atsidariusioje sertifikatų tvarkyklėje kairėje esančioje medžio struktūroje pereikite į „ “ sertifikatai – Vietinis kompiuteris → Asmeniniai → Sertifikatai.
The published certificate is now listed on the right.
Windows ADCS Configuration¶
Atidarykite „ “ serverio tvarkyklę iš „ “ pradžios meniu arba paspaudę „Windows“ klavišą + R klaviatūroje ir įveskite
ServerManager.exe.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į.
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ą.
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 „ “ ( ).