Auténtikasi dua-faktor pikeun SSH

"Cangkang aman" SSH mangrupakeun protokol jaringan pikeun ngadegkeun sambungan aman antara host, standar leuwih port 22 (nu hadé pikeun ngarobah). Klién SSH sareng server SSH sayogi pikeun kalolobaan sistem operasi. Ampir sadaya protokol jaringan anu sanés dianggo di jero SSH, nyaéta, anjeun tiasa damel jarak jauh dina komputer anu sanés, ngirimkeun aliran audio atanapi pidéo dina saluran énkripsi, jsb. Salian ti éta, via SOCKS proxy dina host jauh Anjeun tiasa nyambung ka host séjén atas nama host jauh ieu.

Auténtikasi lumangsung maké sandi, tapi pamekar jeung administrator sistem tradisional ngagunakeun konci SSH. Masalahna nyaéta konci pribadi tiasa dipaling. Nambahkeun frasa sandi sacara téoritis ngajaga tina maling konci pribadi, tapi dina prakna, nalika diteruskeun sareng konci cache, aranjeunna masih bisa dipaké tanpa konfirmasi. Auténtikasi dua-faktor ngarengsekeun masalah ieu.

Kumaha nerapkeun auténtikasi dua-faktor

Pamekar ti Honeycomb nembe diterbitkeun parentah lengkep, kumaha carana nerapkeun infrastruktur luyu dina klien tur server.

Parentah nganggap yén anjeun gaduh host dasar tangtu kabuka ka Internét (bastion). Anjeun hoyong nyambung ka host ieu tina laptop atanapi komputer liwat Internét, sareng ngaksés sadaya alat sanés anu aya di tukangeunana. 2FA mastikeun yén panyerang henteu tiasa ngalakukeun anu sami sanaos aranjeunna nampi aksés kana laptop anjeun, contona ku cara masang malware.

Pilihan kahiji nyaéta OTP

OTP - kecap akses digital hiji-waktos, nu dina hal ieu bakal dipaké pikeun auténtikasi SSH babarengan jeung konci. Pamekar nyerat yén ieu sanés pilihan idéal, sabab panyerang tiasa ngangkat bastion palsu, nyegat OTP anjeun sareng nganggo éta. Tapi éta langkung saé tibatan nanaon.

Dina hal ieu, dina sisi server, garis di handap ieu ditulis kana konfigurasi Chef:

  • metadata.rb
  • attributes/default.rb (tina attributes.rb)
  • files/sshd
  • recipes/default.rb (salinan ti recipe.rb)
  • templates/default/users.oath.erb

Sakur aplikasi OTP dipasang di sisi klien: Google Authenticator, Authy, Duo, Lastpass, dipasang brew install oath-toolkit atawa apt install oathtool openssl, teras senar base16 acak (konci) dihasilkeun. Éta dirobih kana format Base32 anu dianggo ku authenticators mobile sareng diimpor langsung kana aplikasi.

Hasilna, anjeun tiasa nyambung ka Bastion sareng ningali yén éta ayeuna peryogi sanés ngan ukur kecap akses, tapi ogé kode OTP pikeun auténtikasi:

➜ ssh -A bastion
Enter passphrase for key '[snip]': 
One-time password (OATH) for '[user]': 
Welcome to Ubuntu 18.04.1 LTS...

Pilihan kadua nyaéta auténtikasi hardware

Dina hal ieu, pangguna henteu kedah ngalebetkeun kode OTP unggal waktos, sabab faktor kadua janten alat hardware atanapi biometrik.

Di dieu konfigurasi Chef téh saeutik leuwih pajeulit, sarta konfigurasi klien gumantung kana OS. Tapi saatos ngalengkepan sadaya léngkah, klien dina MacOS tiasa mastikeun auténtikasi dina SSH nganggo frasa sandi sareng nempatkeun ramo dina sénsor (faktor kadua).

Pamilik ios sareng Android mastikeun login ku mencét hiji tombol dina smartphone Anjeun. Ieu mangrupikeun téknologi khusus ti Krypt.co, anu langkung aman tibatan OTP.

Dina Linux/ChromeOS aya hiji pilihan pikeun digawekeun ku token USB YubiKey. Tangtosna, panyerang tiasa maok token anjeun, tapi anjeunna tetep henteu terang frasa sandi.

sumber: www.habr.com

Tambahkeun komentar