Teil 5b: Two-Tier PKI Hierachy SubCA konfigurieren

Inhaltsverzeichnis

Nach der Vorbereitung der PKI Hierachy SubCA in Teil 5a installiere und konfiguriere ich die Two-Tier PKI Hierachy SubCA. Im Anschluss geht es schon ans Templates-Erstellen und Auto-Enrollment.

Das Root CA-Zertifikat und die CRL im lokalen Speicher von APP1 speichern

In Teil 5 habe ich das Zertifikat und die CRL der Root CA nach C:\Temp kopiert. Die folgenden zwei Befehle speichern diese im lokalen Speicher von APP1, damit das Erstellen der SubCA ohne Probleme durchgeführt werden kann.

  1. Als Administrator an APP1 anmelden
  2. Command Prompt (Admin) starten
  3. Mit folgenden Befehlen das Root CA-Zertifikat und die CRL im lokalen Speicher von APP1 speichern
    certutil -f -addstore root "C:\Temp\ORCA1_Einfaches-Netzwerk Root CA.crt"
    certutil -f -addstore root "C:\Temp\Einfaches-Netzwerk Root CA.crl"

    SUBCA-013
    SUBCA-015

Certification Authority auf APP1 installieren

  1. Server Manager > Manage > Add Roles and Features
  2. Add Roles and Features Wizard
    1. Before You Begin > Next
    2. Installation Type: Role-based or feature-based installation > Next
    3. Server Selection: APP1.intern.einfaches-netzwerk.at > Next
    4. Server Roles: Active Directory Certificate Services > Add Features > NextSUBCA-016
    5. Features > Next
    6. AD CS > Next
      1. Role Services: Certification Authority > Next
        SUBCA-017
    7. Confirmation > Next
    8. Results > Configure Active Directory Certificate Services on the destination server > Close
      SUBCA-018

Certification Authority auf APP1 konfigurieren

  1. AD CS Configuration
    1. Credentials > Next
    2. Role Services: Certification Authority > Next
      SUBCA-019
    3. Setup Type: Enterprise CA > Next
      SUBCA-020
    4. CA Type: Subordinate CA > Next
      SUBCA-021
    5. Private Key: Create a new private key > Next
      SUBCA-022

      1.  Cryptography
        1. Select a cryptographic provider: RSA#Microsoft Software Key Storage Provider
        2. Key length: 2048
        3. Hash algorithm: SHA256 > Next
          SUBCA-023
      2. CA Name
        1. Common name for this CA: Einfaches-Netzwerk SubCA > Next
          SUBCA-024
      3. Certificate Request > Next
        SUBCA-025
    6. Certificate Database > Next
    7. Confirmation > Configure
      SUBCA-026
    8. Results > Close
      SUBCA-027
  2. Die Datei C:\APP1.intern.einfaches-netzwerk.at_intern-APP1-CA.req nach ORCA1 > C:\Temp kopieren

 Das Zertifikat für die SubCA ausstellen und installieren

  1. Als lokaler Administrator an ORCA1 anmelden
  2. Command Prompt (Admin) starten
  3. Mit folgendem Befehl die Zertifikatsanforderung von APP1 an die Root CA senden
    certreq -submit C:\Temp\APP1.intern.einfaches-netzwerk.at_intern-APP1-CA.req
  4. Certification Authority List > OK
    SUBCA-028
  5. Server Manager > Tools > Certification Authority
  6. Einfaches-Netzwerk Root CA\Pending Requests anklicken
  7. Die Anforderung rechts anklicken > All Tasks > Issue
    SUBCA-029
  8. Request ID notieren > hier die Nummer 2
  9. Fenster schließen
  10. Im Command Prompt (Admin) mit folgendem Befehl das Zertifikat erhalten
    certreq -retrieve 2 C:\Temp\APP1.intern.einfaches-netzwerk.at_Einfaches-Netzwerk SubCA.crt
  11. Certification Authority List > OK
    SUBCA-031
  12. Die Datei C:\Temp\APP1.intern.einfaches-netzwerk.at_Einfaches-Netzwerk SubCA.crt nach APP1 > C:\Temp kopieren
  13. ORCA1 herunterfahren
  14. Auf APP1 Command Prompt (Admin) starten
  15. Mit folgendem Befehl alle Dateien von C:\Temp nach C:\CertEnroll kopieren
    copy C:\Temp\*.cr* C:\CertEnroll\
  16. Mit folgendem Befehl das Zertifikat installieren
    certutil -installcert C:\Temp\APP1.intern.einfaches-netzwerk.at_Einfaches-Netzwerk SubCA.crt
  17. Certificates Snap-In für Local Computer auf APP1
    SUBCA-033
  18. Mit folgendem Befehl den CertSvc starten
    net start certsvc

