OpenSSH sudah mempunyai sokongan awal untuk pengesahan dua faktor

A2F OpenSSH

OpenSSH sekumpulan aplikasi yang membolehkan komunikasi disulitkan melalui rangkaian, menggunakan protokol SSH telah menambahkan sokongan eksperimen untuk pengesahan dua faktor ke pangkalan kodnya, menggunakan peranti yang menyokong protokol U2F yang dikembangkan oleh pakatan FIDO.

Bagi mereka yang tidak tahu U2F, mereka harus tahu itu, ini adalah standard terbuka untuk membuat token keselamatan perkakasan kos rendah. Ini adalah kaedah paling mudah bagi pengguna untuk mendapatkan pasangan kunci yang disokong perkakasan dan terdapat sebilangan besar pengeluar yang menjualnya, termasuks Yubico, Feitian, Thetis, dan Kensington.

Kunci yang disokong perkakasan menawarkan kelebihan menjadi lebih sukar untuk dicuri: penyerang pada umumnya harus mencuri token fizikal (atau sekurang-kurangnya akses berterusan) untuk mencuri kunci tersebut.

Oleh kerana terdapat beberapa cara untuk bercakap dengan peranti U2F, termasuk USB, Bluetooth, dan NFC, kami tidak mahu memuatkan OpenSSH dengan banyak kebergantungan. Sebaliknya, kami telah menyerahkan tugas untuk berkomunikasi dengan token ke perpustakaan kecil perisian tengah yang dimuat sama dengan sokongan PKCS # 11 yang ada.

OpenSSH kini mempunyai sokongan U2F / FIDO eksperimental, dengan U2F ia ditambah sebagai jenis kunci baru sk-ecdsa-sha2-nistp256@openssh.com atau «ecdsa-sk"Singkatnya (" sk "bermaksud" kunci keselamatan ").

Prosedur untuk berinteraksi dengan token telah dipindahkan ke perpustakaan perantaraan, yang dimuat secara analogi dengan perpustakaan untuk sokongan PKCS # 11 dan merupakan pautan di perpustakaan libfido2, yang menyediakan cara untuk berkomunikasi dengan token melalui USB (FIDO U2F / CTAP 1 dan FIDO 2.0 / CTAP 2).

Perpustakaan pertengahan libsk-libfido2 disediakan oleh pembangun OpenSSH termasuk dalam kernel libfido2, serta pemacu HID untuk OpenBSD.

Untuk mendayakan U2F, bahagian baru dari pangkalan kod dari repositori OpenSSH boleh digunakan dan HEAD cawangan perpustakaan libfido2, yang sudah merangkumi lapisan yang diperlukan untuk OpenSSH. Libfido2 menyokong bekerja pada OpenBSD, Linux, macOS, dan Windows.

Kami telah menulis perisian asas untuk libfido2 Yubico yang mampu bercakap dengan mana-mana token USB HID U2F atau FIDO2 standard. Alat tengah. Sumbernya dihoskan di pohon libfido2, jadi membina dan OpenSSH HEAD sudah cukup untuk memulakan anda

Kunci awam (id_ecdsa_sk.pub) mesti disalin ke pelayan dalam fail dibenarkan_keys. Di sisi pelayan, hanya tandatangan digital yang disahkan dan interaksi dengan token dilakukan di sisi klien (libsk-libfido2 tidak perlu dipasang di pelayan, tetapi pelayan mesti menyokong jenis kunci "ecdsa-sk»).

Kunci peribadi yang dihasilkan (ecdsa_sk_id) pada dasarnya adalah penerangan utama yang membentuk kunci nyata hanya dalam kombinasi dengan urutan rahsia yang tersimpan di sisi token U2F.

Sekiranya kunci ecdsa_sk_id jatuh ke tangan penyerang, untuk pengesahan, dia juga perlu mengakses token perkakasan, tanpa kunci peribadi yang disimpan dalam fail id_ecdsa_sk tidak berguna.

Selain itu, secara lalai, apabila operasi utama dilakukan (baik semasa pembuatan dan pengesahan), pengesahan tempatan mengenai kehadiran fizikal pengguna diperlukanSebagai contoh, disarankan untuk menyentuh sensor pada token, yang menjadikannya sukar untuk melakukan serangan jarak jauh pada sistem dengan token yang disambungkan.

Pada peringkat permulaan ssh-keygen, kata laluan lain juga boleh ditetapkan untuk mengakses fail dengan kunci.

Kekunci U2F boleh ditambahkan ke ssh-agent melalui "ssh-tambah ~ / .ssh / id_ecdsa_sk", tetapi ssh-agent mesti disusun dengan sokongan utama ecdsa-sk, lapisan libsk-libfido2 mesti ada dan ejen mesti berjalan pada sistem yang dilampirkan tokennya.

Jenis kunci baru telah ditambah ecdsa-sk kerana format utama ecdsa OpenSSH berbeza dengan format U2F untuk tandatangan digital ECDSA dengan adanya bidang tambahan.

Sekiranya anda ingin mengetahui lebih lanjut mengenainya anda boleh berunding pautan berikut. 


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.