Υπηρεσίες πιστοποιητικών του Active Directory των Windows (ADCS) με διαμεσολαβητή PKI

Το παρόν έγγραφο περιγράφει τη διαμόρφωση των Υπηρεσιών Πιστοποιητικών του Active Directory των Windows (ADCS) με το PKI Proxy και το NetHSM.

Prerequisits

  • NetHSM

    • Provisioned

    • Administrative access

  • PKI Proxy server

    • Η μονάδα NetHSM PKCS#11 έχει εγκατασταθεί και ρυθμιστεί ώστε να χρησιμοποιεί το NetHSM

  • Διακομιστής CA (Windows Server)

    • ADCS role installed, but not configured

    • PKI Proxy client tools installed

    • Τα εργαλεία πελάτη δεν είναι απαραίτητα εάν ο συγκεκριμένος διακομιστής εκτελεί ταυτόχρονα και τον διακομιστή PKI Proxy, καθώς αυτός περιλαμβάνει τα εργαλεία πελάτη.

    • Pynitrokey installed

Root CA Key and Certificate

Στον παρακάτω πίνακα παρατίθενται οι βασικοί αλγόριθμοι και τα μήκη κλειδιών, καθώς και οι αλγόριθμοι κατακερματισμού που μπορεί να χρησιμοποιήσει το ADCS των Windows με το 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

Σημαντικό

Παρακαλούμε να ακολουθήσετε τις βέλτιστες πρακτικές για την επιλογή ενός ασφαλούς αλγορίθμου κλειδιού, μήκους και αλγορίθμου κατακερματισμού.

Ένα κλειδί και ένα πιστοποιητικό μπορούν είτε να δημιουργηθούν εκ νέου είτε να μεταφερθούν από υπάρχοντα. Παρακαλούμε ανατρέξτε στα παρακάτω υποκεφάλαια για να μάθετε περισσότερα σχετικά με την προσέγγιση που ταιριάζει στη δική σας περίπτωση.

Generate a new Root CA Key and Certificate on Windows

Οι παρακάτω οδηγίες αφορούν τη δημιουργία ενός νέου κλειδιού και πιστοποιητικού για χρήση σε μια ρίζα CA του ** στο ADCS.

Πρακτική συμβουλή

Συνήθως είναι ευκολότερο να δημιουργήσετε ένα κλειδί και ένα πιστοποιητικό χρησιμοποιώντας τον οδηγό διαμόρφωσης του ADCS και, στη συνέχεια, να ακολουθήσετε τις οδηγίες που βρίσκονται στη διεύθυνση Μεταφορά υπάρχοντος κλειδιού και πιστοποιητικού.

Σε αυτή την περίπτωση, χρησιμοποιείται ένα πρότυπο αιτήματος για τη δημιουργία ενός κλειδιού με ρητές επεκτάσεις CA. Οι συγκεκριμένες τιμές πρέπει να προσαρμοστούν στο περιβάλλον σας.

Το πρότυπο αίτησης πρέπει να αποθηκευτεί σε ένα αρχείο με το όνομα RootCA.inf και με το ακόλουθο περιεχόμενο.

Αυτό το πρότυπο θα δημιουργήσει ένα κλειδί RSA με μήκος κλειδιού 4096 bit. Πρέπει να αντικαταστήσετε το <CA-NAME> με το όνομα της δικής σας 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

Το πιστοποιητικό έχει προστεθεί στο τοπικό αρχείο πιστοποιητικών του υπολογιστή. Εξαγάγετε το πιστοποιητικό σε αρχείο PFX, αντικαθιστώντας το <THUMBPRINT> με την αντίστοιχη τιμή από την έξοδο της προηγούμενης εντολής.

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

Η τιμή του κωδικού πρόσβασης χρησιμοποιείται για την κρυπτογράφηση του αρχείου PKCS#12 (αρχείο PFX). Μπορείτε να συνεχίσετε με το κεφάλαιο « » (Διαμόρφωση NetHSM).

Migrate existing Key and Certificate

Για τη μετεγκατάσταση ενός υπάρχοντος κλειδιού και πιστοποιητικού, αυτά πρέπει να εξαχθούν από το αρχείο πιστοποιητικών του ADCS και το αρχείο που θα προκύψει να εισαχθεί στο NetHSM.

Σημαντικό

