Slik aktiverer du root-innlogging på VPS

På en ny VPS er root-kontoen som standard ikke satt opp med passord, og direkte root-innlogging via SSH er deaktivert. Dersom en applikasjon eller installasjon krever root-brukeren fremfor sudo, kan du aktivere root-kontoen og ved behov tillate direkte root-innlogging via SSH.

Innhold i denne guiden:


Før du begynner

Denne guiden gjelder VPS-er som kjører Linux.

Du trenger:

  • en aktiv VPS med en Linux-distribusjon installert
  • tilgang til VPS-en via SSH eller webkonsollen i oneHome med standardbrukeren din
  • passordet til standardbrukeren med sudo-tilgang

En ny VPS opprettes som standard med en vanlig bruker, normalt administrator, som har full sudo-tilgang.

For vanlig administrasjon er sudo tilstrekkelig og anbefalt. Du trenger derfor ikke å aktivere root-innlogging med mindre en applikasjon, installasjon eller annen oppgave spesifikt krever det.


Hvorfor kan du ha behov for root?

Enkelte applikasjoner, installasjonsprogrammer eller skript krever den faktiske root-brukeren i stedet for en kommando eller shell som er startet med sudo.

Dette gjelder blant annet løsninger som kontrollerer om brukeren faktisk kjører som root, for eksempel med:

$EUID -eq 0

I slike tilfeller kan løsningen nekte å kjøre selv om brukeren ellers har full sudo-tilgang.


Typiske bruksområder

Root-tilgang kan blant annet være aktuelt dersom du:

  • installerer programvare med et installasjonsprogram som krever en root-shell
  • kjører tredjepartsskript som krever root og ikke godtar sudo
  • bruker eldre applikasjoner eller verktøy som er utviklet for root-brukeren
  • trenger en alternativ tilgang dersom standardbrukeren blir låst, slettet eller mister sudo-tilgang
  • reparerer systemet i rescue mode, for eksempel ved problemer med bootloader eller filsystem, der vanlige sudo-mekanismer ikke nødvendigvis er tilgjengelige i et chroot-miljø
  • migrerer en hel server eller synkroniserer en fullstendig sikkerhetskopi med rsync eller scp som root, slik at eierskap og filrettigheter bevares
  • bruker interaktive konfigurasjonsverktøy, som dpkg-reconfigure eller enkelte databaseverktøy, som forventer et fullstendig root-miljø med blant annet HOME=/root og root-brukerens PATH
  • administrerer cron-jobber som eies av root, eller installerer overvåkings- eller backup-agenter som root-eide systemd-tjenester

Slik setter du et root-passord

Dette må gjøres før du eventuelt aktiverer direkte root-innlogging via SSH.

  1. Koble til VPS-en via SSH eller webkonsollen i oneHome med standardbrukeren din.
  2. Angi et passord for root-brukeren:

    sudo passwd root
  3. Skriv inn og bekreft et sterkt, nytt passord når du blir bedt om det.
  4. Du kan nå bytte til root-brukeren fra den eksisterende økten med:

    su -

Du trenger ikke å aktivere direkte root-innlogging via SSH dersom du kun har behov for å bruke root fra en eksisterende økt.


Slik aktiverer du direkte root-innlogging via SSH

Dette steget er valgfritt og er kun nødvendig dersom du vil kunne koble direkte til VPS-en som root.

  1. Åpne konfigurasjonsfilen for SSH:

    sudo nano /etc/ssh/sshd_config
  2. Finn linjen som starter med PermitRootLogin.

    Linjen kan være kommentert ut med #, eller være satt til for eksempel no eller prohibit-password.

  3. Endre den til:

    PermitRootLogin yes
  4. Lagre og lukk filen.
  5. Start SSH-tjenesten på nytt for å aktivere endringen:

    sudo systemctl restart ssh
  6. Du kan nå koble direkte til VPS-en som root:

    ssh root@<ip-adressen-til-vps-en>