Die CDPs und AIAs von SubCA konfigurieren

  1. Server Manager > Tools > Certification Authority
  2. SubCA1 rechts anklicken > Properties 
  3. Auf den Reiter Extensions wechseln
  4. Select extension: CDP
  5. Wie folgt konfigurieren:
    C:\Windows\System32\CertSrv\CertEnroll\<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl
    ldap:///CN=<CATruncatedName><CRLNameSuffix>,CN=<ServerShortName>,CN=CDP,CN=Public Key Services,CN=Services,<ConfigurationContainer><CDPObjectClass>
    C:\CertEnroll\<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl
    http://pki.intern.einfaches-netzwerk.at/CertEnroll/<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl

    SUBCA-034 SUBCA-035 SUBCA-036 SUBCA-037

  6. Select extension: AIA
  7. Wie folgt konfigurieren:
    C:\Windows\system32\CertSrv\CertEnroll\<ServerDNSName>_<CaName><CertificateName>.crt
    ldap:///CN=<CATruncatedName>,CN=AIA,CN=Public Key Services,CN=Services,<ConfigurationContainer><CAObjectClass>
    http://pki.intern.einfaches-netzwerk.at/CertEnroll/<ServerDNSName>_<CaName><CertificateName>.crt

    SUBCA-047 SUBCA-048 SUBCA-049

  8. Fenster schließen, der Dienst wird später neu gestartet
  9. Im Command Prompt (Admin) mit folgenden Befehlen die Gültigkeitsdauer der CRL und den Zertifikaten konfigurieren
    certutil.exe -setreg CA\CRLPeriodUnits 1 
    certutil.exe -setreg CA\CRLPeriod "Weeks" 
    certutil.exe -setreg CA\CRLDeltaPeriodUnits 1
    certutil.exe -setreg CA\CRLDeltaPeriod "Days"
    certutil.exe -setreg CA\CRLOverlapPeriodUnits 12
    certutil.exe -setreg CA\CRLOverlapPeriod "Hours"
    certutil.exe -setreg CA\ValidityPeriodUnits 5 
    certutil.exe -setreg CA\ValidityPeriod "Years"
  10. Mit folgenden Befehlen den CertSvc neu starten und die CRL erstellen
    net stop certsvc && net start certsvc
    certutil.exe -CRL

    SUBCA-043

  11. Der Ordner C:\CertEnroll
    SUBCA-050

Die Konfiguration überprüfen

  1. MMC (Admin) starten
  2. Das Snap-in Enterprise PKI hinzufügen
  3. Enterprise PKI rechts anklicken > Manage AD Containers…
    SUBCA-051
  4. Manage AD Containers
    1. Reiter NTAuthCertificates
      1. Einfaches-Netzwerk SubCA-Zertifikat > Status OK
        SUBCA-052
    2. Reiter AIA Container
      1. Einfaches-Netzwerk Root CA-Zertifikat > Status OK
      2. Einfaches-Netzwerk SubCA-Zertifikat > Status OK
        SUBCA-053
    3. Reiter CDP Container
      1. Einfaches-Netzwerk Root CA-CRL > Status OK
      2. Einfaches-Netzwerk SubCA-CRL > Status OK
      3. Einfaches-Netzwerk SubCA-Delta CRL > Status OK
        SUBCA-054
    4. Reiter Certification Authorities Container
      1. Einfaches-Netzwerk Root CA > Status OK
        SUBCA-055
    5. Reiter Enrollment Services Container
      1. Einfaches-Netzwerk SubCA > Status OK
        SUBCA-056
  5. Fenster mit OK schließen
  6. Pfade der Einfaches-Netzwerk Root CA sind alle erreichbar
    SUBCA-057
  7. Pfade der Einfaches-Netzwerk SubCA sind alle erreichbar
    SUBCA-058

Alles klar! 🙂

Teil 5a: Two-Tier PKI Hierachy SubCA vorbereiten

Inhaltsverzeichnis

In Teil 5 habe ich die Offline Root CA konfiguriert. In diesem Teil werde ich die Two-Tier PKI Hierachy SubCA vorbereiten.

Den Ordner CertEnroll erstellen und Berechtigungen konfigurieren

  1. Als Administrator an APP1 anmelden
  2. Windows Explorer starten
  3. Auf das Laufwerk C:\ wechseln
  4. Einen Ordner mit dem Namen CertEnroll erstellen
  5. Den Ordner CertEnroll rechts anklicken und im Kontextmenü auf Properties klicken
  6. Auf den Reiter Sharing wechseln > Advanced Sharing
  7. Share this folder anhaken > Permissions
  8. Auf Add… klicken
  9. Cert Publishers > Check Names > OK
  10. Cert Publishers markieren > Allow Full Control > OK
    SUBCA-002
  11. Auf den Reiter Security wechseln > Edit…
  12. Cert Publishers > Check Names > OK
  13. Cert Publishers markieren > Allow Full Control > OK
    SUBCA-003
  14. Alle Fenster mit Close schließen

