Prisijungimas prie „Windows“ naudojant PIV lustinės kortelės autentifikavimą#

Šiame dokumente paaiškinama, kaip rankiniu būdu, naudojant raktą ir sertifikatą, užtikrinti „Nitrokey 3 for Windows“ išmaniosios kortelės prisijungimo prie sistemos PIV funkciją.

Ateityje šis rankinis aprūpinimas gali būti automatizuotas naudojant „Windows MiniDriver“.

Įspėjimas

Šiuo metu „Nitrokey 3“ PIV funkcija laikoma nestabilia ir stabiliose programinės įrangos versijose jos nėra. Norint gauti šią funkciją, reikia įdiegti bandomąją programinę įrangą. Vėliau atnaujinus programinę įrangą gali būti prarasti duomenys ir kriptografiniai raktai. Daugiau informacijos rasite programinės įrangos atnaujinimo dokumentacijoje.

Būtinosios sąlygos#

  • „Windows“ serveris su:

    • „Active Directory“ (instrukcijos)

    • Sertifikatų institucija (CA) su sertifikato šablonu, skirtu prisijungimo autentifikavimui naudojant RSA 2048 bitų raktus:

  • „Windows“ vartotojo kompiuteris, prijungtas prie serverio domeno

  • „Nitrokey 3“ su PIV

  • „Linux“ sistema su įdiegta pivy ir PCSCD (sudo apt install pcscd), kad būtų galima įdiegti „Nitrokey“ (1, 2 ir 4 žingsnis). Vietoj atskiros „Linux“ sistemos galite įdiegti WSL „Windows“ sistemoje. Atkreipkite dėmesį, kad prieš naudodami pivy, turite virtualiai prijungti „Nitrokey“ prie WSL ir paleisti PCSCD (sudo service start pcscd).

1: sugeneruokite raktą „Nitrokey#

Raktas generuojamas 9A lizde (autentiškumo nustatymas).

pivy-tool -a rsa2048 generate 9A

Pastaba

Jei administravimo raktas nėra numatytasis, jį galima nurodyti naudojant -A 3des -K 010203040506070801020304050607080102030405060708 . Argumentas -A taip pat gali būti aes256, o argumentas -K yra raktas šešioliktaine skaičiavimo sistema.

Vartotojo PIN kodą taip pat galima nurodyti su -P 123456 arba -P <value>, jei jis nėra numatytasis. Jei -P nenurodomas, jo bus paprašyta po rakto generavimo.

Tai taikoma visoms pivy-tool komandoms.

Šis veiksmas RSA raktams gali užtrukti kelias minutes, nes grynai programinės įrangos įgyvendinimas yra lėtas.

Laukiama išvestis:

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

2: sukurkite sertifikato pasirašymo užklausą (CSR)#

Šiame etape sukuriamas autentifikavimo lizdo rakto sertifikatas. pivy-tool -n 'Nitro Test' -u "nitro@test.nitrokey.com" -T user-auth req-cert 9A

Nitro Test vartotojo vardas ir nitro@test.nitrokey.com el. pašto adresas turi būti pakeisti į savo reikšmes.

Laukiama išvestis:

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

Sertifikato pasirašymo prašymo kopijavimas į failą request.csr

3: Pasirašykite CSR#

Ankstesniame žingsnyje įrašytą failą request.csr perkelkite į serverį, kuriame yra sertifikatų institucija. Sertifikatų šablonų konsolėje (certtmpl.msc ) patikrinkite, ar naudotojų šablonas gali priimti subjekto vardus iš užklausos:

Sertifikato šablono konsolėje, autentifikavimo sertifikato šablono parametro skirtuke "subject name" (subjekto pavadinimas) perjunkite "supply in request" (pateikti užklausoje).

Atidarykite „PowerShell“ ir pasirašykite sertifikato pasirašymo užklausą naudodami certreq.exe -attrib CertificateTemplate:Nitrotest -submit request.csr

Bus atidaryta grafinė vartotojo sąsaja, kurioje galėsite pasirinkti tinkamą sertifikatų tarnybą, jei šiame serveryje yra kelios. Išsaugokite sertifikatą kaip certificate.crt

4: Sertifikato saugojimas „Nitrokey#

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

5: Sertifikato importavimas į naudotojo paskyrą#

Perkelkite certificate.der į naudotojo „Windows“ įrenginį ir atidarykite sertifikatų tvarkytuvę (Naudotojui, o ne kompiuteriui):

Atidarykite "tvarkyti naudotojo sertifikato valdymo skydelį"

Importuokite sertifikatą:

Veiksmai, visos užduotys, galite rasti importo veiksmą

Tai atlikę, atsijunkite. Prisijunkite su „Nitrokey“ naudodami „Prisijungimo parinktys“.