Zoeken op website

Fix 'Gebruikersnaam staat niet in het Sudoers-bestand. Dit incident zal worden gerapporteerd


In Unix/Linux-systemen is het rootgebruikersaccount het supergebruikersaccount en kan daarom worden gebruikt om alles te doen wat mogelijk is op het systeem.

Dit kan echter op veel manieren erg gevaarlijk zijn. Eén daarvan kan zijn dat de root-gebruiker een verkeerd commando invoert en het hele systeem kapot maakt, of dat een aanvaller toegang krijgt tot een root-gebruikersaccount en de controle overneemt van het hele systeem en wie weet wat hij/zij kan doen.

Op basis van deze achtergrond is in Ubuntu en Ubuntu-derivaten het root-gebruikersaccount standaard vergrendeld; gewone gebruikers (systeembeheerders of niet) kunnen alleen superuser-rechten verkrijgen door de sudo-opdracht.

En een van de ergste dingen die een Ubuntu-systeembeheerder kan overkomen, is het verliezen van de rechten om de opdracht sudo te gebruiken, een situatie die gewoonlijk “broken sudo” wordt genoemd. Dit kan absoluut verwoestend zijn.

Een kapotte sudo kan de volgende oorzaken hebben:

  • Een gebruiker mag niet zijn verwijderd uit de sudo- of admin-groep.
  • Het bestand /etc/sudoers is gewijzigd om te voorkomen dat gebruikers in de groep sudo of admin hun rechten verhogen naar die van root< met behulp van de opdracht sudo.
  • De toestemming voor het bestand /etc/sudoers is niet ingesteld op 0440.

Om cruciale taken op uw systeem uit te voeren, zoals het bekijken of wijzigen van belangrijke systeembestanden, of het updaten van het systeem, heeft u de opdracht sudo nodig om superuser-rechten te verkrijgen. Wat moet u doen als u het gebruik van sudo wordt geweigerd vanwege een of meer van de hierboven genoemde redenen?

Hieronder ziet u een afbeelding die een geval toont waarin de standaardsysteemgebruiker de opdracht sudo niet kan uitvoeren:

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.

Hoe u een gebroken sudo-commando in Ubuntu kunt repareren

Als u alleen Ubuntu op uw machine gebruikt, drukt u na het inschakelen een paar seconden op de Shift-toets om Grub op te starten menu. Aan de andere kant, als je dual-boot gebruikt (Ubuntu naast Windows of Mac OS X), dan zou je standaard het Grub-opstartmenu moeten zien.

Gebruik de pijl-omlaag, selecteer “Geavanceerde opties voor Ubuntu ” en druk op Enter.

Je bevindt je nu in de onderstaande interface, selecteer de kernel met de optie “herstelmodus” zoals hieronder en druk op Enter om door te gaan naar het “Herstelmenu > ”.

Hieronder ziet u het “Herstelmenu”, wat aangeeft dat het rootbestandssysteem als alleen-lezen is aangekoppeld. Ga naar de regel “root Drop to root shell prompt” en druk op Enter.

Druk vervolgens op Enter voor onderhoud:

Op dit punt zou u zich bij de root shell-prompt moeten bevinden. Zoals we eerder hadden gezien, is het bestandssysteem aangekoppeld als alleen-lezen. Om wijzigingen aan te brengen in het systeem dat we opnieuw moeten aankoppelen, gebeurt dit als lezen/schrijven door de onderstaande opdracht uit te voeren:

mount -o rw,remount /

Casus #1 oplossen – Gebruiker toevoegen aan sudo of admin Group

Ervan uitgaande dat een gebruiker uit de sudo-groep is verwijderd, geeft u de onderstaande opdracht uit om de gebruiker weer aan de sudo-groep toe te voegen:

adduser username sudo

Opmerking: vergeet niet om de daadwerkelijke gebruikersnaam op het systeem te gebruiken; in mijn geval is dit aaronkilik.

Of voer, op voorwaarde dat een gebruiker uit de beheerdersgroep is verwijderd, de volgende opdracht uit:

adduser username admin

Casus #2 oplossen – Sudo-rechten verlenen aan gebruikers

Ervan uitgaande dat het bestand /etc/sudoers is gewijzigd om te voorkomen dat gebruikers in de groep sudo of admin hun rechten verhogen naar die van een supergebruiker en maak vervolgens als volgt een back-up van de sudoers-bestanden:

cp /etc/sudoers /etc/sudoers.orginal

Open vervolgens het bestand sudoers.

visudo

en voeg de onderstaande inhoud toe:

#
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

Geval nr. 3 oplossen – De juiste toestemming instellen voor het sudoers-bestand

Stel dat de toestemming voor het bestand /etc/sudoers niet is ingesteld op 0440, voer dan de volgende opdracht uit om dit goed te maken:

chmod  0440  /etc/sudoers

Tenslotte typt u, nadat u alle noodzakelijke opdrachten heeft uitgevoerd, de opdracht exit om terug te gaan naar het “Herstelmenu ”:

exit 

Gebruik de pijl naar rechts om te selecteren en druk op Enter:

Druk op om door te gaan met de normale opstartvolgorde:

Samenvatting

Deze methode zou prima moeten werken, vooral als het om een beheerdersgebruikersaccount gaat, waarbij er geen andere keuze is dan de herstelmodus te gebruiken.

Als het voor u echter niet werkt, probeer dan contact met ons op te nemen door uw ervaringen kenbaar te maken via het feedbackgedeelte hieronder. U kunt ook suggesties of andere mogelijke manieren geven om het probleem op te lossen of deze handleiding helemaal te verbeteren.