Kako zaščititi SSH z dvofaktno avtentikacijo Google Authenticatorja
Želite zavarovati vaš strežnik SSH s preprostim preverjanjem pristnosti z dvema faktorjema? Google zagotavlja potrebno programsko opremo za integracijo sistema Google Authenticatorja s časovnim enkratnim geslom (TOTP) s strežnikom SSH. Ko se povežete, boste morali vnesti kodo iz telefona.
Google Authenticator Google ne »pokliče domov« - vse delo poteka na strežniku SSH in telefonu. Pravzaprav je Google Authenticator popolnoma odprtokoden, tako da lahko celo njegovo izvorno kodo pregledate sami.
Namestite Google Authenticator
Za izvedbo večfaktorskega preverjanja pristnosti z Google Authenticatorjem potrebujemo modul PAM za Google Authenticator odprte kode. PAM je kratica za »pluggable avtentifikacijski modul« - to je način za enostavno vstavljanje različnih oblik avtentikacije v sistem Linux.
Skladišča programske opreme Ubuntu vsebujejo enostaven za namestitev za modul PAM za Google Authenticator. Če vaša distribucija v Linuxu ne vsebuje paketa za to, jo boste morali prenesti s strani Google Prenosov Authenticatorja v Google Code in jo sami sestaviti..
Če želite namestiti paket v Ubuntu, zaženite ta ukaz:
sudo apt-get install libpam-google-authenticator
(To bo namestilo samo modul PAM v našem sistemu - ročno ga bomo morali aktivirati za prijave SSH.)
Ustvarite ključ za preverjanje pristnosti
Prijavite se kot uporabnik, s katerim se boste prijavili na daljavo in zagnali google-authenticator ukaz za ustvarjanje tajnega ključa za tega uporabnika.
Ukazu dovolite, da posodobite datoteko Google Authenticator tako, da vnesete y. Nato boste dobili več vprašanj, ki vam bodo omogočila, da omejite uporabo istega začasnega varnostnega žetona, povečate časovno okno, za katerega se lahko uporabljajo žetoni, in omejite dovoljeni dostop, ki bo oviral poskuse brutalnega krekinga. Te izbire vse trgovajo z varnostjo za preprosto uporabo.
Google Authenticator vam bo predstavil tajni ključ in več »kod za nujne zapise«. Zapišite si kodo za nujne skripte, ki je na varnem mestu - uporabite jo lahko samo enkrat in so namenjeni uporabi, če izgubite telefon.
Vnesite skrivni ključ v aplikaciji Google Authenticator v telefonu (uradne aplikacije so na voljo za Android, iOS in Blackberry). Uporabite lahko tudi funkcijo črtne kode za skeniranje - pojdite na URL, ki se nahaja na vrhu izhoda ukaza in lahko s kamero telefona skenirate QR kodo..
Na telefonu boste imeli stalno spreminjajočo se kodo za preverjanje.
Če se želite oddaljeno prijaviti kot več uporabnikov, zaženite ta ukaz za vsakega uporabnika. Vsak uporabnik bo imel svoj skrivni ključ in lastne kode.
Aktivirajte Google Authenticator
Nato boste morali zahtevati potrdilo Google Authenticator za prijavo SSH. To storite tako, da odprete /etc/pam.d/sshd datoteko na vašem sistemu (na primer z sudo nano /etc/pam.d/sshd in dodajte naslednjo vrstico v datoteko:
auth je potrebno pam_google_authenticator.so
Nato odprite / etc / ssh / sshd_config poiščite datoteko ChallengeResponseAuthentication in ga spremenite tako, da se glasi:
ChallengeResponseAuthentication da
(Če ChallengeResponseAuthentication vrstica še ne obstaja, dodajte zgornjo vrstico v datoteko.)
Nazadnje znova zaženite strežnik SSH, tako da bodo spremembe začele veljati:
sudo storitev ssh ponovni zagon
Ko se boste prijavili prek SSH, boste morali vnesti geslo in kodo Google Authenticator.