CH-J Server Managerserverbeheer over SSH
Menu
Alle handleidingen en artikelen →

SSH-gebruikers en root-toegang: een veilige inrichting op Linux

Maak een beheerdersaccount, installeer de sleutel, test sudo en beperk pas daarna de root-aanmelding, zonder uzelf buiten te sluiten.

Het doel en de volgorde van de stappen

Beheerders horen zich met sleutels onder hun eigen account aan te melden en zo nodig sudo te gebruiken. Zo blijft vastgelegd wie wat heeft gedaan en worden pogingen om wachtwoorden te raden beperkt. De volgorde is belangrijk: laat de nieuwe toegang eerst werken, test deze en beperk root als laatste stap. Houd de console van de provider beschikbaar voor het geval er iets misgaat.

Maak het account en installeer de sleutel

Maak het account, voeg de publieke sleutel toe en stel strikte rechten in, want sshd negeert sleutelbestanden waarin anderen kunnen schrijven. Kopieer nooit een privésleutel naar de server. Gebruik op systemen uit de Red Hat-familie de groep wheel in plaats van sudo.

sudo adduser admin1
sudo usermod -aG sudo admin1
sudo install -d -m 700 -o admin1 -g admin1 /home/admin1/.ssh
sudo install -m 600 -o admin1 -g admin1 ~/admin1.pub /home/admin1/.ssh/authorized_keys

Test vanuit een tweede venster

Houd uw huidige sessie open en test de nieuwe aanmelding vanuit een andere terminal. Groepslidmaatschap bewijst op zichzelf niet dat sudo werkt, want de regels in sudoers bepalen dat. Controleer het met sudo -l.

ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519 admin1@server.example
sudo -l
sudo -v

Beperk de root-aanmelding

PermitRootLogin prohibit-password staat root alleen toe met een sleutel, en no blokkeert root via SSH volledig. Zet de wijziging in een eigen bestand onder /etc/ssh/sshd_config.d. Voor de meeste opties gebruikt sshd de eerste gevonden waarde, dus een eerder bestand kan voorrang krijgen. Controleer daarom de effectieve waarde met sshd -T in plaats van de bestanden te lezen. Test een nieuwe aanmelding voordat u de oude sessie sluit.

echo 'PermitRootLogin no' | sudo tee /etc/ssh/sshd_config.d/50-root.conf
sudo sshd -t
sudo systemctl reload ssh
sudo sshd -T | grep -iE '^(permitrootlogin|passwordauthentication) '

Aanmelden met wachtwoorden en wat u moet vermijden

Schakel PasswordAuthentication pas uit als elk benodigd account een geteste sleutel heeft. Vermijd het delen van één account door meerdere mensen, want dan kunt u de toegang van één persoon niet intrekken zonder de anderen te raken. sudo zonder wachtwoord voor een heel account betekent bovendien dat een gestolen sleutel alleen al volledige controle geeft.

Gebruikersaccounts in CH-J Server Manager

De module Users beheert accounts, groepen, SSH-sleutels en SSH-toegang via een actieve SSH-sessie. De module wijzigt nooit sudoers en stelt geen NOPASSWD in, en toont de werkelijke sudo-status op basis van sudo -l. Het root-account kan niet worden verwijderd. Voor het toestaan van root-aanmelding met een wachtwoord is een extra bevestiging nodig, met Alleen sleutel als aanbevolen keuze. Een wijziging aan SSH-toegang wordt gecontroleerd met sshd -T en een nieuwe SSH-aanmelding. De vorige configuratie keert automatisch terug als de controle mislukt of u buitengesloten zou raken. Zonder sudo is de module alleen-lezen.

Gedetailleerde documentatie

OpenSSH: sshd_config →

man: sudoers →

Biometrische ontgrendeling en beveiliging →