„Windows Active Directory“ sertifikātu pakalpojumi (ADCS) ar PKI starpniekserveri

Šajā dokumentā ir aprakstīta Windows Active Directory sertifikātu pakalpojumu (ADCS) konfigurācija, izmantojot PKI Proxy un NetHSM.

Prerequisits

  • NetHSM

    • Provisioned

    • Administrative access

  • PKI Proxy server

    • NetHSM PKCS#11 modulis ir instalēts un konfigurēts, lai izmantotu NetHSM

  • CA serveris (Windows Server)

    • ADCS role installed, but not configured

    • PKI Proxy client tools installed

    • Klienta rīki nav nepieciešami, ja šajā serverī darbojas arī PKI starpniekserveris, jo tas jau ietver klientu rīkus.

    • Pynitrokey installed

Root CA Key and Certificate

Turpmākajā tabulā ir uzskaitīti galvenie algoritmi un atslēgu garumi, kā arī haša algoritmi, kurus Windows ADCS var izmantot kopā ar 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

Svarīgi

Lūdzu, ievērojiet labākās prakses ieteikumus, izvēloties drošu atslēgas algoritmu, garumu un haša algoritmu.

Atslēgu un sertifikātu var vai nu ģenerēt no jauna, vai arī pārnest jau esošo. Lūdzu, izlasiet turpmākās apakšnodaļas, lai uzzinātu vairāk par pieeju, kas piemērota tieši jūsu konkrētajai situācijai.

Generate a new Root CA Key and Certificate on Windows

Šie norādījumi paredzēti, lai ADCS vidē izveidotu jaunu atslēgu un sertifikātu, kas paredzēts izmantošanai „ “ saknes sertifikātu iestādē (Root CA).

Padoms

Parasti ir vieglāk izveidot atslēgu un sertifikātu, izmantojot ADCS konfigurācijas vedni, un pēc tam rīkoties saskaņā ar norādījumiem, kas atrodami šeit: Migrate existing Key and Certificate.

Šajā gadījumā tiek izmantots pieprasījuma veidne, lai ģenerētu atslēgu ar eksplicītiem CA paplašinājumiem. Konkrētās vērtības ir jāpielāgo jūsu videi.

Pieprasījuma veidne ir jāglabā failā ar nosaukumu „ ` ” RootCA.inf`, un tās saturam jābūt šādam.

Šis veidne ģenerēs RSA atslēgu ar garumu 4096 biti. Jums ir jāaizstāj <CA-NAME> ar savas sertifikātu izsniedzējas iestādes nosaukumu.