Πριν προχωρήσετε σε αλλαγές σε μια αρχή έκδοσης πιστοποιητικών παραγωγής, συνιστάται να δημιουργήσετε ένα αντίγραφο ασφαλείας της. Για περισσότερες πληροφορίες, ανατρέξτε στη σελίδα αυτή.

  1. Ανοίξτε τη διεύθυνση certlm.msc.

  2. Μεταβείτε στη διεύθυνση Πιστοποιητικά - Τοπικός υπολογιστής → Προσωπικά → Πιστοποιητικά.

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

  4. Στη γραμμή μενού στην κορυφή, μεταβείτε στο « » (Ενέργεια) → «All Tasks» (Όλες οι εργασίες) → «Export…» (Εξαγωγή…). Με αυτόν τον τρόπο θα ξεκινήσει ο Οδηγός εξαγωγής πιστοποιητικών του ** .

  5. Confirm the introduction of the assistant with Next.

  6. Επιλέξτε το κουμπί επιλογής δίπλα στο « » (Ναι, εξαγωγή του ιδιωτικού κλειδιού) και επιβεβαιώστε με το « » (Ναι, εξαγωγή του ιδιωτικού κλειδιού). Εάν το κουμπί επιλογής δεν είναι διαθέσιμο, το κλειδί έχει επισημανθεί ως μη εξαγώγιμο. Σε αυτή την περίπτωση, ο παρών οδηγός δεν ισχύει για την προβλεπόμενη χρήση.

  7. Εάν είναι δυνατόν, συμπεριλάβετε όλα τα πιστοποιητικά στη διαδρομή πιστοποίησης

  8. Επιλέξτε το κουμπί επιλογής δίπλα στο « » (Ναι, εξαγωγή του ιδιωτικού κλειδιού) και επιβεβαιώστε με το « » (Ναι, εξαγωγή του ιδιωτικού κλειδιού) Στη συνέχεια,.

  9. Επιλέξτε το κουμπί επιλογής δίπλα στην επιλογή « » (Ανταλλαγή προσωπικών πληροφοριών - PKCS #12 (.PFX)). Βεβαιωθείτε ότι έχετε επιλέξει τις ακόλουθες επιλογές:

    • Εάν είναι δυνατόν, συμπεριλάβετε όλα τα πιστοποιητικά στη διαδρομή πιστοποίησης

    • Εξαγωγή όλων των εκτεταμένων ιδιοτήτων

    • Enable certificate privacy

    Confirm the selection with Next.

  10. Επιλέξτε το κουμπί επιλογής δίπλα στο « » (Κωδικός πρόσβασης). Εισάγετε έναν κωδικό πρόσβασης στα πεδία κειμένου για τον κωδικό πρόσβασης. Από το αναπτυσσόμενο μενού δίπλα στο « Encryption» (Κρυπτογράφηση), επιλέξτε « » (Κρυπτογράφηση) AES256-SHA256.

    Σημαντικό

    Η μέθοδος κρυπτογράφησης AES256-SHA256 υποστηρίζεται μόνο από τα Windows Server 2019 και τα Windows 11. Για χρήση σε παλαιότερες εκδόσεις, διατηρήστε την προεπιλεγμένη TripleDES-SHA1.

    Confirm the selection with Next.

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

    Σημαντικό

    Το κλειδί και το πιστοποιητικό που εξάγονται πρέπει να φυλάσσονται σε ασφαλές μέρος, στο οποίο έχουν πρόσβαση μόνο εξουσιοδοτημένοι χρήστες.

  12. Confirm the export with Finish.

  13. Βεβαιωθείτε ότι το πιστοποιητικό εξακολουθεί να είναι επιλεγμένο στη λίστα στα δεξιά.

  14. Στη γραμμή μενού στην κορυφή, μεταβείτε στο « » (Ενέργειες) → «All Tasks» (Όλες οι εργασίες) → «Delete» (Διαγραφή). Επιβεβαιώστε τη διαγραφή του ιδιωτικού κλειδιού και του πιστοποιητικού επιλέγοντας « » (Ναι).

Μπορείτε να συνεχίσετε με το κεφάλαιο Διαμόρφωση NetHSM.

NetHSM Configuration

Το κλειδί και το πιστοποιητικό από το προηγούμενο κεφάλαιο πρέπει να εισαχθούν στο NetHSM. Με την εντολή ` νιτροπία <../software/nitropy/index.html>`__ μπορούμε να εισαγάγουμε το αρχείο PKCS#12 απευθείας στο NetHSM.

Εισαγάγετε το αρχείο PKCS#12 ως εξής, αντικαθιστώντας τις διευθύνσεις <KEY-ID>, <MECHANISM> και <PKCS12-ARCHIVE> με τις αντίστοιχες τιμές.

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

Για τα κλειδιά RSA, ο μηχανισμός πρέπει να είναι rsa_signature_pkcs1, ενώ για τα κλειδιά ECDSA, ecdsa_signature.

Τώρα μπορείτε να βεβαιωθείτε ότι το πιστοποιητικό είναι διαθέσιμο στο NetHSM.

nitropy nethsm list-keys

Το κλειδί θα εμφανιστεί με το αναγνωριστικό κλειδιού που δόθηκε στην προηγούμενη εντολή.

PKI Proxy Server Configuration

Στον διακομιστή μεσολάβησης PKI, πρέπει να κοινοποιήσετε το πιστοποιητικό που μόλις προσθέσατε από το NetHSM. Ακολουθήστε τα βήματα που περιγράφονται στο άρθρο « : Δημοσίευση πιστοποιητικών από το NetHSM» για περισσότερες πληροφορίες.

Windows ADCS Configuration

PKI Proxy Client Tools Configuration

Στη συνέχεια, διαθέτουμε το κλειδί και το πιστοποιητικό στο τοπικό αποθετήριο πιστοποιητικών του υπολογιστή των Windows.

  1. Open the PKI Proxy Certificate Manager.

  2. Click the Add… button.

  3. Συμπληρώστε τα υποχρεωτικά πεδία.

    • Διεύθυνση, π.χ., https://localhost:9266

    • Αυθεντικοποίηση

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

Τώρα μπορείτε να βεβαιωθείτε ότι το πιστοποιητικό βρίσκεται στο τοπικό αποθετήριο πιστοποιητικών του υπολογιστή.

  1. Ανοίξτε το παράθυρο διαλόγου « » (Εκτέλεση), είτε κάνοντας δεξί κλικ στο μενού «Start» (Έναρξη) των Windows **** και επιλέγοντας «Run» (Εκτέλεση) **** είτε πατώντας το πλήκτρο Windows + R **** στο πληκτρολόγιό σας.

  2. Στο παράθυρο διαλόγου « » (Εκτέλεση), πληκτρολογήστε certlm.msc και επιβεβαιώστε πατώντας το πλήκτρο Πληκτρολογήστε στο πληκτρολόγιό σας ή κάντε κλικ στο κουμπί OK.

  3. Στον διαχειριστή πιστοποιητικών που εμφανίζεται, περιηγηθείτε στη δομή δέντρου στα αριστερά και μεταβείτε στην επιλογή « » (Πιστοποιητικά) - «Local Computer» (Τοπικός υπολογιστής) → «Personal» (Προσωπικά) → «Certificates» (Πιστοποιητικά).

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

Windows ADCS Configuration

  1. Ανοίξτε το «Διαχειριστή διακομιστή» ( ) από το μενού «Έναρξη» (Start) **** ή πατώντας το πλήκτρο Windows + R στο πληκτρολόγιό σας και πληκτρολογήστε ServerManager.exe.

  2. Στη γραμμή μενού πάνω δεξιά, κάντε κλικ στο εικονίδιο με τη σημαία και επιλέξτε « » (Διαμόρφωση υπηρεσιών πιστοποιητικών Active Directory) στον διακομιστή προορισμού από τις ειδοποιήσεις μετά την εγκατάσταση. Με αυτόν τον τρόπο θα ξεκινήσει ο οδηγός διαμόρφωσης AD CS ** .

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

    • Role Services

      Check the radio button next to Certification Authority.

    • Setup Type

      Επιλέξτε το (Enterprise CA) ή το (Standalone CA), ανάλογα με το περιβάλλον σας.

    • CA Type

      Επιλέξτε την κεντρική αρχή πιστοποίησης (Root CA) « »

    • Private Key

      Επιλέξτε το κουμπί επιλογής δίπλα στην επιλογή « » (Χρήση υπάρχοντος ιδιωτικού κλειδιού). Σε αυτήν την επιλογή, επιλέξτε το κουμπί επιλογής δίπλα στην επιλογή « » (Επιλογή πιστοποιητικού και χρήση των σχετικών ιδιωτικών κλειδιών).

      • Existing Certificate

        Στη λίστα των πιστοποιητικών του διακομιστή διαχείρισης πιστοποιητικών ( ), επιλέξτε το πιστοποιητικό που θέλετε να χρησιμοποιήσετε. Βεβαιωθείτε ότι το πλαίσιο ελέγχου δίπλα στην επιλογή « » (Να επιτρέπεται η αλληλεπίδραση του διαχειριστή όταν η Αρχή Πιστοποίησης (CA) έχει πρόσβαση στο ιδιωτικό κλειδί) δεν είναι ενεργοποιημένο. Αυτό δεν είναι απαραίτητο, καθώς το PKI Proxy KSP δεν απαιτεί καμία επιπλέον πιστοποίηση για τη χρήση του ιδιωτικού κλειδιού.

  4. Αφού ολοκληρωθεί ο οδηγός διαμόρφωσης, ανοίξτε την Αρχή Πιστοποίησης « » από το μενού «Έναρξη» του **** ή πατώντας το πλήκτρο Windows + R **** στο πληκτρολόγιό σας και πληκτρολογώντας certsrv.msc. Μπορείτε να βεβαιωθείτε ότι η υπηρεσία της Αρχής Πιστοποίησης ξεκίνησε σωστά όταν δείτε μια πράσινη κουκκίδα με ένα λευκό εικονίδιο τσεκ στο όνομα της Αρχής Πιστοποίησης.

Σημαντικό

Η διαθεσιμότητα της αρχής πιστοποίησης εξαρτάται από τη διαθεσιμότητα του ιδιωτικού κλειδιού και του πιστοποιητικού. Εάν αυτά δεν είναι διαθέσιμα, η υπηρεσία της αρχής πιστοποίησης ενδέχεται να μην ξεκινήσει ή να διακοπεί απροσδόκητα. Σε περίπτωση σφάλματος, ελέγξτε το αρχείο καταγραφής συμβάντων των Windows « » ( ) για περισσότερες πληροφορίες.