Chapter 2 · 2.3
Je sleutel op de server zetten en testen
This article hasn't been translated yet. You're reading the Dutch version.
Heb je bij de installatie al een sleutel geplakt? Dan staat hij er al voor root. Anders zet je hem er nu op. Doe dit voor elke gebruiker die met een sleutel moet inloggen.
Vanaf een Mac of Linux
ssh-copy-id root@203.0.113.10
Je typt één keer het wachtwoord van de server. Het programma zet je publieke sleutel in het bestand ~/.ssh/authorized_keys op de server en zet de rechten goed.
Vanaf Windows
Op Windows bestaat ssh-copy-id niet. In PowerShell doe je hetzelfde met één regel:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@203.0.113.10 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
Met de hand
Je kunt de regel ook zelf in het bestand zetten, bijvoorbeeld via de console. Open het bestand met de editor nano, plak de regel en sla op met Ctrl+O en Enter, sluit met Ctrl+X:
root@web1:~# mkdir -p ~/.ssh && chmod 700 ~/.ssh
root@web1:~# nano ~/.ssh/authorized_keys
root@web1:~# chmod 600 ~/.ssh/authorized_keys
Eén sleutel per regel. De rechten zijn belangrijk: is de map of het bestand schrijfbaar voor anderen, dan negeert de SSH-server je sleutel.
Testen
Open een nieuw terminalvenster en log in. Je kunt zelfs afdwingen dat alleen de sleutel wordt geprobeerd:
ssh -o PreferredAuthentications=publickey root@203.0.113.10
Kom je binnen zonder het serverwachtwoord (hooguit je passphrase), dan werkt je sleutel. Pas dan ga je verder met Inloggen met een wachtwoord en als root uitzetten.
Een sleutel weghalen
Raak je een laptop kwijt of vertrekt een collega? Open ~/.ssh/authorized_keys en verwijder de regel met de naam van die sleutel (het stuk na de lange code, zoals anna laptop). Dat geldt meteen voor nieuwe verbindingen.
