Hoe schakel je root-login in op je Linux Cloud Server

Je kunt het root-account ontgrendelen en, indien nodig, directe root SSH-login inschakelen op je Linux Cloud Server. Dit is handig wanneer een applicatie of installatieprogramma specifiek de root-gebruiker vereist in plaats van sudo. Dit geldt voor alle one.com onbeheerde Cloud Server (VPS)-producten waarop Linux draait.

Voordat je begint, zorg ervoor dat je beschikt over:

  • Een draaiende Cloud Server met een Linux-distributie geïnstalleerd.
  • Toegang tot je server via SSH of de oneHome Webconsole, met gebruik van je standaard sudo-gebruiker. Zie Verbind met je Linux Cloud Server via SSH als je dit nog niet hebt gedaan.
  • Het wachtwoord van je sudo-gebruiker, om de onderstaande stappen te autoriseren.
  • Waarom je mogelijk root-toegang nodig hebt

    Standaard wordt een nieuwe Cloud Server ingericht met een niet-rootgebruiker (administrator standaard) die volledige sudo-rechten heeft, in plaats van een root-account met een ingesteld wachtwoord of directe root SSH-login. Dit is bewust: het volgt de gangbare Linux-beveiligingspraktijk en vermindert de blootstelling aan geautomatiseerde brute-force-aanvallen op de bekende "root"-gebruikersnaam. Voor de meeste dagelijkse beheertaken is het uitvoeren van opdrachten met sudo voldoende en wordt dit aanbevolen.

    Dat gezegd hebbende, vereisen sommige applicaties, installatieprogramma's of scripts expliciet de echte root-gebruiker, bijvoorbeeld bij het controleren op $EUID -eq 0, in plaats van een met sudo verhoogde shell, en weigeren correct te draaien met alleen sudo.

  • Wanneer je dit mogelijk nodig hebt

    Typische situaties waarin je dit nodig hebt:

    • Software installeren met een installatieprogramma dat een root-shell vereist.
    • Voer installatiescripts van derden uit die sudo weigeren en letterlijk root vereisen.
    • Werken met verouderde applicaties of tools die uitsluitend voor root zijn ontworpen.
    • Toegang herstellen als het account van je sudo-gebruiker wordt vergrendeld, verwijderd of als de sudoers-configuratie ervan faalt. Een root-wachtwoord is je terugvaloptie om weer toegang tot de server te krijgen.
    • Het systeem herstellen in de reddingsmodus, bijvoorbeeld bij een kapotte bootloader of een bestandssysteemprobleem, waarbij werken binnen een chroot betekent dat de gebruikelijke mechanismen van sudo mogelijk niet betrouwbaar beschikbaar zijn.
    • Een volledige server migreren of een volledige back-up synchroniseren met rsync of scp als root, zodat bestandseigendom en machtigingen exact worden overgedragen over het hele systeem.
    • Voer interactieve installatietools uit, zoals dpkg-reconfigure of sommige databaseconfiguratiewizards, die een echte root-loginomgeving verwachten (HOME=/root, volledige root PATH), die sudo <command> alleen niet volledig kan nabootsen.
    • Beheer cron-taken die door root worden uitgevoerd, of laat een monitoring- of back-upagent zichzelf installeren als een door root beheerde systemd-service.


Stapsgewijze instructies

  • Deel 1: stel een root-wachtwoord in (vereiste eerste stap)

    Dit is de vereiste eerste stap en geeft je een root-shell zonder SSH te openen.

    1. Maak verbinding met je Cloud Server via SSH of de Webconsole, met gebruik van je standaard sudo-gebruiker.
    2. Stel een wachtwoord in voor het root-account:
       sudo passwd root
    1. Voer een sterk nieuw wachtwoord in en bevestig dit wanneer daarom wordt gevraagd.
    2. Je kunt nu op elk gewenst moment vanuit je huidige sessie overschakelen naar de root-gebruiker:
       su -

    Als je alleen een root-shell nodig hebt of individuele opdrachten als root wilt uitvoeren, hoef je niet verder te gaan; su - en sudo dekken dat al zonder SSH bloot te stellen.

  • Deel 2: schakel directe root-aanmelding via SSH in (optioneel)

    Doe dit alleen als iets specifiek vereist dat je via SSH als root inlogt, in plaats van na het verbinden naar root over te schakelen.

    1. Open het configuratiebestand van de SSH-server:
       sudo nano /etc/ssh/sshd_config
    1. Zoek de regel die begint met PermitRootLogin. Deze kan uitgeschakeld zijn met een #, of ingesteld op no of prohibit-password.
    2. Wijzig het in:
       PermitRootLogin yes
    1. Sla het bestand op en sluit het.
    2. Start de SSH-service opnieuw op om de wijziging door te voeren:
       sudo systemctl restart sshd
    1. Je kunt nu direct als root inloggen:
       ssh root@

    Om een SSH-sleutel in plaats van een wachtwoord te gebruiken voor root-aanmelding, voeg je je publieke sleutel toe aan /root/.ssh/authorized_keys.


Goed om te weten

Het inschakelen van directe root SSH-aanmelding vergroot het aanvalsoppervlak van je server.
"root" is een bekende gebruikersnaam waarop geautomatiseerde bots gericht brute-force inlogpogingen uitvoeren. Als je dit inschakelt, beperk dan de SSH-toegang tot vertrouwde IP-adressen via Firewall / IP-toegangsregels en gebruik een sterk, uniek wachtwoord of SSH-sleutelauthenticatie. Zodra je geen directe root SSH-aanmelding meer nodig hebt, zet je PermitRootLogin terug naar no of prohibit-password.

  • Belangrijke opmerkingen.

    • Het beheren en beveiligen van root-toegang valt volledig onder je gast-OS en is jouw verantwoordelijkheid. Dit valt buiten de door het platform beheerde laag van je onbeheerde Cloud Server. 
       
    • Een redeploy installeert het OS opnieuw vanaf nul, waardoor het root-account wordt teruggezet naar de standaard vergrendelde status en PermitRootLogin weer op de standaardwaarde wordt ingesteld.
  • Probleemoplossing

    Als de bovenstaande stappen niet werken, controleer dan de volgende punten:
     

    • \"passwd: Authentication token manipulation error\"
      Controleer of het bestandssysteem niet vol is of alleen-lezen is aangekoppeld (df -h).
       
    • Root-aanmelding nog steeds geweigerd na het wijzigen van PermitRootLogin
      Bevestig dat je de SSH-service opnieuw hebt opgestart (sudo systemctl restart sshd) en controleer op een conflicterend override-bestand in /etc/ssh/sshd_config.d/.
       
    • "Permission denied (publickey)" bij het inloggen als root via SSH
      Als je server alleen sleutelgebaseerde authenticatie accepteert, voeg dan je SSH-sleutel toe aan /root/.ssh/authorized_keys of zorg ervoor dat wachtwoordauthenticatie ook is toegestaan als je van plan bent op die manier in te loggen.
       
    • Buitengesloten na het bewerken van sshd_config
      Gebruik de oneHome Webconsole, waarvoor geen SSH nodig is, om het configuratiebestand te herstellen en de SSH-service opnieuw op te starten.


Gerelateerde artikelen:

Was dit artikel nuttig?

Kun je het antwoord niet vinden?

Start een chat

De snelste manier om contact op te nemen — op werkdagen van 09:00 tot 18:00.