Ang "Secure shell" SSH ay isang network protocol para sa pagtatatag ng isang secure na koneksyon sa pagitan ng mga host, karaniwang sa port 22 (na mas mahusay na baguhin). Ang mga kliyente ng SSH at mga server ng SSH ay magagamit para sa karamihan ng mga operating system. Halos anumang iba pang network protocol ay gumagana sa loob ng SSH, iyon ay, maaari kang magtrabaho nang malayuan sa isa pang computer, magpadala ng audio o video stream sa isang naka-encrypt na channel, atbp. Bukod sa,
Ang pagpapatotoo ay nangyayari gamit ang isang password, ngunit ang mga developer at system administrator ay tradisyonal na gumagamit ng mga SSH key. Ang problema ay ang pribadong susi ay maaaring nakawin. Ang pagdaragdag ng passphrase ay theoretically nagpoprotekta laban sa pagnanakaw ng pribadong key, ngunit sa pagsasanay, kapag nagpapasa at nag-cache ng mga key, sila
Paano ipatupad ang two-factor authentication
Na-publish kamakailan ang mga developer mula sa Honeycomb
Ipinapalagay ng mga tagubilin na mayroon kang isang partikular na pangunahing host na bukas sa Internet (bastion). Gusto mong kumonekta sa host na ito mula sa mga laptop o computer sa pamamagitan ng Internet, at i-access ang lahat ng iba pang device na nasa likod nito. Tinitiyak ng 2FA na hindi magagawa ng isang umaatake ang parehong kahit na magkaroon sila ng access sa iyong laptop, halimbawa sa pamamagitan ng pag-install ng malware.
Ang unang opsyon ay OTP
OTP - isang beses na mga digital na password, na sa kasong ito ay gagamitin para sa pagpapatunay ng SSH kasama ang susi. Isinulat ng mga developer na hindi ito isang mainam na opsyon, dahil ang isang umaatake ay maaaring magtaas ng isang pekeng balwarte, maharang ang iyong OTP at gamitin ito. Ngunit ito ay mas mahusay kaysa sa wala.
Sa kasong ito, sa panig ng server, ang mga sumusunod na linya ay nakasulat sa config ng Chef:
metadata.rb
attributes/default.rb
(mula saattributes.rb
)files/sshd
recipes/default.rb
(kopya mula sarecipe.rb
)templates/default/users.oath.erb
Ang anumang OTP application ay naka-install sa client side: Google Authenticator, Authy, Duo, Lastpass, naka-install brew install oath-toolkit
o apt install oathtool openssl
, pagkatapos ay nabuo ang isang random na base16 string (key). Ito ay na-convert sa Base32 na format na ginagamit ng mga mobile authenticator at direktang ini-import sa application.
Bilang resulta, maaari kang kumonekta sa Bastion at makita na nangangailangan ito ngayon hindi lamang ng isang passphrase, kundi pati na rin ng isang OTP code para sa pagpapatunay:
β ssh -A bastion
Enter passphrase for key '[snip]':
One-time password (OATH) for '[user]':
Welcome to Ubuntu 18.04.1 LTS...
Ang ikalawang opsyon ay hardware authentication
Sa kasong ito, hindi kinakailangang ipasok ng user ang OTP code sa bawat oras, dahil ang pangalawang salik ay nagiging hardware device o biometrics.
Narito ang pagsasaayos ng Chef ay medyo mas kumplikado, at ang pagsasaayos ng kliyente ay nakasalalay sa OS. Ngunit pagkatapos makumpleto ang lahat ng mga hakbang, ang mga kliyente sa MacOS ay maaaring kumpirmahin ang pagpapatunay sa SSH gamit ang isang passphrase at paglalagay ng isang daliri sa sensor (pangalawang kadahilanan).
Kinukumpirma ng mga may-ari ng iOS at Android ang pag-login
Sa Linux/ChromeOS mayroong isang opsyon upang gumana sa mga token ng YubiKey USB. Siyempre, maaaring nakawin ng isang attacker ang iyong token, ngunit hindi pa rin niya alam ang passphrase.
Pinagmulan: www.habr.com