Σύνδεση στα Windows με έλεγχο ταυτότητας έξυπνης κάρτας PIV#

Αυτό το έγγραφο εξηγεί πώς να παρέχετε τη λειτουργία PIV μιας έξυπνης κάρτας σύνδεσης Nitrokey 3 για Windows χειροκίνητα με ένα κλειδί και ένα πιστοποιητικό.

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

Προειδοποίηση

Η λειτουργία PIV του Nitrokey 3 θεωρείται επί του παρόντος ασταθής και δεν είναι διαθέσιμη στις σταθερές εκδόσεις υλικολογισμικού. Για να αποκτήσετε αυτή τη λειτουργία απαιτείται η εγκατάσταση ενός δοκιμαστικού υλικολογισμικού. Μεταγενέστερες ενημερώσεις υλικολογισμικού ενδέχεται να οδηγήσουν σε απώλεια δεδομένων και κρυπτογραφικών κλειδιών. Για περισσότερες πληροφορίες ανατρέξτε στην τεκμηρίωση ενημέρωσης υλικολογισμικού ` <firmware-update.html#firmware-release-types>` __.

Προαπαιτούμενα#

  • Ένας διακομιστής Windows με:

    • Active Directory (οδηγίες)

    • Μια αρχή πιστοποιητικών (CA), με ένα πρότυπο πιστοποιητικού για έλεγχο ταυτότητας σύνδεσης με χρήση κλειδιών RSA 2048 bit:

  • Ένα μηχάνημα χρήστη των Windows συνδεδεμένο στον τομέα του διακομιστή

  • Ένα Nitrokey 3 με PIV

  • Ένα σύστημα Linux με pivy και εγκατεστημένο το PCSCD (sudo apt install pcscd), για την παροχή του Nitrokey (βήματα 1, 2 και 4). Αντί για ένα ξεχωριστό σύστημα Linux μπορείτε να εγκαταστήσετε το WSL στα Windows. Σημειώστε ότι πρέπει να συνδέσετε εικονικά το Nitrokey στο WSL και να εκκινήσετε το PCSCD (sudo service start pcscd) πριν χρησιμοποιήσετε το pivy.

1: Δημιουργήστε ένα κλειδί στο Nitrokey#

Το κλειδί δημιουργείται στην υποδοχή 9A (έλεγχος ταυτότητας).

pivy-tool -a rsa2048 generate 9A

Σημείωση

Εάν το κλειδί διαχείρισης δεν είναι το προεπιλεγμένο, μπορεί να καθοριστεί με το -A 3des -K 010203040506070801020304050607080102030405060708 . Το όρισμα στο -A μπορεί επίσης να είναι aes256, και το όρισμα στο -K είναι το κλειδί σε δεκαεξαδικό σύστημα.

Το PIN του χρήστη μπορεί επίσης να καθοριστεί με -P 123456, ή -P <value> εάν δεν είναι το προεπιλεγμένο. Εάν δεν δοθεί το -P, θα ζητηθεί μετά τη δημιουργία κλειδιού.

Αυτό ισχύει για όλες τις εντολές pivy-tool.

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

Αναμενόμενη έξοδος:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKO5ENwrK3qKBAgDkyq1tfiw5JxnoCEIiM3Vc+8Eylux04r1sgjHEyqbOvpScObZuchxFZZ5LdeHynvFn3c07K4HpoZ/7NjLzUYOmlVAy4wpEwRs9psbrT6wbvHVLyffZiiSPW15HHQKcUZZ30WDunh5m7xzvY9ej810QIW/P724MFWTbRdpqmG8m1qWCUM5dqkmpiprI/WeD+VmTcQWbJJ+oyoPyxmwzGyAotl7mVC6EYdcfvyBSNQdVdGfYGxjNEec4aWxoFRg4ADfpPnYD+gLxHcj/9s7o/wdMhXRiSio1tjsEjaeuOICGLaiiLGMfLxpfEApb8qJgsEFgYl6kn PIV_slot_9A@9E424375A38449E59B3DF89D9B90E601

2: Δημιουργία αίτησης υπογραφής πιστοποιητικού (CSR)#

Αυτό το βήμα δημιουργεί ένα πιστοποιητικό για το κλειδί στην υποδοχή ελέγχου ταυτότητας. pivy-tool -n 'Nitro Test' -u "nitro@test.nitrokey.com" -T user-auth req-cert 9A

Το όνομα χρήστη Nitro Test και η διεύθυνση ηλεκτρονικού ταχυδρομείου nitro@test.nitrokey.com πρέπει να αλλάξουν σε δικές τους τιμές.

