Slik aktiverer du root-pålogging på din Linux Cloud Server
Du kan låse opp root-kontoen, og om nødvendig aktivere direkte root SSH-pålogging på din Linux Cloud Server. Dette er nyttig når en applikasjon eller et installasjonsprogram spesifikt krever root-brukeren i stedet for sudo. Det gjelder alle one.com uadministrerte Cloud Server (VPS)-produkter som kjører Linux.
Før du starter, må du sørge for at du har:
- En kjørende Cloud Server med en Linux-distribusjon installert.
- Tilgang til serveren din via SSH eller oneHome Web-konsollen, ved bruk av din standard sudo-bruker. Se Koble til din Linux Cloud Server via SSH hvis du ikke har gjort dette ennå.
- Passordet til sudo-brukeren din for å autorisere trinnene nedenfor.
-
Hvorfor du kan trenge root-tilgang
Som standard er en ny Cloud Server klargjort med en ikke-root-bruker (
administratorsom standard) som har fullesudo-rettigheter, i stedet for en root-konto med et angitt passord eller direkte root SSH-pålogging. Dette er tilsiktet: det følger vanlig Linux-herdingspraksis og reduserer eksponering for automatiserte brute-force-angrep mot det velkjente "root"-brukernavnet. For de fleste daglige administrasjonsoppgaver er det tilstrekkelig å kjøre kommandoer medsudo, og dette er den anbefalte fremgangsmåten.Når det er sagt, krever enkelte applikasjoner, installasjonsprogrammer eller skript eksplisitt den ekte root-brukeren, for eksempel ved kontroll av
$EUID -eq 0, i stedet for et sudo-forhøyet skall, og nekter å kjøre korrekt under kunsudo. -
Når du kan trenge dette
Typiske situasjoner der du trenger dette:
- Installasjon av programvare med et installasjonsprogram som krever et root-skall.
- Kjøring av tredjeparts installasjonsskript som avviser
sudoog krever bokstavelig root. - Arbeid med eldre applikasjoner eller verktøy som kun er utformet for root.
- Gjenoppretting av tilgang hvis sudo-brukerkontoen din blir låst, slettet eller sudoers-konfigurasjonen blir ødelagt. Et root-passord er din reservevei tilbake til serveren.
- Reparasjon av systemet i redningsmodus, for eksempel ved en ødelagt oppstartslaster eller filsystemproblem, der arbeid inne i en chroot betyr at sudos vanlige mekanismer kanskje ikke er pålitelig tilgjengelige.
- Migrering av en fullstendig server eller synkronisering av en komplett sikkerhetskopi med
rsyncellerscpsom root, slik at fil-eierskap og tillatelser overføres nøyaktig over hele systemet. - Kjøring av interaktive oppsettverktøy, som
dpkg-reconfigureeller enkelte databasekonfigurasjonsveivisere, som forventer et ekte root-påloggingsmiljø (HOME=/root, full rootPATH), noesudo <command>alene ikke fullt ut gjenskaper. - Administrering av cron-jobber som eies av root, eller la en overvåkings- eller sikkerhetskopieringsagent installere seg selv som en systemd-tjeneste eid av root.
Trinnvise instruksjoner
-
Del 1: sett et root-passord (påkrevd første steg)
Dette er det påkrevde første steget, og gir deg et root-skall uten å åpne opp SSH.
- Koble til din Cloud Server via SSH eller nettkonsollen, ved å bruke din standard sudo-bruker.
- Sett et passord for root-kontoen:
sudo passwd root
- Skriv inn og bekreft et sterkt nytt passord når du blir bedt om det.
- Du kan nå bytte til root-brukeren fra din nåværende økt når som helst:
su -
Hvis du bare trenger et root-skall eller ønsker å kjøre individuelle kommandoer som root, trenger du ikke å gå videre;
su -ogsudodekker allerede dette uten å eksponere SSH. -
Del 2: aktiver direkte root-innlogging via SSH (valgfritt)
Gjør bare dette hvis noe spesifikt krever at du logger inn som root over SSH, i stedet for å bytte til root etter tilkobling.
- Åpne konfigurasjonsfilen for SSH-tjeneren:
sudo nano /etc/ssh/sshd_config
- Finn linjen som starter med
PermitRootLogin. Den kan være kommentert ut med en#, eller satt tilnoellerprohibit-password. - Endre den til:
PermitRootLogin yes
- Lagre og lukk filen.
- Start SSH-tjenesten på nytt for å bruke endringen:
sudo systemctl restart sshd
- Du kan nå koble til direkte som root:
ssh root@
For å bruke en SSH-nøkkel i stedet for et passord for root-innlogging, legg til den offentlige nøkkelen din i
/root/.ssh/authorized_keys.
Viktig å vite
Aktivering av direkte root-SSH-innlogging øker serverens angrepsflate
"root" er et velkjent brukernavn som automatiserte roboter spesifikt retter seg mot med brute-force-innloggingsforsøk. Hvis du aktiverer det, begrens SSH-tilgang til betrodde IP-er via brannmur / IP-tilgangsregler, og bruk et sterkt, unikt passord eller SSH-nøkkelautentisering. Når du ikke lenger trenger direkte root-SSH-innlogging, tilbakestillPermitRootLogintilnoellerprohibit-password.
-
Viktige merknader
- Håndtering og sikring av root-tilgang ligger utelukkende i gjesteoperativsystemet ditt og er ditt ansvar. Dette faller utenfor det plattformstyrte laget av din uadministrerte Cloud Server.
- En redeploy installerer operativsystemet på nytt fra bunnen av, noe som tilbakestiller root-kontoen til standard låst tilstand og
PermitRootLogintilbake til standardverdien.
- Håndtering og sikring av root-tilgang ligger utelukkende i gjesteoperativsystemet ditt og er ditt ansvar. Dette faller utenfor det plattformstyrte laget av din uadministrerte Cloud Server.
-
Feilsøking
Hvis trinnene ovenfor ikke fungerer, er her noen andre ting du kan sjekke:
-
"passwd: Authentication token manipulation error"
Sjekk at filsystemet ikke er fullt eller montert som skrivebeskyttet (df -h).
-
Root-pålogging fortsatt nektet etter endring av
PermitRootLogin
Bekreft at du startet SSH-tjenesten på nytt (sudo systemctl restart sshd), og se etter en motstridende overstyringsfil i/etc/ssh/sshd_config.d/.
-
"Permission denied (publickey)" ved tilkobling som root via SSH
Hvis serveren din kun godtar nøkkelbasert autentisering, må du legge til SSH-nøkkelen din i/root/.ssh/authorized_keys, eller sørge for at passordautentisering også er tillatt hvis det er slik du har tenkt å logge inn.
-
Låst ute etter redigering av
sshd_config
Bruk nettkonsollen i oneHome, som ikke krever SSH, for å fikse konfigurasjonsfilen og starte SSH-tjenesten på nytt.
-
"passwd: Authentication token manipulation error"
Relaterte artikler: