SSH key pairs, inloggen via SSH zonder wachtwoord
SSH-en naar een GNU/Linux, Mac OS X of BSD installatie is erg populair onder systeembeheerders. Maar iedere keer inloggen met gebruikersnaam en wachtwoord kan op een gegeven moment erg vermoeiend worden. Gelukkig heeft OpenSSH hier een oplossing voor!
Hoe werkt het?
Normaal gesproken authenticeer je met gebruikersnaam en wachtwoord bij de server als je toegang wilt tot de shell van een andere computer. Een andere gebruikelijk methode bij OpenSSH is het gebruik van zogenaamde 'key pairs'. Iedere gebruiker op de server heeft een bestand met daarin verschillende 'public keys' die corresponderen met unieke 'private keys'. Zo'n private key bestaat uit een lange reeks karakters en kan een cliënt gebruiken om zich te authenticeren bij de server. Deze handleiding beschrijft hoe dit te gebruiken is voor een GNU/Linux cliënt en een Microsoft Windows cliënt.
Onder GNU/Linux met OpenSSH
Voer op de cliënt in een terminal het volgende in:
Voer bij 'passphrase' niks in (gewoon <ENTER> dus). Het programma eindigt met de volgende meldingen:
Your identification has been saved in /home/GEBRUIKER/.ssh/id_rsa.
Your public key has been saved in /home/GEBRUIKER/.ssh/id_rsa.pub.
Daar heb je al je public en private key! Nu is het zaak om de public key, het bestand 'id_rsa.pub', toe te voegen aan de geaccepteerde keys van de server. Kopieer daarvoor het bestand 'id_rsa.pub' naar de server. Dat kan eenvoudig met SCP.
- scp id_rsa.pub GEBRUIKER@SERVER:/tmp
Log dan in via SSH met de gebruiker die je toegang wilt geven op de server zoals je gewend bent. Nu moet de inhoud van de public key 'id_rsa.pub' worden toegevoegd aan het bestand '~/.ssh/authorized_keys'. Dit kan met het volgende commando:
- cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys
Dat was het al! Mocht het niet werken, check dan de instellingen van de SSH server, vaak te vinden in '/etc/ssh/sshd_config'.
Onder Microsoft Windows met PuTTY
Dit artikel gaat ervan uit dat je PuTTY, inclusief de key generator 'PuTTYgen al hebt geïnstalleerd.
- Geef de hostname op.
- Geef een leuke naam op als 'Saved Session'.
- Klik in het menu op 'Data'.
- Geef als 'Auto-login Username' de gebruikersnaam die je toegang wilt geven op de server.
- Ga terug naar 'Session' in het menu, save deze session en klik op 'Open' om in te loggen.
- Type je wachtwoord en log in op de server.
- Start PuTTYgen.
- Klik op 'Generate' en beweeg de muis op en neer totdat beide keys aangemaakt zijn.
- Sla beide keys op met de daarvoor bestemde knoppen op een plek die je gemakkelijk terug kunt vinden.
- Open in het terminalvenster van PuTTY het bestand '~/.ssh/authorized_keys' in een editor.
- Kopieer en plak de public key zoals die zichtbaar is in PuTTYgen inclusief het gedeelte 'ssh-rsa' in onderaan in het bestand '~/.ssh/authorized_keys' en sla het op.
- Log uit en sluit PuTTYgen.
- Start PuTTY opnieuw, laad de eerder opgeslagen sessie met 'Load'.
- Ga in het menu onder 'SSH' naar 'Auth'.
- Geef bij 'Private key file for authetication' de private key op die we zojuist hebben aangemaakt.
- Ga opnieuw naar 'Session' in het menu en sla de sessie op.
- Klik op 'Open', klaar!
Lees verder