nitrokey, luks levykrypto ja pkcs11 sertit

Liittynyt
31.07.2017
Viestejä
1 744
Terve
Yritämpä saada nitrokeytä toimimaan luksin kanssa yhteen, eli ideana olisi että kun avaimen kytkisi koneeseen levyn salauksen purkukehoitteen tullessa näkyviin bootissa, nitrokeyn tökkäämällä ja käyttäjän pinkoodin antamalla salaus purettaisiin, löysinkin tähän jo ihan hyvät ohjeet, mutta tuota certifikaattien luontia en ole saanut toimimaan, missään ei tuon pkcs11 softan käyttöön löydy mitään ohjeistusta, ilmeisesti masiinaan pitäisi jotenkin kirjautua ennen sertien luomista, koska ohjeilla mitä koetin, nitrokey ei hyväksy käyttäjän pinkoodia, vaikka se on täysin oikein. Tällä ohjeella lähdin siis säätämään, mutta miten nuo certit luodaan
 
Hmm, siis sait jotkut certit luotua mutta se ei avaa levyä? Tuolla ohjeella et saakaan root osiota auki bootissa koska cypttabia ei lueta bootissa. Jos käytät initramfs generaattorina mkinitcpio systemdillä niin kopioi /etc/crypttab tiedosto nimelle /etc/crypttab.initramfs ja sen jälkeen luo initramfs uusiksi niin ainakin systemd tajuaa oikein bootissa lukea levyä.
 
Hmm, siis sait jotkut certit luotua mutta se ei avaa levyä? Tuolla ohjeella et saakaan root osiota auki bootissa koska cypttabia ei lueta bootissa. Jos käytät initramfs generaattorina mkinitcpio systemdillä niin kopioi /etc/crypttab tiedosto nimelle /etc/crypttab.initramfs ja sen jälkeen luo initramfs uusiksi niin ainakin systemd tajuaa oikein bootissa lukea levyä.
En ole saanut siis vielä mitään certejä luotua, vaan tässä juuri kyselen miten luonti tapahtuu ja miten certit saisi siirrettyä nitrokeyhyn, ilmeisesti se tehdään tuon pkcs11 kautta, jonka konffi vaikuttaa sekavalta.
 
Okei sitten en osaa paljoa auttaa, olen tehnyt vain luks2 avauksen bootissa tpm2 sirulla. Nopeasti kun vilkaisin tuota ohjetta niin näytti että siinä oli käytetty yubikeytä en tiedä toimiiko sama prosessi certtien luontiin nitrokeyllä. Toisaalta jossain kohtaa mainittiin nitrokey olevan fido2. Mutta en näistä tiedä tosiaan.
 
Okei sitten en osaa paljoa auttaa, olen tehnyt vain luks2 avauksen bootissa tpm2 sirulla. Nopeasti kun vilkaisin tuota ohjetta niin näytti että siinä oli käytetty yubikeytä en tiedä toimiiko sama prosessi certtien luontiin nitrokeyllä. Toisaalta jossain kohtaa mainittiin nitrokey olevan fido2. Mutta en näistä tiedä tosiaan.
Ok, itselleni jäi käsitys, että nitrokey ei olisi fido2, mutta voin toki olla väärässä, ainakin tuo systemd-encryptenroll fido2 scripti ilmoittaa, että fido2 laitteita ei löydy. Jos crypttabia ei lueta bootissa oletuksena mistä initramfs saa tiedon, että levy on kryptattu ja osaa avata sen salasanan antamisen jälkeen.
 
