Hogyan védhetjük az SSH-t a Google Hitelesítő két tényezőjének hitelesítésével
Szeretné biztosítani az SSH-kiszolgálót egyszerűen használható két faktorú hitelesítéssel? A Google biztosítja a szükséges szoftvert a Google Authenticator időalapú egyszeri jelszava (TOTP) rendszerének integrálásához az SSH szerverrel. A csatlakozáskor meg kell adnia a kódot a telefonról.
A Google Authenticator nem „telefonál” a Google-hoz - az SSH szerveren és a telefonon minden munka megtörténik. Valójában a Google Hitelesítő teljesen nyílt forráskódú, így maga is megvizsgálhatja a forráskódját.
Telepítse a Google Hitelesítőt
A többszintű hitelesítés végrehajtásához a Google Hitelesítővel szükségünk lesz a nyílt forráskódú Google hitelesítő PAM modulra. A PAM a „pluggable authentication module” (csatlakoztatható hitelesítési modul) kifejezés - ez a módja annak, hogy a különböző hitelesítési formákat könnyen csatlakoztassa egy Linux rendszerbe.
Az Ubuntu szoftverraktárai egy könnyen telepíthető csomagot tartalmaznak a Google Authenticator PAM modulhoz. Ha a Linux disztribúciója nem tartalmaz erre vonatkozó csomagot, le kell töltenie azt a Google Hitelesítő letöltési oldaláról a Google Code-on, és magának kell fordítania.
A csomag Ubuntu telepítéséhez futtassa a következő parancsot:
sudo apt-get install libpam-google-authentator
(Ez csak a PAM modult telepíti rendszerünkbe - manuálisan aktiválnunk kell az SSH bejelentkezésekhez.)
Hitelesítési kulcs létrehozása
Jelentkezzen be, mivel a felhasználó távolról jelentkezik be, és futtatja a google-hitelesítő parancsot, hogy titkos kulcsot hozzon létre a felhasználó számára.
Engedje meg, hogy a parancs frissítse a Google Hitelesítő fájlját az y beírásával. Ezután több kérdést is felkérünk, amelyek lehetővé teszik, hogy korlátozzák ugyanazon ideiglenes biztonsági token használatát, növeljék az időablakot, amellyel a tokenek használhatók, és korlátozhatja a megengedett hozzáférési kísérleteket, hogy megakadályozzák a brutális erő krakkolási kísérleteit. Ezek a választások bizonyos biztonságot biztosítanak a könnyebb használathoz.
A Google Hitelesítő egy titkos kulcsot és több „vészhelyzetjelző kódot” mutat be Önnek. Írja le valahol biztonságos biztonsági riasztási kódokat - csak egyszer használhatók, és csak akkor használhatók, ha elveszítik a telefont.
Adja meg a titkos kulcsot a telefon Google Hitelesítő alkalmazásában (hivatalos alkalmazások elérhetőek az Android, iOS és Blackberry). Használhatja a szkennelési vonalkód funkciót is - a parancs kimenetének közelében található URL-címre, és QR-kódot szkennelhet a telefon kamerájával.
Mostantól folyamatosan változik az ellenőrző kódja a telefonon.
Ha több felhasználóként szeretne bejelentkezni, futtassa ezt a parancsot minden felhasználó számára. Minden felhasználónak saját titkos kulcsa és saját kódja lesz.
Aktiválja a Google Hitelesítőt
Ezután meg kell követelni a Google hitelesítőt az SSH bejelentkezésekhez. Ehhez nyissa meg a /etc/pam.d/sshd fájl (például a sudo nano /etc/pam.d/sshd parancsot), és adjuk hozzá a következő sort a fájlhoz:
auth szükséges pam_google_authenticator.so
Ezután nyissa meg a / Etc / ssh / sshd_config fájl, keresse meg a ChallengeResponseAuthentication sorban, és módosítsa azt a következőképpen:
KihívásReponseAuthentication igen
(Ha a ChallengeResponseAuthentication még nem létezik, add hozzá a fenti sort a fájlhoz.)
Végül indítsa újra az SSH-kiszolgálót, így a módosítások hatályba lépnek:
sudo service ssh újraindítás
Az SSH-n keresztül történő bejelentkezéskor mind a jelszót, mind a Google Hitelesítő kódot kéri.