SSH bez hesla

Kontrola fingerprintu - vygenerovani pro porovnání s putty výstupem

  • for file in *sa_key.pub; do   ssh-keygen -lf $file; done

SSH bez hesla

Vytvoreni adresare pro SSH, nastaveni potrebnych prav a vygenerovani soukromeho a verejneho klice.

$ mkdir -p $HOME/.ssh
$ chmod 0600 $HOME/.ssh
$ ssh-keygen -t dsa -f $HOME/.ssh/id_dsa

Zkopirovani verejneho klice na server, ke kteremu se budeme propojovat bez hesla.
scp $HOME/.ssh/id_dsa.pub user@host:/home/user/.ssh/authorized_keys

Na serveru, ke kteremu se chceme pripojovate vytvorime nasledujici link:
ln -s $HOME/.ssh/authorized_key $HOME/.ssh/authorized_keys2
Je to proto, ze nektere ssh hledaji nazev: authorized_keys2

Opet zde nastavime prava:
chmod 0600 $HOME/.ssh/authorized_keys

Otestujeme pripojeni(parametr i urcuje soukromy klic):
ssh -i $HOME/.ssh/id_dsa server

Jaky nazev klice se ma hledat muzem ovlivni v souboru $HOME/.ssh/config, kde to zabezpecime direktivou:

IdentityFile ~/.ssh/id_dsa

K tomu aby vse fungovalo je nutne mit na serveru jeste nastavene nasledujici direktivy v souboru /etc/ssh/sshd_config:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys


#######################

postup 2
-----------------------------------

Autentizace v OpenSSH pomocí RSA klíčů

Jako snad každého mě vůbec nebaví vyťukávání hesel. Při připojování se na různé počítače přes ssh jsem byl nucen vyťukávat celkem dlouhá hesla opravdu často a tak jsem hledal nějaké pohodlnější řešení. Tady je:
Postup
Klient
ssh-keygen -t rsa -b 2048 -f ~/.ssh/novy_rsa_klic vygeneruje potřebné klíče.
Aby ssh klient věděl, které klíče na který server použít a jaký login (username) poslat, je nutné vyrobit ~/.ssh/config. Stačí něco jako je toto:
Host host.domain.tld
User username
IdentityFile ~/.ssh/novy_rsa_klic
Server
Aby ssh server poznal, že má klient správný soukromý klíč, je nutné v ~/.ssh/authorized_keys na serveru mít veřejné klíče klientů. Klíče jsou uloženy všechny v jednom souboru, co řádek, to jeden klíč. Veřejný klíč byl uložen do ~/.ssh/novy_rsa_klic.pub.
ssh username@host.domain.tld 'cat >> ~/.ssh/authorized_keys' < ~/.ssh/novy_rsa_klic
Poznámky

Aby toto fungovalo je nutné mít povoleno autorizaci RSA klíči jak na klientovi, tak na serveru (v defaultní konfiguraci je).

Soubor ~/.ssh/config umí parsovat skript na generování menu pro Window Makera jménem ssh-sessions.