Benutzer-Werkzeuge

Webseiten-Werkzeuge


adcs

Dies ist eine alte Version des Dokuments!


Active Directory Certificate Services (ADCS) ist eine Serverrolle von Microsoft Windows Server, die es ermöglicht, eine Public Key Infrastructure (PKI) innerhalb einer Windows-Domäne bereitzustellen. Sie wird verwendet, um digitale Zertifikate auszustellen, zu verwalten, zu erneuern und zu widerrufen. Diese Zertifikate können zur Authentifizierung, Verschlüsselung und Signierung in verschiedenen Szenarien verwendet werden (z. B. für HTTPS, Email-Verschlüsselung, Smartcards oder VPN).

ADCS Tools/SnapIns

certsrv.mscVerwaltung der Zertifizierungsstelle
certtmpl.mscVerwaltung der Zertifikatvorlagen
certreq.exeZertifikatsanforderung per CLI
certutil.exeDiagnose und Management per CLI
MMC → ZertifikateAnzeige und Export von Zertifikaten

ADCS veröffentlicht Zertifikate und Sperrlisten (CRL: Certifficate revokation list) unter folgenden Pfaden:

CDP (CRL Distribution Point)Speicherort der Sperrlistehttp://pki.domain.local/CRL/ca.crl
AIA (Authority Information Access)Speicherort des CA-Zertifikatshttp://pki.domain.local/CA.crt

Komponenten

Zertifizierungsstelle (CA)Der zentrale Dienst, der Zertifikate ausstellt und verwaltet.
Web EnrollmentWeboberfläche zur Zertifikatsanforderung und -verwaltung.
Online Responder (OCSP)Dient der Überprüfung von Zertifikatsstatus in Echtzeit.
Network Device Enrollment Service (NDES)Ermöglicht die Anmeldung von Netzwerkgeräten (z. B. Router, Switches).
Zertifikatvorlagen (Templates)Vordefinierte Einstellungen für automatische und manuelle Zertifikatserstellung.
Zertifikatverteilungspunkte (CDP/AIA)Speicherorte für Sperrlisten (CRL) und CA-Zertifikate.

CSR (Certificate signing request)

Erstelle eine Datei, z.B webserver.inf (Mit certtmpl.msc kannst du alle Vorlagen anzeigen)

[Version]
Signature="$Windows NT$"

[NewRequest]
Subject = "CN=www.domain.com"  ; Ändere auf deinen echten FQDN
KeySpec = 1
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
SMIME = FALSE
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = PKCS10
KeyUsage = 0xa0

[Extensions]
2.5.29.17 = "{text}"
_continue_ = "dns=www.domain.com&"   ; SAN-Eintrag
_continue_ = "dns=domain.com"

[RequestAttributes]
CertificateTemplate = WebServer  

Erzeuge einen CSR auf dem betreffenden Server.

certreq -new webserver.inf webserver.req

Die req Datei jetzt auf die CA kopieren und das Zertifikat erzeugen.

certreq -submit webserver.req webserver.cer

Das erzeugte Zertifikat wieder auf den Webserver kopieren und bestätigen.

certreq -accept webserver.cer

Zertifikat als PFX (inkl private key) exportieren.

# Öffne PowerShell als Administrator
$cert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -like "*domain.com*" }
$pwd = ConvertTo-SecureString -String "MeinSicheresPasswort123" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath "C:\webserver.pfx" -Password $pwd

Zertifikat als PFX (inkl private key) installieren.

Import-PfxCertificate -FilePath "C:\webserver.pfx" -CertStoreLocation Cert:\LocalMachine\My

CRL (Certificate revokation list)

PS C:\> $cert = Get-ChildItem -Path Cert:\LocalMachine\My | Select-Object -First 1
PS C:\> $cert.Export([System.Security.Cryptography.X509Certificates.X509ContentType]::Cert) | Set-Content -Path "C:\Temp\ExportedCert.cer" -Encoding Byte
PS C:\> certutil -urlfetch -verify "C:\Temp\ExportedCert.cer"
 
Aussteller:
    CN=EnterpriseIssuingCA
    DC=d2000
    DC=local
  Namenshash (sha1): 20177fd169ec3c09be924512e96b8109379fbaa0
  Namenshash (md5): 20eaa93acd9358a358a56ae652663417
Antragsteller:
    CN=audit.akm.at
  Namenshash (sha1): 49ea13ae2a8a41a8b96f9a42e2663f821e693a36
  Namenshash (md5): 2d67cd2da7891e75a22a19423e885094
