OpenWrt a ssh kľúče
Jednou z prvých vecí, ktorú si vždy nastavím je autentifikácia pomocou ssh kľúčov. Je to šikovná vecička, korá zvyšuje bezpečnosť.Dá sa nastaviť aj na smerovači s OpenWrt.
Samotný SSH server je na smerovači spustený po nastavení hesla pre root. Toto som urobil ihneď po inštalácii, takže SSH beží, stačí použiť PuTTY a máte prístup k shellu smerovača. Predpokladám, že PuTTY poznáte, takže poďme na vec a pripravme si SSH kľúče.
Generovanie kľúčov

Najprv je potrebné SSH kľúče vygenerovať. SSH kľúče sú vlastne dvojica súborov. Jeden s verejným kľúčom a druhý s kľúčom súkromným. Verejný kľúč je uložený v konfigurácii servera, ktorý podľa neho rozpoznáva súkromný kľúč. Súkromný kľúč majte uložený na bezpečnom mieste, je posielaný SSH klientom ako overenie totožnosti.
Na vygenerovanie kľúčov možno použiť slúži program puttygen.exe, ktorý je dispozícii na stiahnutie na stránke PuTTY. Program nie je potrebné inštalovať, stačí ho stiahnuť a spustiť:
V okne programu kliknite na tlačidlo Generate a začne generovanie kľúčov. Aby mal program dostatok náhodných dát pre vygenerovanie kľúča, očakáva pohyb myšou, takže hýbte myšou v okne programu, kým ukazovateľ priebehu neprejde až do konca. Po vygenerovaní kľúča si program vyžiada zadanie tzv. passphrase. Je to akási obdoba hesla, ktoré slúži na overenie autentickosti kľúča. Ak passphrase zadáte, pri každom použití kľúča budete vyzvaný aj na zadanie passphrase.

Ak passphrase nenastavíte, bude SSH považovať overenie kľúčom za dostatočné a žiadne ďalšie heslo už vyžadovať nebude. Týmto spôsobom získate prístup bez hesla, ale pozor, ak niekto získa Váš súbor so súkromným kľúčom, získa prístup všade. Zatiaľ okno nezatvárajte.
Prenesenie kľúča na server
Verejný kľúč vyzerá nejako podobne (skrátené):
ssh-rsa AAAAB3NzaC1yc2 ... 0q/kKSf6aVUGogPrRujQJs= rsa-key-20080227
Prekopírujte ho do schránky a pripojte sa pomocou PuTTY k smerovaču
(zatiaľ pomocou hesla). Verejný kľúč uložte do súboru
/etc/dropbear/authorized_keys
napríklad pomocou príkazu (kľúč je
skrátený):
echo ssh-rsa AAAAB3NzaC1yc2 ... 0q/kKSf6aVUGogPrRujQJs= rsa-key-20080227 \
>> /etc/dropbear/authorized_keys
SSH server je citlivý na prístupové práva tohoto súboru, preto ich môžete radšej znova nastaviť:
chmod 0600 /etc/dropbear/authorized_keys
Tým je server pripravený na autentifikáciu kľúčom. Ostáva ešte presvedčiť PuTTY, aby pri autentifikácii používal tento kľúč.
Nastavenie klienta PuTTY
Pre klienta je potrebné v programe puttygen.exe uložiť súkromný kľúč
do súboru, napríklad OpenWrt-Private-Key.ppk
. Tento súbor uložte,
napríklad do domovského adresára alebo na USB kľúč. Teraz už môžete
puttygen.exe zatvoriť, svoju úlohu splnil, a spustiť program PuTTY.exe.
Načítajte svoju konfiguráciu, prípadne vytvorte novú. V novej nastavte minimálne meno relácie a IP adresu smerovača. Potom v ľavej časti vyberte kategóriu
, kde nastavte meno používateľa pre automatické prihlásenie (Auto-login username) na root a potom kategóriu :Auto-login username:Connection –> SSH –> Auth, kde v poli Private key for authentication nastavte cestu k súboruso súkromným kľúčom, ktorý ste vygenerovali v programe puttygen.Tip
Nezabudnite si reláciu uložiť a môžete si vychutnať pripojenie a autentifikáciu pomocou kľúčou SSH.