Αναμενόμενη έξοδος:

-----BEGIN CERTIFICATE REQUEST-----
MIIC4DCCAcgCAQEwFTETMBEGA1UEAwwKTml0cm8gVGVzdDCCASIwDQYJKoZIhvcN
AQEBBQADggEPADCCAQoCggEBAMo7kQ3CsreooECAOTKrW1+LDknGegIQiIzdVz7w
TKW7HTivWyCMcTKps6+lJw5tm5yHEVlnkt14fKe8WfdzTsrgemhn/s2MvNRg6aVU
DLjCkTBGz2mxutPrBu8dUvJ99mKJI9bXkcdApxRlnfRYO6eHmbvHO9j16PzXRAhb
8/vbgwVZNtF2mqYbybWpYJQzl2qSamKmsj9Z4P5WZNxBZskn6jKg/LGbDMbICi2X
uZULoRh1x+/IFI1B1V0Z9gbGM0R5zhpbGgVGDgAN+k+dgP6AvEdyP/2zuj/B0yFd
GJKKjW2OwSNp644gIYtqKIsYx8vGl8QClvyomCwQWBiXqScCAwEAAaCBhTCBggYJ
KoZIhvcNAQkOMXUwczAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIGwDAfBgNV
HSUEGDAWBggrBgEFBQcDAgYKKwYBBAGCNxQCAjAyBgNVHREEKzApoCcGCisGAQQB
gjcUAgOgGQwXbml0cm9AdGVzdC5uaXRyb2tleS5jb20wDQYJKoZIhvcNAQELBQAD
ggEBAH6XBlBmc7dQP0mt7uXOyIu8xRSYSfxKBJGjPl0IKDHWke3/4frU5C99/KS/
b9/T4JrlZa/9letjMj8hV4a+pdE0Gpxy+Ac1a9XlMki35UESOXC0JSyirBBLnNtD
qtHKtfPeQ3Csbsj57qjdqBMlWII5cz3jO9EpEG2FgxreJwY5s58KuKit01AJDIWt
GYg9P7MblEEO8iPjcFqccsPTRgU04COT6dOFZ8bGZ18UsnAVMXPOdcR7cppp8mL+
QZCyqdk1m+91rtkJPkqVUK/0o8MJj5k3Ch4ANvQEWnOabRumJaHDu4PmhsqLnQJA
eGQvuPRBmR71GRkGmqu+e1oyze8=
-----END CERTIFICATE REQUEST-----

Αντιγράψτε την αίτηση υπογραφής πιστοποιητικού σε ένα αρχείο request.csr

3: Υπογράψτε την ΕΚΕ#

Μετακινήστε το αρχείο request.csr από το προηγούμενο βήμα στο διακομιστή που φιλοξενεί την αρχή πιστοποιητικών. Βεβαιωθείτε στην κονσόλα προτύπων πιστοποιητικών (certtmpl.msc ) ότι το πρότυπο για τους χρήστες μπορεί να δεχτεί ονόματα θεμάτων από την αίτηση:

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

Ανοίξτε το PowerShell και υπογράψτε την αίτηση υπογραφής πιστοποιητικού με τη διεύθυνση certreq.exe -attrib CertificateTemplate:Nitrotest -submit request.csr

Αυτό θα ανοίξει ένα GUI όπου μπορείτε να επιλέξετε τη σωστή Αρχή πιστοποιητικών, εάν υπάρχουν πολλές σε αυτόν τον διακομιστή. Αποθηκεύστε το πιστοποιητικό ως certificate.crt

4: Αποθηκεύστε το πιστοποιητικό στο Nitrokey#

cat certificate.der | pivy-tool write-cert 9A

5: Εισαγωγή του πιστοποιητικού στο λογαριασμό χρήστη#

Μετακινήστε το certificate.der στη συσκευή Windows του χρήστη και ανοίξτε τον διαχειριστή πιστοποιητικών (Για τον χρήστη, όχι για το μηχάνημα):

Ανοίξτε τον "πίνακα ελέγχου διαχείρισης πιστοποιητικών χρηστών"

Εισάγετε το πιστοποιητικό:

Στις ενέργειες, όλες οι εργασίες, μπορείτε να βρείτε την ενέργεια εισαγωγής

Μόλις γίνει αυτό, αποσυνδεθείτε. Συνδεθείτε με το κλειδί Nitrokey χρησιμοποιώντας τις «επιλογές σύνδεσης».