SSH hozzáférés RSA kulcsokkal

Egy kis utasítás az SSH hozzáférés szervezéséhez egy távoli Linux szerverhez. Emlékezzünk arra, hogy a felhasználói hitelesítés szokásos módszere egy Unix kiszolgálón (Linux, FreeBSD) SSH-n keresztüli hozzáférés esetén egy pár bejelentkezés és jelszó. De a belépés nem mindig kényelmes, különösen, ha sok ilyen szerver létezik. Van egy alternatíva az ilyen típusú hozzáféréshez - az SSH hozzáférés megszervezése egy pár RSA kulcs (nyilvános és magán) és egy jelmondat segítségével (ami általában nem kötelező).

Ebben a cikkben megvizsgáljuk az ilyen típusú hozzáférés használatát, amely az SSH-ra való munka egyik legnépszerűbb programjának segítségével valósítható meg.   - PuTTY.

Munkához a PuTTY család következő segédprogramjaira van szükségünk:

  • puttygen.exe - kulcspár létrehozó csomag
  • putty.exe - Az SSH terminál maga
  • pscp.exe - scp fájlmásoló segédprogram

Generáljon egy pár RSA kulcsot

Ehhez futtassa a segédprogramot PuTTYgen, győződjön meg arról, hogy a kulcs típusa „SSH-2 RSA"És nyomja meg a gombot"generálása".

Ezután megkezdődik a kulcspár generálása, és egy véletlen sorozat előállításához véletlenszerűen húzza az egeret a folyamatjelző sáv körül..

A mezőn "Kulcsfontosságú megjegyzés" meghatározhat egy kulcsleírást (ez a kulcs hitelesítésekor jelenik meg).

A mezőn "Kulcs jelszó" és "Jelszó megerősítése" megadja a kulcs aktiválásának jelszavát (csatlakozáskor kérni fogja). Ha nem állít be jelszót, akkor a kapcsolat jelszó nélkül zajlik: nagyon kényelmes, de nem túl biztonságos, mert A kiszolgáló eléréséhez a támadónak el kell lopnia magától egy fájlt egy magánkulccsal (ezért javasoljuk, hogy tartsa titokban a titkos kulcsot: külső USB meghajtón, titkosított köteten stb.).

Ezután megnyomjuk a gombokatMentse a nyilvános kulcsot„És”Mentse el a privát kulcsot"És mentse a nyilvános és a magánkulcsokat egy fájlba, például névvel:"public.key„És”private.ppk".

Konfigurálja a nyilvános kulcsot a Linux kiszolgálón.

Nyilvános kulcsfájl "public.key»Másolni kell arra a Linux szerverre, amelyhez csatlakozni tervezi. Ehhez használja a pscp.exe segédprogramot. A copy file parancs így néz ki:

pscp c: \ kulcs \ public.key [email protected]: / tmp / foo

Ezután a lemásolt kulcsot a felhasználó otthoni könyvtárába kell helyezni a ~ / .ssh / Author_keys fájlba .

Ehhez menjen a kiszolgálóra SSH-n keresztül (mint általában), és futtassa a következő parancsot:

$ ssh-keygen -i -f /tmp/foo/public.key >> /home/myuser/.ssh/authorized_keys

ahol myuser, annak a felhasználónak a neve, aki engedni fog bejelentkezni ezzel a kulccsal.

Ezenkívül ne felejtse el ellenőrizni, hogy a kulcs engedélyezése engedélyezve van-e a szerveren. Ehhez a következő sorokat nem kell megjegyzést fűzni az / etc / ssh / sshd_config fájlhoz:

RSA hitelesítés igen
PubkeyHitelesítés igen
EngedélyezettKeysFile .ssh / engedélyezett_kulcsok

Az SSH-n keresztül csatlakozunk a kulcs segítségével

Elindítjuk a PuTTY-t, és a képernyő bal oldalán lépjünk a Connections -> SSH -> Auth elemre.

Keresse meg a sort "magán kulcs fájl mert hitelesítés », akkor rá kell kattintania a „Tallózás” gombra, és meg kell határoznia a fájlt a „private.ppk” magánkulccsal.
Ezután a fő lapon adja meg Linux szerverünk nevét / ip címét, és indítsa el a kapcsolatot. Ezután a rendszer a megszokott módon kéri, hogy adja meg a bejelentkezést, majd a kulcs jelszavát (ha megadták). Ha a jelmondat nincs megadva, akkor a kiszolgálókonzol jelszó nélkül megnyílik.
Annak elkerülése érdekében, hogy belemenjen az Auth beállításokba, és minden egyes kapcsolatnál megadja a kulcsfájlt, a beállításokat elmentheti, ehhez a Mentés (a PuTTY beállítások mentése) és a Betöltés (betöltési beállítások) gombok vannak a fő lapon.. Az összes elmentett Putty-beállítást a rendszerleíró adatbázis tárolja, tehát alapvetően átviheti őket az egyik számítógépről a másikra, egyszerűen egy részlet exportálásával / importálásával (a részletekért lásd a PuTTY beállítások átvitele című cikket).

Ezen túlmenően, annak érdekében, hogy a felhasználónevet nem kell kézzel beírni, a felhasználó bejelentkezési adatait a PuTTY mappába is elmentheti (Connection \ Data \ Auto-login username).

Ha ez nem sikerül, elemezzük a kiszolgálón található /var/log/auth.log naplót.