Windows Active Directory Certificate Services (ADCS) med PKI-proxy¶
I detta dokument beskrivs konfigurationen av Windows Active Directory Certificate Services (ADCS) tillsammans med PKI Proxy och NetHSM.
Prerequisits¶
NetHSM
Provisioned
Administrative access
PKI Proxy server
NetHSM PKCS#11-modul installerad och konfigurerad för användning med NetHSM
CA-server (Windows Server)
ADCS role installed, but not configured
PKI Proxy client tools installed
Klientverktyg behövs inte om denna server även kör PKI-proxyservern, eftersom den innehåller klientverktygen.
Pynitrokey installed
Root CA Key and Certificate¶
I följande tabell listas nyckelalgoritmer och nyckellängder, tillsammans med de hash-algoritmer som Windows ADCS kan använda tillsammans med 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 |
Viktigt
Följ gärna rekommendationerna för val av säker nyckelalgoritm, nyckellängd och hash-algoritm.
En nyckel och ett certifikat kan antingen genereras på nytt eller så kan ett befintligt migreras. Se underavsnitten nedan för mer information om hur du går tillväga i just din situation.
Generate a new Root CA Key and Certificate on Windows¶
Följande anvisningar beskriver hur man skapar en ny nyckel och ett nytt certifikat för användning i en rotcertifikatutfärdare (Root CA) för ** i ADCS.
Tips
Det är oftast enklare att skapa en nyckel och ett certifikat med hjälp av ADCS-konfigurationsguiden och sedan följa anvisningarna på Migrera befintlig nyckel och certifikat.
I det här fallet används en begärandemall för att generera en nyckel med uttryckliga CA-tillägg. De specifika värdena måste anpassas efter din miljö.
Förfrågningsmallen måste sparas i en fil med namnet RootCA.inf och med följande innehåll.
Den här mallen genererar en RSA-nyckel med en nyckellängd på 4096 bitar. Du måste ersätta <CA-NAME> med namnet på din certifikatutfärdare.
[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
Certifikatet har lagts till i den lokala certifikatdatabasen. Exportera certifikatet till en PFX-fil och ersätt <THUMBPRINT> med motsvarande värde från utdata från föregående kommando.
$password = Read-Host -AsSecureString "Password"
Export-PfxCertificate -Cert Cert:\LocalMachine\My\<THUMBPRINT> -FilePath RootCA.pfx -Password $password
Lösenordet används för att kryptera PKCS#12-arkivet (PFX-filen). Du kan fortsätta med kapitlet NetHSM-konfiguration.
Migrate existing Key and Certificate¶
För att migrera en befintlig nyckel och ett befintligt certifikat måste dessa exporteras från certifikatlagret på ADCS, och det resulterande arkivet importeras till NetHSM.
Viktigt
Innan du gör ändringar i en certifikatutfärdare i produktionsmiljön rekommenderas det att du skapar en säkerhetskopia av den. Se denna sida för mer information.
Öppna
certlm.msc.Gå till Certifikat – Lokal dator → Personliga → Certifikat.
Select the certificate in the list on the right.
I menyraden högst upp väljer du ” ” → ”Action” → ”All Tasks” → ”Export…”. Då startas guiden för export av certifikat från ** .
Confirm the introduction of the assistant with Next.
Markera alternativrutan bredvid ” ” (Ja, exportera den privata nyckeln) och bekräfta med ” ” (Ja, exportera den privata nyckeln). Om alternativrutan inte är tillgänglig är nyckeln markerad som icke-exporterbar. I så fall gäller inte denna guide för det avsedda användningsfallet.
Inkludera om möjligt alla certifikat i certifieringsvägen
Markera alternativrutan bredvid ” ” (Ja, exportera den privata nyckeln) och bekräfta med ” ” (Ja, exportera den privata nyckeln). Därefter.
Markera alternativrutan bredvid ” Personal Information Exchange – PKCS #12 (.PFX)”. Se till att du markerar följande alternativ:
Inkludera om möjligt alla certifikat i certifieringsvägen
Exportera alla utökade egenskaper
Enable certificate privacy
Confirm the selection with Next.
Markera alternativrutan bredvid ” ” (Lösenord). Ange ett lösenord i textfälten för lösenord. Välj ” ” (AES256-SHA256) från rullgardinsmenyn bredvid ” Encryption” (Kryptering).
Viktigt
Krypteringsmetoden AES256-SHA256 stöds endast från och med Windows Server 2019 och Windows 11. För användning i äldre versioner ska du behålla standardinställningen TripleDES-SHA1.
Confirm the selection with Next.
Choose a storage location and file name and confirm with Next.
Viktigt
Den exporterade nyckeln och certifikatet bör förvaras på en säker plats där endast behöriga användare har tillgång till dem.
Confirm the export with Finish.
Se till att certifikatet fortfarande är markerat i listan till höger.
I menyraden högst upp väljer du ” Action” → ”All Tasks” → ”Delete”. Bekräfta borttagningen av den privata nyckeln och certifikatet med ” ” ”Yes”.
Du kan fortsätta med kapitlet NetHSM-konfiguration.
NetHSM Configuration¶
Nyckeln och certifikatet från föregående kapitel måste importeras till NetHSM. Med kommandot nitropy kan vi importera PKCS#12-arkivet direkt till NetHSM.
Importera PKCS#12-arkivet enligt följande, och ersätt samtidigt <KEY-ID>, <MECHANISM> och <PKCS12-ARCHIVE> med respektive värden.
nitropy nethsm import-pkcs12 -k <KEY-ID> -m <MECHANISM> -p <password> <PKCS12-ARCHIVE>
För RSA-nycklar måste mekanismen vara rsa_signature_pkcs1 och för ECDSA-nycklar ecdsa_signature.
Du kan nu kontrollera att certifikatet finns på NetHSM.
nitropy nethsm list-keys
Nyckeln kommer att visas tillsammans med det nyckel-ID som angavs i föregående kommando.
PKI Proxy Server Configuration¶
På PKI-proxyservern måste du dela det certifikat som just har lagts till från NetHSM. Följ stegen i ” : Publicera certifikat från NetHSM” för mer information.
Windows ADCS Configuration¶
PKI Proxy Client Tools Configuration¶
I det följande lägger vi in nyckeln och certifikatet i det lokala certifikatarkivet på Windows-datorn.
Open the PKI Proxy Certificate Manager.
Click the Add… button.
Fyll i de obligatoriska fälten.
Plats, t.ex.
https://localhost:9266Autentisering
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.
Du kan nu kontrollera att certifikatet finns i den lokala datorns certifikatarkiv.
Öppna dialogrutan ” ” (Kör ) genom att antingen högerklicka på Windows Startmenyn och välja ” ” (Kör ) eller genom att trycka på Windows-tangenten + R på tangentbordet.
I dialogrutan ” ” (Kör ) anger du
certlm.mscoch bekräftar genom att trycka på . Ange på tangentbordet eller genom att klicka på OK.I certifikathanteraren som öppnas navigerar du i trädstrukturen till vänster till ” -certifikat – Lokal dator → Personliga → Certifikat ”.
The published certificate is now listed on the right.
Windows ADCS Configuration¶
Öppna ” ” (Serverhanteraren) från ” ” (Startmenyn) eller genom att trycka på Windows-tangenten + R på tangentbordet och ange
ServerManager.exe.Klicka på flaggikonen i menyraden längst upp till höger och välj ” ” (Konfigurera Active Directory Certificate Services på målservern ) bland meddelandena efter installationen. Detta startar guiden ” ” (AD CS-konfiguration ).
In the wizard, set the settings below according to the stage.
Role Services
Check the radio button next to Certification Authority.
Setup Type
Välj Enterprise CA eller Standalone CA beroende på din miljö.
CA Type
Välj ” ” som rotcertifikatutfärdare
Private Key
Markera alternativrutan bredvid ” ” (Använd befintlig privatnyckel). Under detta alternativ markerar du alternativrutan bredvid ” ” (Välj ett certifikat och använd tillhörande privata nycklar).
Existing Certificate
I listan över certifikat från **** väljer du det certifikat du vill använda. Se till att kryssrutan bredvid ” ” (Tillåt administratörsinteraktion när certifikatutfärdaren (CA) får åtkomst till den privata nyckeln) inte är markerad. Detta är inte nödvändigt eftersom PKI Proxy KSP inte kräver någon ytterligare autentisering för att använda den privata nyckeln.
När konfigurationsguiden är klar öppnar du certifikatutfärdaren ” ” från Start-menyn **** eller genom att trycka på Windows-tangenten + R på tangentbordet och ange
certsrv.msc. Du kan kontrollera att certifikatutfärdartjänsten har startat korrekt genom att se om det finns en grön prick med en vit bock vid certifikatutfärdarens namn.
Viktigt
Certifikatutfärdarens tillgänglighet beror på om den privata nyckeln och certifikatet är tillgängliga. Om dessa inte är tillgängliga kan certifikatutfärdartjänsten misslyckas med att starta eller avslutas oväntat. Vid ett fel bör du kontrollera händelseloggen i Windows under ” ” ( ) för mer information.