Windows Active Directory Certificate Services (ADCS) med PKI-proxy¶
Dette dokument beskriver konfigurationen af Windows Active Directory Certificate Services (ADCS) sammen med PKI Proxy og NetHSM.
Prerequisits¶
NetHSM
Provisioned
Administrative access
PKI Proxy server
NetHSM PKCS#11-modulet er installeret og konfigureret til at bruge NetHSM
CA-server (Windows Server)
ADCS role installed, but not configured
PKI Proxy client tools installed
Klientværktøjer er ikke nødvendige, hvis denne server også kører PKI-proxyserveren, da denne indeholder klientværktøjerne.
Pynitrokey installed
Root CA Key and Certificate¶
I nedenstående tabel er de vigtigste algoritmer og nøglelængder angivet sammen med de hash-algoritmer, som Windows ADCS kan anvende sammen 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 |
Vigtigt
Følg venligst de anbefalede retningslinjer for valg af en sikker nøglealgoritme, nøglelængde og hash-algoritme.
En nøgle og et certifikat kan enten genereres på ny, eller et eksisterende kan overføres. Se underafsnittene nedenfor for at få mere at vide om fremgangsmåden i netop din situation.
Generate a new Root CA Key and Certificate on Windows¶
Følgende vejledning beskriver, hvordan man opretter en ny nøgle og et nyt certifikat til brug i en » «-rodcertifikatmyndighed (Root CA) i ADCS.
Tip
Det er som regel nemmere at generere en nøgle og et certifikat ved hjælp af ADCS-konfigurationsguiden og derefter følge vejledningen på Migrate existing Key and Certificate.
I dette tilfælde bruges en anmodningsskabelon til at generere en nøgle med eksplicitte CA-udvidelser. De konkrete værdier skal tilpasses til dit miljø.
Anmodningsskabelonen skal gemmes i en fil med navnet RootCA.inf og med følgende indhold.
Denne skabelon genererer en RSA-nøgle med en nøglelængde på 4096 bits. Du skal erstatte <CA-NAME> med navnet på din CA.
[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 er blevet tilføjet til den lokale certifikatdatabase. Eksporter certifikatet til en PFX-fil, og erstat <THUMBPRINT> med den relevante værdi fra udskriften af den forrige kommando.
$password = Read-Host -AsSecureString "Password"
Export-PfxCertificate -Cert Cert:\LocalMachine\My\<THUMBPRINT> -FilePath RootCA.pfx -Password $password
Adgangskoden bruges til at kryptere PKCS#12-arkivet (PFX-filen). Du kan fortsætte med kapitlet NetHSM-konfiguration.
Migrate existing Key and Certificate¶
For at migrere en eksisterende nøgle og et eksisterende certifikat skal disse eksporteres fra certifikatlageret på ADCS, og det resulterende arkiv skal importeres til NetHSM.
Vigtigt
Inden du foretager ændringer i en produktionscertifikatmyndighed, anbefales det at lave en sikkerhedskopi af den. Se venligst denne side for at få mere at vide.
Åbn
certlm.msc.Gå til Certifikater – Lokal computer → Personlige → Certifikater.
Select the certificate in the list on the right.
I menulinjen øverst skal du gå til » « → »Action« → »All Tasks« → »Export…«. Dette vil starte guiden til eksport af » «-certifikatet.
Confirm the introduction of the assistant with Next.
Markér afkrydsningsfeltet ved siden af » « (Ja, eksporter den private nøgle) og bekræft med » « (Næste). Hvis afkrydsningsfeltet ikke er tilgængeligt, er nøglen markeret som ikke-eksportabel. I dette tilfælde gælder denne vejledning ikke for den påtænkte anvendelse.
Medtag om muligt alle certifikater i certifikatstien
Markér afkrydsningsfeltet ved siden af » « (Ja, eksporter den private nøgle) og bekræft med » « (Næste).
Markér afkrydsningsfeltet ved siden af » Personal Information Exchange - PKCS #12 (.PFX) «. Sørg for at markere følgende indstillinger:
Medtag om muligt alle certifikater i certifikatstien
Eksporter alle udvidede egenskaber
Enable certificate privacy
Confirm the selection with Next.
Markér afkrydsningsfeltet ved siden af » « (Adgangskode). Indtast en adgangskode i tekstfelterne til adgangskoden. Vælg » « (AES256-SHA256) fra rullemenuen ved siden af » Encryption« (Kryptering).
Vigtigt
Krypteringsmetoden AES256-SHA256 understøttes kun fra og med Windows Server 2019 og Windows 11. Ved brug på ældre versioner skal du beholde standardindstillingen TripleDES-SHA1.
Confirm the selection with Next.
Choose a storage location and file name and confirm with Next.
Vigtigt
Den eksporterede nøgle og det eksporterede certifikat bør opbevares på et sikkert sted, hvor kun autoriserede brugere har adgang til dem.
Confirm the export with Finish.
Sørg for, at certifikatet stadig er valgt på listen til højre.
I menulinjen øverst skal du gå til » Action« → »All Tasks« → »Delete«. Bekræft sletningen af den private nøgle og certifikatet med » « »Yes«.
Du kan fortsætte med kapitlet NetHSM-konfiguration.
NetHSM Configuration¶
Nøglen og certifikatet fra det forrige kapitel skal importeres til NetHSM. Med kommandoen » nitropy« kan vi importere PKCS#12-arkivet direkte til NetHSM.
Importer PKCS#12-arkivet som beskrevet nedenfor, og erstat <KEY-ID>, <MECHANISM> og <PKCS12-ARCHIVE> med de respektive værdier.
nitropy nethsm import-pkcs12 -k <KEY-ID> -m <MECHANISM> -p <password> <PKCS12-ARCHIVE>
For RSA-nøgler skal mekanismen være rsa_signature_pkcs1, og for ECDSA-nøgler skal den være ecdsa_signature.
Du kan nu kontrollere, om certifikatet er tilgængeligt på NetHSM.
nitropy nethsm list-keys
Nøglen vises med det angivne nøgle-ID fra den forrige kommando.
PKI Proxy Server Configuration¶
På PKI-proxyserveren skal du dele det certifikat, der netop er tilføjet fra NetHSM. Følg vejledningen på Publish Certificates from the NetHSM for at få mere at vide.
Windows ADCS Configuration¶
PKI Proxy Client Tools Configuration¶
I det følgende gør vi nøglen og certifikatet tilgængelige i Windows’ lokale certifikatlager.
Open the PKI Proxy Certificate Manager.
Click the Add… button.
Udfyld de obligatoriske felter.
Placering, f.eks.
https://localhost:9266Autentificering
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 kontrollere, om certifikatet findes i den lokale certifikatdatabase.
Åbn dialogboksen » « (Kør), enten ved at højreklikke på Windows- Startmenuen og vælge » « (Kør) eller ved at trykke på Windows-tasten + R på tastaturet.
I dialogboksen » « (Kør) skal du indtaste
certlm.mscog bekræfte ved at trykke på Indtast på tastaturet eller ved at klikke på OK.I den certifikatadministrator, der nu vises, skal du i træstrukturen til venstre navigere til » -certifikater – Lokal computer → Personlige → Certifikater «.
The published certificate is now listed on the right.
Windows ADCS Configuration¶
Åbn » « Server Manager fra Start-menuen **** eller ved at trykke på Windows-tasten + R på tastaturet og indtaste
ServerManager.exe.Klik på flagikonet i menulinjen øverst til højre, og vælg » « (Konfigurer Active Directory-certifikattjenester på destinationsserveren ) blandt meddelelserne efter implementeringen. Dette vil starte 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ælg Enterprise CA eller Standalone CA afhængigt af dit miljø.
CA Type
Vælg » « Root CA
Private Key
Markér radioknappen ved siden af » « (Brug eksisterende privatnøgle). Under denne indstilling skal du markere radioknappen ved siden af » « (Vælg et certifikat og brug de tilknyttede private nøgler).
Existing Certificate
I listen over » -certifikater« ( ) skal du vælge det certifikat, du ønsker at bruge. Sørg for, at afkrydsningsfeltet ved siden af » « (Tillad administratorinteraktion, når CA’en får adgang til den private nøgle) ( ) ikke er markeret. Dette er ikke nødvendigt, da PKI Proxy KSP ikke kræver yderligere godkendelse for at bruge den private nøgle.
Når konfigurationsguiden er færdig, skal du åbne » «-certifikatmyndigheden fra Start-menuen **** eller ved at trykke på Windows-tasten + R **** på tastaturet og indtaste
certsrv.msc. Du kan kontrollere, at certifikatmyndighedstjenesten er startet korrekt, når der vises en grøn prik med et hvidt flueben ved navnet på certifikatmyndigheden.
Vigtigt
Certifikatmyndighedens tilgængelighed afhænger af, om den private nøgle og certifikatet er tilgængelige. Hvis de ikke er tilgængelige, kan certifikatmyndighedstjenesten muligvis ikke startes eller stopper uventet. I tilfælde af en fejl kan du finde yderligere oplysninger i Windows-hændelsesloggen under » « ( ).