Hinweis: Wird die ausstellende SubCA auf einem anderen Rechner installiert, zu den Berechtigungen das Computerkonto der SubCA ebenfalls hinzufügen.

Internet Information Services (IIS) installieren

  1. Server Manager > Manage > Add Roles and Features
  2. Add Roles and Features Wizard
    1. Before You Begin > Next
    2. Installation Type: Role-based or feature-based installation > Next
    3. Server Selection: APP1.intern.einfaches-netzwerk.at > Next
    4. Server Roles: Web Server (IIS) > Add Features > Next
      SUBCA-001
    5. Features > Next
    6. Web Server Role (IIS) > Next
      1. Role Services > Next
    7. Confirmation > Install
    8. Results > Close

Am Web Server ein virtuelles Verzeichnis erstellen

  1. Server Manager > Local Server > Tools > Internet Information Services (IIS) Manager
  2. APP1\Sites erweitern
  3. Default Web Site rechts anklicken > Add Virtual DirectorySUBCA-004
  4. Add Virtual Directory
    1. Alias: CertEnroll
    2. Physical path: c:\CertEnroll > OK
      SUBCA-005

Directory Browsing aktivieren

  1. Im Bereich Connections das virtuelle Verzeichnis CertEnroll markieren
  2. Im Bereich CertEnroll Home Directory Browsing doppelklicken
    SUBCA-006
  3. Im Bereich Actions auf Enable klicken
    SUBCA-007

DoubleEscaping (für URLs mit +-Zeichen) aktivieren

  1. Command Promt (Admin) starten
  2. Mit folgendem Befehl in den Ordner inetsrv wechseln
    cd c:\Windows\System32\inetsrv
  3. Mit folgendem Befehl DoubleEscaping aktivieren
    appcmd set config "Default Web Site" /section:system.webServer/Security/requestFiltering -allowDoubleEscaping:True
  4. Den IIS-Dienst neu starten
    iisreset

    SUBCA-008

DNS-Alias für pki.intern.einfaches-netzwerk.at erstellen

  1. Als Administrator an DC1 anmelden
  2. Server Manager > Local Server > Tools > DNS
  3. Forward Lookup Zones erweitern
  4. DC1\Forward Lookup Zones erweitern
  5. intern.einfaches-netzwerk.at rechts anklicken > New Alias (CNAME)…
    SUBCA-009

  6. New Resource Record
    1. Alias name: pki
    2. Fully qualified domain name: pki.intern.einfaches-netzwerk.at.
    3. Fully qualified domain name for target host: app1.intern.einfaches-netzwerk.at > OK
      SUBCA-010
  7. DNS Manager-Konsole schließen
  8. Internet Explorer starten
    http://pki.intern.einfaches-netzwerk.at/CertEnroll/

SUBCA-012

Teil 5: Two-Tier PKI Hierachy Offline Root CA konfigurieren

Inhaltsverzeichnis

Two-Tier PKI Hierachy Offline Root CA konfigurieren: Die Root CA wird auf einem Server installiert, welcher nicht Mitglied der Domäne ist. Der Server ist mit keinem Netzwerk verbunden, daher auch Offline-Root CA (ORCA1). Die SubCA wird auf einem Server in der Domäne installiert (APP1). Das Aufwendige dabei ist, das Root CA-Zertifikat und die CRL in Active Directory zu veröffentlichen und das SubCA-Zertifikat offline mittels Root CA zu erstellen.

Als Grundlage verwende ich Active Directory Certificate Services.

ORCA1 installieren

In Teil 4a habe ich ORCA1 als virtuellen Server erstellt und installiert. Der Server hat alle aktuellen Updates installiert.

Certification Authority auf ORCA1 installieren und konfigurieren

  1. Als lokaler Administrator an ORCA1 anmelden
  2. Server Manager > Manage > Add Roles and Features
  3. Add Roles and Features Wizard
    1. Before You Begin > Next
    2. Installation Type: Role-based or feature-based installation > Next
    3. Server Selection: ORCA1 > Next
    4. Server Roles: Active Directory Certificate Services > Add Features > Next
      ORCA1-001
    5. Features > Next
    6. AD CS > Next
    7. Role Services: Certification Authority > Next
      ORCA1-002
    8. Confirmation > Install
    9. Results > Configure Active Directory Certificate Services on the destination server > Close
      ORCA1-003
  4. AD CS Configuration
    1. Credentials
      1. Credentials: ORCA1\Administrator > Next
        ORCA1-004
    2. Role Services: Certification Authority > Next
      ORCA1-005
    3. Setup Type: Standalone CA > Next
      ORCA1-006
    4. CA Type: Root CA > Next
      ORCA1-007
    5. Private Key: Create a new private key > Next
      ORCA1-008
    6. Cryptography:
      1. Select a cryptographic provider: RSA#Microsoft Software Key Storage Provider
      2. Key length: 2048
      3. Hash algorithm: SHA256 > Next
        ORCA1-009
    7. CA Name:
      1. Common name for this CA: Einfaches-Netzwerk Root CA > Next
        ORCA1-010
    8. Validity Period: 20 Years > Next
      ORCA1-011
    9. Certificate Database > Next
    10. Confirmation > Configure
      ORCA1-012
    11. Results > Close
      ORCA1-013

