SSH login met public key opzetten
![]()
Op het werk doen we dit al tijden, maar thuis was het er nog niet van gekomen. Ten eerste omdat ik tot vanacht geen Ubuntu Server draaide en ten tweede omdat ik geen idee had hoe ik dit moet realiseren. Ja, ik weet dat ik mijn public key moet toevoegen aan de authorized_keys file. Maar hoe. Nou, zo:
Ten eerste moet je natuurlijk een public en private key hebben. Dat valt hier even buiten de scope.
Het geheel bestaat uit twee stappen. Ten eerste moet je ervoor zorgen dat RSA en SSH login is toegestaan op de server. Als je een schone installatie Ubuntu Server hebt gedaan met OpenSSH, dan is dat al het geval. Anders kun je even hier kijken, of gebruik maken van Webmin. Ik doe het laatste.
Kopieer je public key naar de server:
user@host:~$ scp ~/.ssh/id_dsa.pub remoteuser@remotehost:~/
De volgende stap is om je public key toe te voegen aan de authorized_keys. Aangezien dit een schone server is, is dit nog niet aanwezig. In elk geval niet in mijn geval.
remoteuser@remotehost:~$ mkdir ~/.ssh; remoteuser@remotehost:~$ touch ~/.ssh/authorized_keys; remoteuser@remotehost:~$ chmod u+rw .ssh/authorized_keys
Een groot deel is nu afgerond. Nu moeten we onze public key toevoegen:
remoteuser@remotehost:~$ cat id_dsa.pub >> ~/.ssh/authorized_keys
Als dat is gelukt, moet de public key nog worden verwijderd:
remoteuser@remotehost:~$ rm id_dsa.pub
Dat is het. Open nu voor de zekerheid een tweede terminal en probeer het geheel uit. Anders wordt het heel lastig om het te herstellen. Tenzij je Webmin al had toegevoegd. Dan kun je SSH logins tijdelijk uitschakelen ;-). Meer info:
- http://www.linuxquestions.org/questions/programming-9/automatic-set-no-password-ssh-login-658457/
- http://www.debuntu.org/ssh-key-based-authentication-p2