Acest tutorial prezinta cum se poate face autentificarea prin protocolul SSH utilizand public keys, de pe un sistem unix/linux pe altul ce folosesc OpenSSH
Pe sistemul client vom creea directorul .ssh in homedir-ul userului care va folosi autentificarea cu public key
user@client[~] # mkdir ~/.ssh/ user@client[~] # chmod 700 ~/.ssh/ user@client[~] # ssh-keygen -q -f ~/.ssh/id_rsa -t rsa
Enter passphrase (empty for no passphrase): ****
Enter same passphrase again: ****
user@client[~] #
Daca doriti sa fie solicitata o parola pentru public key la autentificare puteti seta o parola la passphrase care nu ar trebui sa coincida cu parola usernameului de login sau puteti sa lasati passphrase gol (pur si simplu se apasa tasta ENTER).
Restrictionam permisiunile de access la directorul .ssh pentru a nu putea fi citit key-ul de autentificare si de alti utilizatori din system.
user@client[~] # chmod 700 ~/.ssh user@client[~] # chmod go-rwx ~/.ssh/*
Continutul fisierului din ~/.ssh/id_rsa.pub se copiaza pe sistemul la care se va face autentificarea folosind public key in ~/.ssh/authorized_keys
Acesta trebuie sa fie pe o singura linie.
user@client[~] # scp ~/.ssh/id_rsa.pub user@server.domain.tld:/home/user/ user@server.domain.tld[~] # cat ~/id_rsa.pub >> ~/.ssh/authorized_keys user@server.domain.tld[~] # chmod 600 ~/.ssh/authorized_keys user@server.domain.tld[~] # rm -rf ~/id_rsa.pub
[code]aaaaaaaaaaaaaaaaaaaaaa[/code]