SSH prístup pomocou RSA kľúčov

Malá inštrukcia o organizovaní prístupu SSH na vzdialený server Linux. Pripomeňme, že štandardnou metódou autentifikácie používateľov na serveri Unix (Linux, FreeBSD) pri prístupe cez SSH je pár prihlasovacích údajov a hesiel. Ale ich zadanie nie je vždy výhodné, najmä ak existuje veľa takýchto serverov. Existuje alternatíva k tomuto typu prístupu - organizácia prístupu SSH pomocou dvojice RSA kľúčov (verejných a súkromných) a prístupovej frázy (ktorá je vo všeobecnosti voliteľná)..

V tomto článku zvážime použitie tohto typu prístupu, ktorý je možné implementovať pomocou jedného z najpopulárnejších programov pre prácu na SSH.   - PuTTY.

Na prácu potrebujeme nasledujúce nástroje z rodiny PuTTY:

  • puttygen.exe - balík na vytvorenie párov kľúčov
  • putty.exe - samotný terminál ssh
  • pscp.exe - utilita na kopírovanie súborov scp

Vytvorte pár kľúčov RSA

Ak to chcete urobiť, spustite obslužný program PuTTYgen, uistite sa, že typ kľúča je „SSH-2 RSA„A stlačte tlačidlo“generovať".

Potom sa začne generovanie párov kľúčov a ak chcete vygenerovať náhodnú sekvenciu, musíte myšou náhodne potiahnuť myšou okolo ukazovateľa priebehu..

V teréne „Kľúčový komentár“ môžete zadať popis kľúča (zobrazí sa počas autentifikácie kľúča).

V teréne „Kľúčové heslo“ a „Potvrdiť prístupovú frázu“ určuje heslo pre aktiváciu kľúča (bude požadované pri pripojení). Ak nenastavíte prístupovú frázu, pripojenie sa uskutoční bez hesla: je to veľmi pohodlné, ale nie príliš bezpečné, pretože Aby mohol útočník získať prístup na server, musí od vás ukradnúť súbor so súkromným kľúčom (preto sa odporúča súkromný kľúč utajiť: na externej jednotke USB, šifrovanom zväzku atď.).

Potom stlačíme tlačidláUložiť verejný kľúč"A"Uložte súkromný kľúč„A uložiť verejné a súkromné ​​kľúče do súboru s menami, napríklad:“public.key"A"private.ppk".

Nakonfigurujte verejný kľúč na serveri Linux.

Súbor s verejným kľúčom “public.key»Je potrebné skopírovať na server Linux, ku ktorému sa chcete pripojiť. Použite na to pomôcku pscp.exe. Príkaz na kopírovanie súboru bude vyzerať asi takto:

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

Potom musí byť skopírovaný kľúč umiestnený v domovskom adresári používateľa v súbore ~ ​​/ .ssh / autorizované_keys .

Ak to chcete urobiť, choďte na server cez SSH (ako zvyčajne) a spustite nasledujúci príkaz:

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

kde myuser, meno používateľa, ktorý sa bude môcť prihlásiť pomocou tohto kľúča.

Nezabudnite tiež skontrolovať, či je na serveri povolená autorizácia kľúčov. V súbore / etc / ssh / sshd_config by sa preto mali zrušiť nasledujúce riadky:

Overenie RSA áno
PubkeyAententication yes
AuthorizedKeysFile .ssh / author_keys

Spojíme sa cez SSH pomocou kľúča

Začneme PuTTY a na ľavej strane obrazovky prejdeme na Pripojenia -> SSH -> Autor.

Nájdite riadok "súkromný kľúč súbor pre autentifikácia », potom musíte kliknúť na tlačidlo „Prehľadávať“ a určiť náš súbor pomocou súkromného kľúča „private.ppk“.
Potom na hlavnej karte zadajte názov / ip adresu nášho servera Linux a začnite pripojenie. Potom vás systém ako obvykle požiada o zadanie prihlasovacieho mena a potom prístupového hesla kľúča (ak bol zadaný). Ak prístupové heslo nie je zadané, konzola servera sa otvorí bez hesla.
Aby ste pri každom pripojení neprešli do nastavení Auth a nešpecifikovali súbor s kľúčmi, je možné tieto nastavenia uložiť. Na hlavnej karte sa nachádzajú tlačidlá Uložiť (uložiť nastavenia PuTTY) a Načítať (nastavenia načítania).. Všetky uložené nastavenia Putty sú uložené v registri, takže ich môžete v zásade preniesť z jedného počítača do druhého jednoduchým exportom / importom časti registra (ďalšie informácie nájdete v článku Prenos nastavení PuTTY).

Okrem toho, aby sa používateľské meno nemohlo zadať ručne, môže sa užívateľské meno uložiť aj do PuTTY (pripojenie \ Data \ Automatické prihlasovacie meno používateľa).

Ak to nebude fungovať, analyzujeme log /var/log/auth.log na serveri.