Ok, itselleni jäi käsitys, että nitrokey ei olisi fido2, mutta voin toki olla väärässä, ainakin tuo systemd-encryptenroll fido2 scripti ilmoittaa, että fido2 laitteita ei löydy. Jos crypttabia ei lueta bootissa oletuksena mistä initramfs saa tiedon, että levy on kryptattu ja osaa avata sen salasanan antamisen jälkeen.
Okei ei se sitten varmaankaan fido ole. Cryptattu root osio määritetään kernel parametreissä bootloaderista riippuen miten, esim. systemd-bootilla /boot/efi/loader/entries/*.conf. UEFI initramfs luodessa kernel parametrit luetaan /etc/kernel/cmdline tiedostosta. Toiset initramfs generaattorit kuten mkinitcpio osaa leipoa sen mukaan ilmankin kernel parametrejä esim. tuolla että cypttabista on kopio cypttab.initramfs nimellä.
 
Boottiloaderina on perus debianin grub, pitääkö tällöin tehdä jotain lisämäärityksiä, vai osaako grub lukea kryptausparametrit suoraan tiedostosta /etc/crypttab.initramfs initramfsin uudelleenluomisen jälkeen.
 
Grub osaa avata vain luks1 levyjä bootissa eli pitäisi vaihtaa bootloaderia esim. systemd-boot jos meinaa luks2 käyttää, ja fido pkcs ja tpm avaukset käsittääkseni toimii vain luks2 kanssa. Ja grubin ei tarvi lukea tuota tiedostoa vaan mkinitcpio jolloin cryptausparametrit on leivottu mukaan initramfs.
 
Viimeksi muokattu:
Grub osaa avata vain luks1 levyjä bootissa eli pitäisi vaihtaa bootloaderia esim. systemd-boot jos meinaa luks2 käyttää, ja fido pkcs ja tpm avaukset käsittääkseni toimii vain luks2 kanssa. Ja grubin ei tarvi lukea tuota tiedostoa vaan mkinitcpio jolloin cryptausparametrit on leivottu mukaan initramfs.
Tuo on debianissa ratkaistu siten, että boottiosio on salaamaton ja muu järjestelmä salattu, nyt yritän saada tpm:ään luksavaimia ja saan saman virheen kuin näissä viestiketjuissa cryptabin asetukset tpm2-device=auto ovat muka tuntemattomia, rtkaisuksi tarjotaan mkinitpcion vaihtaminen dracutiin
 
Yritän myös tallentaa ssh-avaimilla kirjautumisen nitrokeyn taakse tämän ohjeen mukaan, mutta pakettia gpgkey2ssh, jolla avaimet siirrettäisiin authorized_keys tiedostoon ei löydy, käytössä siis debian.
Varmaan ensimmäinen hakutulos hakusanalla gpgkey2ssh: gpgkey2ssh has gone, --export-ssh-key is here. eli tuo gpgkey2ssh on vanhentunut työkalu eli ilmeisesti tuo ohjeesikin on osittain melko vanhaa tekoa.
 
Tuo on debianissa ratkaistu siten, että boottiosio on salaamaton ja muu järjestelmä salattu, nyt yritän saada tpm:ään luksavaimia ja saan saman virheen kuin näissä viestiketjuissa cryptabin asetukset tpm2-device=auto ovat muka tuntemattomia, rtkaisuksi tarjotaan mkinitpcion vaihtaminen dracutiin
Tpm2 varten pitää ainakin olla paketti tpm2-tss asennettuna ja varmistaisin myös että mkinitcpio.conf sisältää oikeat hookit decryptausta varten.
 
Yritän myös tallentaa ssh-avaimilla kirjautumisen nitrokeyn taakse tämän ohjeen mukaan, mutta pakettia gpgkey2ssh, jolla avaimet siirrettäisiin authorized_keys tiedostoon ei löydy, käytössä siis debian.
Tuo oli sitten hyvin yksinkertainen korjata, pgp-avaimethan on jo generoitu kortille, joten ne täytyy lisätä ssh-daemoniin ja ssh saada juttelemaan älykortin kanssa
Tämä tehdään komennolla ssh-add -s /usr/lib/x86_64/linux/gnu/pkcs11/opensc-pkcs11.so. Nyt nitrokey kysyy käyttäjän pinkoodia ja kortti on lisätty ssh-agenttiin. Tuon saman kirjaston kauttahan pystytään käyttämään nitrokeytä esim openvpn kirjautumiseen tottakai erikseen säätämällä, mutta kaikki on mahdollista, hieman soveltaen näitä ohjeita lähti toimimaan, mutta on tuo vaan loistava parannus autentikointiin.
 

Statistiikka

Viestiketjuista
261 320
Viestejä
4 535 117
Jäsenet
74 789
Uusin jäsen
anykanen

Hinta.fi

Back
Ylös Bottom