SSH Authentication with FIDO2

Compatible Nitrokeys

3A/C/Mini

Passkey

HSM 2

Pro 2

FIDO2

Storage 2

Start

U2F

active

active

inactive

inactive

active

inactive

inactive

inactive

SSH (Secure Shell) on verkkoprotokolla, jota käytetään etäjärjestelmien, kuten palvelimien tai koodivarastojen (esim. GitLab, GitHub), turvalliseen käyttöön ja hallintaan. Se käyttää kryptografisia avainpareja todennukseen, mikä mahdollistaa salasanattoman kirjautumisen vahvalla turvallisuudella. Nitrokeyllä yksityinen SSH-avain luodaan ja tallennetaan suoraan laitteeseen, joten se ei koskaan poistu laitteistosta. Jokainen kirjautuminen edellyttää Nitrokey-avainten koskettamista, mikä lisää yksinkertaisen fyysisen vahvistuksen, joka suojaa luvattomalta käytöltä.

Generating SSH Key

  1. Insert the Nitrokey into your computer.

  2. Avaa terminaali ja luo SSH-avaimesi. Korvaa "your_comment" tunnisteella, jolla voit tunnistaa sen (esim. ”Nitrokey GitLab”). Oletusarvoisesti avain on ei-paikallinen avain, eli paikallinen avainkahva tallennetaan osoitteeseen ~/.ssh/, kun taas yksityinen avain pysyy turvallisesti Nitrokey-avaimessa. Käytä -O resident -vaihtoehtoa, jos haluat avaimen olevan siirrettävissä eri järjestelmiin.

    ssh-keygen -t ed25519-sk -C "your_comment"
    

    tai luoda residenttiavain

    ssh-keygen -t ed25519-sk -O resident -C "your_comment"
    

    Muista

    Residenssiavaimet voidaan myöhemmin luetteloida ja tuoda toiseen järjestelmään:

    ssh-keygen -K
    
  3. Avainta luotaessa sinua saatetaan myös pyytää asettamaan salasana. Tämä tunnuslause salaa paikallisen avainkahvan, joka on tallennettu osoitteeseen ~/.ssh/ (ei Nitrokey-avaimen yksityistä avainta, joka pysyy aina turvallisesti laitteen sisällä). Tunnuslause on eri kuin FIDO2-laitteen PIN-koodi. PIN-koodi suojaa itse fyysisen avaimen, kun taas tunnuslause suojaa paikallisen SSH-avaimen julkisen avaintiedoston. Suosittelemme käyttämään salasanaa vain muiden kuin kotimaisten avainten suojaamiseen.

  4. Kun sinua pyydetään antamaan tiedostopolku, voit hyväksyä oletusvaihtoehdon (~/.ssh/id_ed25519_sk) tai valita mukautetun nimen, kuten id_ed25519_sk_gitlab.

  5. Jos Nitrokey vilkkuu, vahvista toiminto koskettamalla sitä.

Lopulta luodaan seuraavat tiedostot. Tiedostojen nimet voivat poiketa toisistaan, jos olet määrittänyt mukautetun nimen avainta luodessasi.

~/.ssh/id_ed25519_sk → yksityisen avaimen kahva (tallennettu turvallisesti Nitrokey-avaimeen).

~/.ssh/id_ed25519_sk.pub → julkisen avaimen tiedosto

img0

Adding Your Public Key

Kun SSH-avainpari on luotu, julkinen avain on lisättävä palveluun tai palvelimeen, jota haluat käyttää.

  1. Display your public key:

    cat ~/.ssh/id_ed25519_sk.pub
    

    Esimerkkitulostus (älä käytä tätä näppäintä):

    sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG7wZW4zc2guY29tAAAAILeZl6r07HV4i1rK07OfLqD3J4IzX2q0lB6Ok0pdxoG5AAAABHNzaDo= your_comment
    
  2. Kopioi tulos ja lisää se tilisi SSH-avainasetuksiin. Katso yksityiskohtaiset vaiheet kohdasta GitLab <https://docs.gitlab.com/user/ssh/#add-an-ssh-key-to-your-gitlab-account> tai GitHub <https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account>. Jos haluat ottaa SSH-etäpalvelimen käyttöön, lisää julkinen avaimesi SSH-palvelimen käyttäjätilisi tiedostoon ~/.ssh/authorized_keys.