Ga naar hoofdinhoud

Online zetten: alleen met een sleutel

Hier bouw je op verder: Een bestand in /etc bewerken met sudo nano

Weet je dit niet meer zeker? Lees het terug voordat je verdergaat.

Met je sleutel kom jij binnen. Maar zolang ssh ook wachtwoorden accepteert, kan een programma er een raden. Zet dat uit, en inloggen als root meteen ook.

De instellingen​

Maak als sam een eigen bestand met instellingen:

sudo nano /etc/ssh/sshd_config.d/00-veilig.conf
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin no

De 00 vooraan doet ertoe. ssh leest de bestanden in die map op alfabet, en de eerste keer dat een instelling voorkomt, telt. Op sommige servers staat er al een bestand, zoals 50-cloud-init.conf, met PasswordAuthentication yes. Jouw bestand komt eerder.

Controleer de instellingen:

sudo sshd -t

Zegt sshd -t niets, dan klopt alles.

Let op: sluit de terminal waarin je als sam bent ingelogd niet, ook niet na het laden. Probeer eerst in een tweede terminal of je nog binnenkomt met ssh sam@203.0.113.10. Gaat er iets mis, dan herstel je het in de eerste, die nog openstaat. Laad nu de instellingen:

sudo systemctl reload ssh
Controlevraag
Op je server staat al 50-cloud-init.conf met PasswordAuthentication yes. Je noemt je eigen bestand 99-veilig.conf, met PasswordAuthentication no. Kan iemand nu nog met een wachtwoord inloggen?
Kies wat jij denkt. Bij het goede antwoord zie je de uitleg.

Er gaat iets mis​

sshd -t geeft een fout​

/etc/ssh/sshd_config.d/00-veilig.conf: line 1: Bad configuration option: PaswordAuthentication

Oorzaak: een tikfout in je bestand, hier één s te weinig.

Oplossing: verbeter het bestand en draai sudo sshd -t opnieuw. Laad de instellingen pas als hij niets meer zegt; met een fout erin start ssh niet.

Permission denied (publickey) als sam​

sam@203.0.113.10: Permission denied (publickey).

Oorzaak: de server kent jouw sleutel niet voor sam. Nu wachtwoorden uitstaan, vraagt ssh niet meer om een wachtwoord, maar weigert hij meteen.

Oplossing: herstel het in de terminal die nog openstaat, met chown -R sam:sam /home/sam/.ssh zoals in les 25.

Door naar les 27: een naam voor je server.