Prijava v sistem Windows z avtentikacijo s pametno kartico PIV#

Ta dokument pojasnjuje, kako ročno zagotoviti funkcijo PIV prijave s pametno kartico Nitrokey 3 for Windows s ključem in potrdilom.

V prihodnosti bo to ročno zagotavljanje mogoče avtomatizirati z mini gonilnikom Windows.

Predpogoji#

  • Strežnik Windows z:

    • Aktivni imenik (navodila)

    • Organ za izdajo potrdil (CA) s predlogo potrdila za preverjanje pristnosti prijave z uporabo 2048-bitnih ključev RSA:

  • Uporabniški računalnik s sistemom Windows, ki je vključen v domeno strežnika.

  • Nitrokey 3 s PIV

  • Sistem Linux z nameščenim pivy in PCSCD (sudo apt install pcscd), da zagotovite Nitrokey (korak 1, 2 in 4). Namesto ločenega sistema Linux lahko namestite WSL v sistem Windows. Upoštevajte, da morate pred uporabo pivy praktično priključiti ključ Nitrokey na WSL in zagnati PCSCD (sudo service start pcscd).

1: Ustvarite ključ v napravi Nitrokey#

Ključ se ustvari v reži 9A (preverjanje pristnosti).

pivy-tool generate 9A -a rsa2048

Opomba

Če skrbniški ključ ni privzeti, ga lahko določite s -A 3des -K 010203040506070801020304050607080102030405060708 . Argument za -A je lahko tudi aes256, argument za -K pa je ključ v šestnajstiški obliki.

Uporabniški PIN lahko določite tudi z -P 123456 ali -P <value>, če ni privzet. Če -P ni naveden, bo po generiranju ključa zahtevan.

To velja za vse ukaze pivy-tool.

Ta korak lahko pri ključih RSA traja nekaj minut, saj je programska izvedba počasna.

Pričakovani rezultat:

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

2: Ustvarite zahtevo za podpis potrdila (CSR)#

V tem koraku se ustvari potrdilo za ključ v reži za preverjanje pristnosti. pivy-tool req-cert 9A -n 'Nitro Test' -u "nitro@test.nitrokey.com" -T user-auth

Uporabniško ime Nitro Test in e-poštni naslov nitro@test.nitrokey.com je treba spremeniti v lastne vrednosti.

Pričakovani rezultat:

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

Zahtevo za podpis potrdila kopirajte v datoteko request.csr

3: Podpišite CSR#

Datoteko request.csr iz prejšnjega koraka prenesite v strežnik, ki gosti overitelja potrdil. V konzoli za predloge potrdil (certtmpl.msc ) preverite, ali lahko predloga za uporabnike sprejme imena predmetov iz zahteve:

V konzoli za predloge potrdil v parametru za predlogo potrdila za preverjanje pristnosti v zavihku "ime predmeta" preklopite možnost "oskrba v zahtevi".

Odprite program PowerShell in podpišite zahtevo za podpis potrdila s certreq.exe -attrib CertificateTemplate:Nitrotest -submit request.csr

Odpre se grafični uporabniški vmesnik, v katerem lahko izberete pravilen organ za potrjevanje, če jih je v tem strežniku več. Potrdilo shranite kot certificate.crt

4: Shranjevanje potrdila v ključu Nitrokey#

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

5: Uvoz potrdila v uporabniški račun#

Premaknite certificate.der v uporabnikovo napravo Windows in odprite upravitelja potrdil (Za uporabnika, ne za napravo):

Odprite nadzorno ploščo "Upravljanje uporabniškega potrdila".

Uvozite potrdilo:

V akcijah, vsa opravila, lahko najdete akcijo uvoza

Ko to storite, se odjavite. Prijavite se s ključem Nitrokey z uporabo „možnosti prijave“.