Zertifikatseriennummer: 4b00004747b1656e05970d297b000100004747
 
dwFlags = CA_VERIFY_FLAGS_CONSOLE_TRACE (0x20000000)
dwFlags = CA_VERIFY_FLAGS_DUMP_CHAIN (0x40000000)
ChainFlags = CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT (0x40000000)
HCCE_LOCAL_MACHINE
CERT_CHAIN_POLICY_BASE
-------- CERT_CHAIN_CONTEXT --------
ChainContext.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
ChainContext.dwRevocationFreshnessTime: 206 Days, 7 Hours, 16 Minutes, 25 Seconds
 
SimpleChain.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
SimpleChain.dwRevocationFreshnessTime: 206 Days, 7 Hours, 16 Minutes, 25 Seconds
 
CertContext[0][0]: dwInfoStatus=102 dwErrorStatus=0
  Issuer: CN=EnterpriseIssuingCA, DC=d2000, DC=local
  NotBefore: 10.04.2025 07:56
  NotAfter: 10.04.2027 07:56
  Subject: CN=audit.akm.at
  Serial: 4b00004747b1656e05970d297b000100004747
  SubjectAltName: DNS-Name=audit.akm.at, DNS-Name=vie-t-srv-audit.d2000.local
  Template: WebServer
  Cert: e47af028e60d14590d95ad69ca8b76e8da17e408
  Element.dwInfoStatus = CERT_TRUST_HAS_KEY_MATCH_ISSUER (0x2)
  Element.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
  ----------------  Zertifikat abrufen  ----------------
  Überprüft "Zertifikat (0)" Zeit: 0 c11c4a123232d5756221fa5b6a7e81fbd7d0a03d
    [0.0] ldap:///CN=EnterpriseIssuingCA,CN=AIA,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?cACertificate?base?objectClass=certificationAuthority
 
  Überprüft "Zertifikat (1)" Zeit: 0 b61438f8d5b0ba453066f20db4a290d0032c2d3c
    [0.1] ldap:///CN=EnterpriseIssuingCA,CN=AIA,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?cACertificate?base?objectClass=certificationAuthority
 
  Überprüft "Zertifikat (1)" Zeit: 0 b61438f8d5b0ba453066f20db4a290d0032c2d3c
    [1.0] http://pki.akm.at/pki/vie-srv-ca01.d2000.local_EnterpriseIssuingCA(1).crt
 
  ----------------  Zertifikat abrufen  ----------------
  Überprüft "Basissperrliste (0151)" Zeit: 0 7d8932bc1119d3f18f083cbef8c778d5e37e81a7
    [0.0] ldap:///CN=EnterpriseIssuingCA,CN=vie-srv-ca01,CN=CDP,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?certificateRevocationList?base?objectClass=cRLDistributionPoint
 
  Überprüft "Deltasperrliste (0151)" Zeit: 0 87bb070928de8de2a98f70c9c0f61e35be189cd7
    [0.0.0] ldap:///CN=EnterpriseIssuingCA,CN=vie-srv-ca01,CN=CDP,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?deltaRevocationList?base?objectClass=cRLDistributionPoint
 
  Überprüft "Deltasperrliste (0151)" Zeit: 0 87bb070928de8de2a98f70c9c0f61e35be189cd7
    [0.0.1] http://pki.akm.at/pki/EnterpriseIssuingCA+.crl
 
  Überprüft "Basissperrliste (0151)" Zeit: 0 7d8932bc1119d3f18f083cbef8c778d5e37e81a7
    [1.0] http://pki.akm.at/pki/EnterpriseIssuingCA.crl
 
  Überprüft "Deltasperrliste (0151)" Zeit: 0 87bb070928de8de2a98f70c9c0f61e35be189cd7
    [1.0.0] ldap:///CN=EnterpriseIssuingCA,CN=vie-srv-ca01,CN=CDP,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?deltaRevocationList?base?objectClass=cRLDistributionPoint
 
  Überprüft "Deltasperrliste (0151)" Zeit: 0 87bb070928de8de2a98f70c9c0f61e35be189cd7
    [1.0.1] http://pki.akm.at/pki/EnterpriseIssuingCA+.crl
 
  ----------------  Basissperrliste veraltet  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  ----------------  Zertifikat-OCSP  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  --------------------------------
    CRL 0150:
    Issuer: CN=EnterpriseIssuingCA, DC=d2000, DC=local
    ThisUpdate: 09.04.2025 12:10
    NextUpdate: 24.04.2025 00:30
    CRL: 11e66ec51ef72d189c669893c0b4aa0635f1f5f9
  Application[0] = 1.3.6.1.5.5.7.3.1 Serverauthentifizierung
 
