SSH přihlášení bez hesla pomocí klíče (old version)

Na lokálním serveru/počítači si klíč vygenerujeme (pokud jej nemáme):

ssh-keygen -t dsa

V adresáři “.ssh ” jsou dva soubory :
id_dsa – osobní klíč
id_dsa.pub
–  veřejný klíč.

Vygenerovaný veřejný klíč nahrajeme na server, ke kterému se chceme bez zadávání hesla připojovat

cd .ssh
scp id_dsa.pub root@server:/root/

Připojíme se na sevrer. Klíč je třeba přidat na konec stávajícího souboru,
abychom nezrušili již používané klíče.  Pokud soubor authorized_keys v adresáři .ssh/ neexistuje
následující příkaz ho vytvoří:

ssh root@server
cat id_dsa.pub >> .ssh/authorized_keys

Smažeme na serveru id_dsa.pub a odhlásíme se z něj.

rm -f id_dsa.pub
exit

Poznámka:
Ještě je třeba zkontrolovat, zda je přihlašování pomocí klíčů v SSH povolené:

vi /etc/ssh/sshd_config

najdeme a odkomentujeme (smazat znak “#”) případně přidáme  řádek PubkeyAuthentication takto:

PubkeyAuthentication yes

dále odkomentujeme (smazat znak “#”) cestu k souboru s klíči

AuthorizedKeysFile .ssh/authorized_keys

Takže ve výsledku bude upravený soubor vypadat takto

PubkeyAuthentication yes
AuthorizedKeysFile     .ssh/authorized_keys

Dále se mohou specifikovat pro větší bezpečnost konkrétní ssh uživatelé, kteří se mohou k severu připojit pomocí ssh klíče:

DenyUsers *
AllowedUsers             root user1 user2

Pak je ještě třeba ssh restartovat.

/etc/init.d/sshd restart

Pro přihlášení k serveru bude tedy stačit už jen zápis ssh root@server

Zdroj: http://d3d.org/kecy-kolem-linuxu/ssh-prihlaseni-bez-hesla-i-to-je-mozne