Fiks 'Brukernavn er ikke i Sudoers-filen. Denne hendelsen vil bli rapportert


I Unix/Linux-systemer er root-brukerkontoen superbrukerkontoen, og den kan derfor brukes til å gjøre alt som er oppnåelig på systemet.

Dette kan imidlertid være veldig farlig på så mange måter – en kan være at root-brukeren kan skrive inn en feil kommando og bryte hele systemet eller en angriper kan få tilgang til en root-brukerkonto og ta kontroll av hele systemet og hvem vet hva han/hun kan gjøre.

Basert på denne bakgrunnen, i Ubuntu- og Ubuntu-derivater, er root-brukerkontoen låst som standard, vanlige brukere (systemadministratorer eller ikke) kan bare få superbrukerprivilegier ved å bruke sudo kommando.

Og en av de verste tingene som kan skje med en Ubuntu-systemadministrator er å miste rettighetene til å bruke sudo-kommandoen, en situasjon som ofte refereres til som "broken sudo ". Dette kan være helt ødeleggende.

En ødelagt sudo kan være forårsaket av ett av følgende:

  • En bruker skal ikke ha blitt fjernet fra sudo- eller admin-gruppen.
  • /etc/sudoers-filen ble endret for å hindre brukere i sudo- eller admin-gruppen fra å heve rettighetene sine til rettighetene til root< ved å bruke sudo-kommandoen.
  • Tillatelsen for /etc/sudoers-filen er ikke satt til 0440.

For å utføre viktige oppgaver på systemet ditt, som å vise eller endre viktige systemfiler, eller oppdatere systemet, trenger du kommandoen sudo for å få superbrukerrettigheter. Hva om du blir nektet bruk av sudo på grunn av en eller flere av grunnene vi nevnte ovenfor.

Nedenfor er et bilde som viser et tilfelle der standard systembruker blir forhindret fra å kjøre sudo-kommandoen:

tecmint@TecMint ~ $ sudo visudo
[ sudo ] password for aaronkilik:
aaronkilik is not in the sudoers file.   This incident will be reported.

tecmint@TecMint ~ $ sudo apt install vim
[ sudo ] password for aaronkilik:
aaronkilik is not in the sudoers file.   This incident will be reported.

Slik fikser du ødelagt sudo-kommando i Ubuntu

Hvis du tilfeldigvis bare kjører Ubuntu på maskinen din, trykker du på Shift-tasten i noen sekunder etter å ha slått den på strøm for å starte Grub Meny. På den annen side, hvis du kjører en dual-boot (Ubuntu sammen med Windows eller Mac OS X), bør du se Grub-oppstartsmenyen som standard.

Bruk pil ned, velg «Avanserte alternativer for Ubuntu» og trykk Enter.

Du vil være i grensesnittet nedenfor, velg kjernen med «gjenopprettingsmodus»-alternativet som nedenfor og trykk Enter for å gå videre til «Gjenopprettingsmenyen > ”.

Nedenfor er "Gjenopprettingsmenyen ", som indikerer at rotfilsystemet er montert som skrivebeskyttet. Gå over til linjen «root Drop to root shell prompt», og trykk deretter Enter.

Deretter trykker du på Enter for vedlikehold:

På dette tidspunktet bør du være ved root-ledeteksten. Som vi hadde sett før, er filsystemet montert som skrivebeskyttet, derfor for å gjøre endringer i systemet må vi remontere er som lese/skrive ved å kjøre kommandoen nedenfor:

mount -o rw,remount /

Løser sak #1 – Legg til bruker i sudo- eller admin-gruppen

Forutsatt at en bruker har blitt fjernet fra sudo-gruppen, for å legge brukeren tilbake til sudo-gruppen, utfør kommandoen nedenfor:

adduser username sudo

Merk: Husk å bruke det faktiske brukernavnet på systemet, i mitt tilfelle er det aaronkilik.

Ellers, under forutsetning av at en bruker er fjernet fra admin-gruppen, kjør følgende kommando:

adduser username admin

Løse sak #2 – Gi sudo-privilegier til brukere

Forutsatt at /etc/sudoers-filen ble endret for å hindre brukere i sudo- eller admin-gruppen fra å heve privilegiene sine til en superbruker, og lag deretter en sikkerhetskopi av sudoers-filene som følger:

cp /etc/sudoers /etc/sudoers.orginal

Deretter åpner du sudoers-filen.

visudo

og legg til innholdet nedenfor:

#
This file MUST be edited with the 'visudo' command as root.
#
Please consider adding local content in /etc/sudoers.d/ instead of
directly modifying this file.
#
See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbi$

Host alias specification

User alias specification

Cmnd alias specification

User privilege specification
root    ALL=(ALL:ALL) ALL

Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

Løser sak #3 – Innstilling av riktig tillatelse på sudoers-fil

Anta at tillatelsen til /etc/sudoers-filen ikke er satt til 0440, så kjør følgende kommando for å gjøre det riktig:

chmod  0440  /etc/sudoers

Sist men ikke minst, etter å ha kjørt alle nødvendige kommandoer, skriv inn exit-kommandoen for å gå tilbake til «Recovery-menyen »:

exit 

Bruk høyrepilen for å velge og trykk Enter:

Trykk for å fortsette med normal oppstartssekvens:

Sammendrag

Denne metoden skal fungere helt fint, spesielt når det er en administrativ brukerkonto involvert, der det ikke er noe annet alternativ enn å bruke gjenopprettingsmodus.

Men hvis det ikke fungerer for deg, prøv å komme tilbake til oss ved å uttrykke din opplevelse via tilbakemeldingsdelen nedenfor. Du kan også gi forslag eller andre mulige måter å løse problemet på eller forbedre denne veiledningen totalt.