Viktig å vite

  • Direkte root-innlogging via SSH øker angrepsflaten til VPS-en. root er et kjent brukernavn som ofte blir forsøkt brukt i automatiserte brute-force-angrep.
  • Hvis du aktiverer direkte root-innlogging, anbefaler vi å begrense SSH-tilgang til betrodde IP-adresser med brannmur eller IP Access Rules, og bruke et sterkt, unikt passord eller SSH-nøkkel.
  • Når du ikke lenger trenger direkte root-innlogging, bør du endre PermitRootLogin tilbake til no eller prohibit-password.
  • Administrasjon og sikring av root-tilgang skjer i operativsystemet på VPS-en og er ditt ansvar på en unmanaged VPS.
  • Redeploy installerer operativsystemet på nytt. Root-kontoen tilbakestilles da til standardtilstanden, og PermitRootLogin får tilbake standardverdien.

Feilsøking og vanlige problemer

  • Jeg får «passwd: Authentication token manipulation error»

    Kontroller at filsystemet ikke er fullt eller montert som skrivebeskyttet.

    Du kan kontrollere tilgjengelig diskplass med:

    df -h
  • Root-innlogging fungerer fortsatt ikke etter at jeg endret PermitRootLogin

    Kontroller at du har startet SSH-tjenesten på nytt:

    sudo systemctl restart ssh

    Kontroller også om det finnes en konfigurasjon i:

    /etc/ssh/sshd_config.d/

    som overstyrer innstillingen i sshd_config.

  • Jeg får «Permission denied (publickey)» når jeg kobler til som root

    Hvis VPS-en kun tillater innlogging med SSH-nøkkel, legger du den offentlige SSH-nøkkelen til i:

    /root/.ssh/authorized_keys

    Hvis du ønsker å bruke passord i stedet, må du kontrollere at passordautentisering også er tillatt i SSH-konfigurasjonen.

  • Jeg mistet SSH-tilgangen etter at jeg endret sshd_config

    Bruk webkonsollen i oneHome for å koble til VPS-en uten SSH.

    Derfra kan du rette konfigurasjonsfilen og starte SSH-tjenesten på nytt.


Vanlige spørsmål

  • Hvorfor er ikke root-brukeren aktivert som standard?

    Av sikkerhetshensyn opprettes nye VPS-er med en vanlig bruker med sudo-tilgang i stedet for en root-konto med aktivt passord og direkte root-innlogging.

    Dette reduserer blant annet eksponeringen mot automatiserte brute-force-angrep mot det kjente brukernavnet root.

  • Er det trygt å aktivere direkte root-innlogging via SSH?

    Det anbefales ikke som en permanent innstilling, fordi det øker eksponeringen mot brute-force-angrep.

    Hvis du trenger direkte root-innlogging midlertidig, for eksempel til et installasjonsprogram, bør du vurdere å deaktivere den igjen etterpå og begrense SSH-tilgangen med brannmur eller IP Access Rules mens den er aktiv.

  • Må jeg aktivere root-innlogging via SSH for å bruke root-brukeren?

    Nei.

    Etter at du har satt et root-passord, kan du få en root-shell med:

    su -

    Du kan også kjøre enkeltkommandoer med sudo uten å aktivere direkte root-innlogging via SSH.

  • Hva skjer med root-passordet og SSH-innstillingene etter Redeploy?

    Redeploy installerer operativsystemet fra bunnen av. Root-kontoen tilbakestilles da til standardtilstanden, og PermitRootLogin får tilbake standardverdien.

  • Kan jeg bruke SSH-nøkkel for root-innlogging i stedet for passord?

    Ja. Legg den offentlige SSH-nøkkelen til i:

    /root/.ssh/authorized_keys
Var denne artikkelen nyttig?

Fant du ikke det du trengte?

Chat med oss

Trenger du hjelp? Chat med oss direkte hverdager mellom kl. 8:30-16:30

Snakk med oss

Du kan ringe oss direkte på hverdager mellom kl. 09:00-15:00