CertContext[0][1]: dwInfoStatus=102 dwErrorStatus=0
  Issuer: CN=ROOTCA
  NotBefore: 06.04.2020 14:25
  NotAfter: 06.04.2034 14:35
  Subject: CN=EnterpriseIssuingCA, DC=d2000, DC=local
  Serial: 730000000402f3944965a14fd6000100000004
  Template: SubCA
  Cert: b61438f8d5b0ba453066f20db4a290d0032c2d3c
  Element.dwInfoStatus = CERT_TRUST_HAS_KEY_MATCH_ISSUER (0x2)
  Element.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
  ----------------  Zertifikat abrufen  ----------------
  Überprüft "Zertifikat (0)" Zeit: 0 003a30d9ef730a81e36684c1cfc3aa0fb3b1f979
    [0.0] http://pki.akm.at/pki/RootCA_ROOTCA(1).crt
 
  Überprüft "Zertifikat (1)" Zeit: 0 81b85e9c5ca43c4be4fb8f343edbfb5a3d8df18f
    [1.0] ldap:///CN=ROOTCA,CN=AIA,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?cACertificate?base?objectClass=certificationAuthority
 
  Überprüft "Zertifikat (0)" Zeit: 0 003a30d9ef730a81e36684c1cfc3aa0fb3b1f979
    [1.1] ldap:///CN=ROOTCA,CN=AIA,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?cACertificate?base?objectClass=certificationAuthority
 
  ----------------  Zertifikat abrufen  ----------------
  Abgelaufen "Basissperrliste (12)" Zeit: 0 4c44fba92c822a6bf632b2c531ad75443eab2711
    [0.0] http://pki.akm.at/pki/ROOTCA.crl
 
  Überprüft "Basissperrliste (14)" Zeit: 0 de9f7a941d1db2df69780bb385901f3047b00ffc
    [1.0] ldap:///CN=ROOTCA,CN=RootCA,CN=CDP,CN=Public%20Key%20Services,CN=Services,CN=Configuration,DC=d2000,DC=local?certificateRevocationList?base?objectClass=cRLDistributionPoint
 
  ----------------  Basissperrliste veraltet  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  ----------------  Zertifikat-OCSP  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  --------------------------------
    CRL 14:
    Issuer: CN=ROOTCA
    ThisUpdate: 16.09.2024 08:47
    NextUpdate: 16.09.2025 21:07
    CRL: de9f7a941d1db2df69780bb385901f3047b00ffc
 
CertContext[0][2]: dwInfoStatus=10c dwErrorStatus=0
  Issuer: CN=ROOTCA
  NotBefore: 27.09.2012 08:24
  NotAfter: 06.04.2048 13:12
  Subject: CN=ROOTCA
  Serial: 323eab5b4a53dda34ebcdde98394ea6a
  Cert: 003a30d9ef730a81e36684c1cfc3aa0fb3b1f979
  Element.dwInfoStatus = CERT_TRUST_HAS_NAME_MATCH_ISSUER (0x4)
  Element.dwInfoStatus = CERT_TRUST_IS_SELF_SIGNED (0x8)
  Element.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
  ----------------  Zertifikat abrufen  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  ----------------  Zertifikat abrufen  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  ----------------  Zertifikat-OCSP  ----------------
  Keine URLs "Keine" Zeit: 0 (null)
  --------------------------------
 
Exclude leaf cert:
  Chain: fd786397872f5f43ee14c7592bf62f0f0d950d70
Full chain:
  Chain: 12cc956f02358ef15baa12297568acc4259d370e
------------------------------------
Verfizierte Ausstellungsrichtlinien: Kein
Verfizierte Anwendungsrichtlinien:
    1.3.6.1.5.5.7.3.1 Serverauthentifizierung
Sperrstatussüberprüfung des untergeordneten Zertifikats erfolgreich abgeschlossen.
CertUtil: -verify-Befehl wurde erfolgreich ausgeführt.

CLI

# Zeige alle Templates
certtmpl.msc
adcs.1744293988.txt.gz · Zuletzt geändert: 2025/04/10 16:06 von jango