[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

Sertifikāts ir pievienots vietējā datora sertifikātu krātuvei. Eksportējiet sertifikātu uz PFX failu, aizstājot <THUMBPRINT> ar attiecīgo vērtību no iepriekšējās komandas izvades.

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

Paroles vērtība tiek izmantota, lai šifrētu PKCS#12 arhīvu (PFX failu). Jūs varat turpināt ar nodaļu „ ” („NetHSM konfigurācija”).

Migrate existing Key and Certificate

Lai pārnestu esošo atslēgu un sertifikātu, tie ir jāeksportē no ADCS sertifikātu krātuves, un iegūto arhīvu jāimportē NetHSM.

Svarīgi

Pirms veicat izmaiņas ražošanas sertifikātu izsniedzējā, ieteicams izveidot tā dublējumu. Lai uzzinātu vairāk, lūdzu, skatiet šo lapu: ` <https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/ca-backup-and-restore-windows-powershell-cmdlets>` __.

  1. Atveriet certlm.msc.

  2. Atveriet „ “ sadaļu „Sertifikāti“ – „Vietējais dators“ → „Personīgie“ → „Sertifikāti“.

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

  4. Augšējā izvēlnē atveriet „ ” → „Action” → „All Tasks” → „Export…”. Tādējādi tiks palaists „ ” sertifikātu eksportēšanas vednis.

  5. Confirm the introduction of the assistant with Next.

  6. Atzīmējiet izvēles pogu blakus „ ” („Jā, eksportēt privāto atslēgu”) un apstipriniet ar „ ” („Nākamais”). Ja izvēles poga nav pieejama, atslēga ir atzīmēta kā neeksportējama. Šādā gadījumā šī rokasgrāmata nav piemērojama paredzētajam lietošanas gadījumam.

  7. Ja iespējams, iekļaujiet visus sertifikātus sertifikācijas ceļā

  8. Atzīmējiet izvēles pogu blakus „ ” (Jā, eksportēt privāto atslēgu) un apstipriniet ar „ ” (Nākamais).

  9. Atzīmējiet izvēles pogu blakus „ Personal Information Exchange - PKCS #12 (.PFX) ”. Pārliecinieties, ka esat atzīmējuši šādas opcijas:

    • Ja iespējams, iekļaujiet visus sertifikātus sertifikācijas ceļā

    • Eksportēt visas paplašinātās īpašības

    • Enable certificate privacy

    Confirm the selection with Next.

  10. Atzīmējiet izvēles pogu blakus opcijai „ ” (Parole). Ievadiet paroli paroles teksta laukos. No nolaižamā izvēlnes blakus opcijai „ Encryption” ( šifrēšana) izvēlieties „ ” ( ) AES256-SHA256.

    Svarīgi

    Šifrēšanas metode AES256-SHA256 tiek atbalstīta tikai sākot ar Windows Server 2019 un Windows 11. Lai to izmantotu vecākās versijās, saglabājiet noklusējuma iestatījumu TripleDES-SHA1.

    Confirm the selection with Next.

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

    Svarīgi

    Eksportētā atslēga un sertifikāts jāuzglabā drošā vietā, kur piekļuve tiem ir tikai pilnvarotiem lietotājiem.

  12. Confirm the export with Finish.

  13. Pārliecinieties, ka sertifikāts joprojām ir atlasīts sarakstā pa labi.

  14. Augšējā izvēlnē atveriet „ ” → „Action” → „All Tasks” → „Delete”. Apstipriniet privātā atslēgas un sertifikāta dzēšanu, izvēloties „ ” → „Yes”.

Jūs varat turpināt ar nodaļu „ ” („NetHSM konfigurācija”).

NetHSM Configuration

Iepriekšējā nodaļā minētais atslēgas un sertifikāta fails ir jāimportē NetHSM ierīcē. Izmantojot komandu „ nitropija“, varam importēt PKCS#12 arhīvu tieši NetHSM ierīcē.

Importējiet PKCS#12 arhīvu šādi, aizstājot <KEY-ID>, <MECHANISM> un <PKCS12-ARCHIVE> ar atbilstošajām vērtībām.

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

RSA atslēgām mehānismam jābūt rsa_signature_pkcs1, bet ECDSA atslēgām — ecdsa_signature.

Tagad varat pārliecināties, ka sertifikāts ir pieejams NetHSM.

nitropy nethsm list-keys

Atslēga tiks uzrādīta ar iepriekšējā komandā norādīto atslēgas ID.

PKI Proxy Server Configuration

PKI starpniekserverī ir jāpadara koplietošanai tikko pievienotais sertifikāts no NetHSM. Lai uzzinātu vairāk, lūdzu, izpildiet soļus, kas aprakstīti šeit: Publish Certificates from the NetHSM.

Windows ADCS Configuration

PKI Proxy Client Tools Configuration

Turpmāk mēs padarīsim atslēgu un sertifikātu pieejamus Windows vietējā datora sertifikātu krātuvē.

  1. Open the PKI Proxy Certificate Manager.

  2. Click the Add… button.

  3. Aizpildiet obligātos laukus.

    • Atrašanās vieta, piemēram, https://localhost:9266

    • Autentifikācija

    • 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.

Tagad varat pārliecināties, ka sertifikāts ir pieejams vietējā datora sertifikātu krātuvē.

  1. Atveriet dialoglodziņu „ “ („Run“ ), vai nu ar peles labo pogu noklikšķinot uz Windows „Start“ izvēlnes un izvēloties „ “ („Run“ ), vai arī nospiežot Windows taustiņu + R uz tastatūras.

  2. Dialoglodziņā „ ” („Palaist”) ievadiet certlm.msc un apstipriniet, nospiežot Ievadiet ar tastatūru vai noklikšķinot uz „OK”.

  3. Parādītajā sertifikātu pārvaldniekā kreisajā pusē esošajā koka struktūrā atveriet „ ” sertifikāti – Vietējais dators → Personīgie → Sertifikāti.

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

Windows ADCS Configuration

  1. Atveriet „ “ servera pārvaldnieku no „ “ sākuma izvēlnes vai nospiežot Windows taustiņu + R uz tastatūras un ievadiet ServerManager.exe.

  2. Labajā augšējā stūrī esošajā izvēlnes joslā noklikšķiniet uz karoga ikonas un no paziņojumiem pēc ieviešanas izvēlieties „ ” („Konfigurēt Active Directory sertifikātu pakalpojumus mērķa serverī ”). Tādējādi tiks palaists vednis „ ” („AD CS konfigurācija ”).

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

    • Role Services

      Check the radio button next to Certification Authority.

    • Setup Type

      Atkarībā no jūsu vides izvēlieties „ “ Enterprise CA ( ) vai „ “ Standalone CA ( ).

    • CA Type

      Izvēlieties galveno sertifikātu izsniedzēju „

    • Private Key

      Atzīmējiet izvēles pogu blakus opcijai „ ” („Izmantot esošo privāto atslēgu”). Izvēloties šo opciju, atzīmējiet izvēles pogu blakus opcijai „ ” („Izvēlēties sertifikātu un izmantot tam piesaistītās privātās atslēgas”).

      • Existing Certificate

        Sarakstā „ ” sertifikāti izvēlieties sertifikātu, kuru vēlaties izmantot. Pārliecinieties, ka nav atzīmēta izvēles rūtiņa blakus opcijai „ ” (Atļaut administratora iejaukšanos, ja CA piekļūst privātajam atslēgas pārim).. Tas nav nepieciešams, jo PKI Proxy KSP neprasa papildu autentifikāciju privātās atslēgas izmantošanai.

  4. Kad konfigurācijas vednis būs pabeidzis darbu, atveriet sertifikācijas iestādi „ “ ( ) no „ “ sākuma izvēlnes ( ) vai nospiežot klaviatūras taustiņu kombināciju „Windows Key + R“ ( ) ( ) un ievadot „ certsrv.msc“. Varat pārliecināties, ka sertifikācijas iestādes pakalpojums ir sācies pareizi, ja pie sertifikācijas iestādes nosaukuma redzams zaļš punkts ar baltu atzīmes ikonu.

Svarīgi

Sertifikācijas iestādes pieejamība ir atkarīga no privātās atslēgas un sertifikāta pieejamības. Ja tie nav pieejami, sertifikācijas iestādes pakalpojums var nepalikties vai negaidīti pārtraukt darbību. Kļūdas gadījumā pārbaudiet Windows notikumu žurnāla ierakstu „ “ ( ), lai iegūtu papildu informāciju.