CDP (CRL Distribution Point) und AIA (Authority Information Access) der Root CA konfigurieren

  1. Server Manager > Tools > Certification Authority
  2. Einfaches-Netzwerk Root CA rechts anklicken > Properties
  3. Auf den Reiter Extensions wechseln
  4. Select extension: CDP
  5. Wie folgt konfigurieren:
    C:\Windows\System32\CertSrv\CertEnroll\<CaName><CRLNameSuffix>.crl
    http://pki.intern.einfaches-netzwerk.at/CertEnroll/<CaName><CRLNameSuffix>.crl
    ldap:///CN=<CATruncatedName><CRLNameSuffix>,CN=<ServerShortName>,CN=CDP,CN=Public Key Services,CN=Services,<ConfigurationContainer><CDPObjectClass>

    ORCA1-016 ORCA1-017 ORCA1-018

  6. Select extension: AIA
  7. Wie folgt konfigurieren:
    C:\Windows\system32\CertSrv\CertEnroll\<ServerDNSName>_<CaName><CertificateName>.crt
    ldap:///CN=<CATruncatedName>,CN=AIA,CN=Public Key Services,CN=Services,<ConfigurationContainer><CAObjectClass>
    http://pki.intern.einfaches-netzwerk.at/CertEnroll/<ServerDNSName>_<CaName><CertificateName>.crt

    ORCA1-027 ORCA1-028 ORCA1-029

Konfigurationspartition von Active Directory und Gültigkeitsdauer der CRL und den Zertifikaten konfigurieren

Die CA muss so konfiguriert werden, dass die Konfigurationspartition von Active Directory zum Speichern der CDP und AIA-Informationen verwendet wird. Weil der DistiguishedName (DN) der CDP und AIA-Container den Root-Forest-Namen der CA enthalten, muss dieser in der Registry mittels certutil zur Verfügung gestellt werden – ORCA1 ist ja kein Domänenmitglied. Im Anschluss konfiguriere ich die Gültigkeitsdauer der CRL und die der ausgestellten Zertifikate.

  1. Command Prompt (Admin) starten
  2. Mit folgendem Befehl die Konfigurationspartition von Active Directory konfigurieren
    certutil.exe -setreg CA\DSConfigDN "CN=Configuration,DC=intern,DC=einfaches-netzwerk,DC=at"
  3. Mit folgenden Befehlen die Gültigkeitsdauer der CRL und den Zertifikaten konfigurieren
    certutil.exe -setreg CA\CRLPeriodUnits 52
    certutil.exe -setreg CA\CRLPeriod "Weeks"
    certutil.exe -setreg CA\CRLOverlapPeriodUnits 12
    certutil.exe -setreg CA\CRLOverlapPeriod "Hours"
    certutil.exe -setreg CA\ValidityPeriodUnits 10 
    certutil.exe -setreg CA\ValidityPeriod "Years"

    ORCA1-022

  4. Mit folgenden Befehlen den CertSvc neu starten und die CRL erstellen
    net stop certsvc && net start certsvc
    certutil.exe -CRL
  5. Alle Dateien von C:\Windows\System32\CertSrv\CertEnroll\ nach DC1 und APP1 > C:\Temp kopieren
    ORCA1-023

Das Root CA-Zertifikat und die CRL in Active Directory veröffentlichen

Der Befehl speichert das Root CA-Zertifikat in der Konfigurationspartition von Active Directory. Das erlaubt den Domänen-Computern diesem Zertifikat automatisch zu vertrauen, ohne weitere Konfiguration mittels Gruppenrichtlinien.

  1. Als Administrator an DC1 anmelden
  2. Command Prompt (Admin) starten
  3. Mit folgendem Befehl das Root CA-Zertifikat  und CRL in AD veröffentlichen
    certutil -f -dspublish "C:\Temp\ORCA1_Einfaches-Netzwerk Root CA.crt" RootCA
    certutil -f -dspublish "C:\Temp\Einfaches-Netzwerk Root CA.crl" ORCA1
  4. Die Konfigurationspartition von Active Directory
    ORCA1-025

Weiter gehts mit der SubCA auf APP1 im nächsten Teil.