Android

Hoe sudo commando zonder wachtwoord uit te voeren

How to execute all sudo commands without password

How to execute all sudo commands without password

Inhoudsopgave:

Anonim

Met de opdracht sudo kunnen vertrouwde gebruikers programma's uitvoeren als een andere gebruiker, standaard de rootgebruiker. Als u veel tijd doorbrengt op de opdrachtregel, is sudo een van de opdrachten die u vaak gebruikt.

Om sudo-toegang te verlenen aan een gebruiker, moet u meestal de gebruiker toevoegen aan de sudo-groep die in het sudoers bestand is gedefinieerd. Op Debian, Ubuntu en hun derivaten krijgen leden van de groep sudo sudo-privileges, terwijl op op RedHat gebaseerde distributies zoals CentOS en Fedora de naam van de sudo-groep wheel .

Elk lid van deze groep wordt gevraagd het wachtwoord in te voeren voordat een sudo-opdracht wordt uitgevoerd. Dit voegt een extra beveiligingslaag toe en het is de voorkeursmanier om sudo-rechten aan de gebruikers te verlenen.

In sommige situaties, zoals het uitvoeren van geautomatiseerde scripts, moet u echter mogelijk het sudoers-bestand configureren en bepaalde gebruikers toestaan sudo opdrachten uit te voeren zonder om het wachtwoord te worden gevraagd.

Gebruiker toevoegen aan het Sudoers-bestand

Het sudoers-bestand bevat informatie die de sudo-rechten van een gebruiker en groep bepaalt.

U kunt de sudo-toegang van de gebruiker configureren door het sudoers-bestand te wijzigen of door een configuratiebestand toe te voegen aan de map /etc/sudoers.d . De bestanden die in deze map zijn gemaakt, worden opgenomen in het bestand sudoers.

Voordat u wijzigingen aanbrengt, is het een goed idee om een ​​back-up van het huidige bestand te maken:

sudo cp /etc/sudoers{,.backup_$(date +%Y%m%d)} De opdracht date voegt de huidige datum toe aan de naam van het back-upbestand.

Open het bestand /etc/sudoers visudo met de opdracht visudo :

sudo visudo

Gebruik visudo wanneer u wijzigingen aanbrengt in het bestand visudo . Deze opdracht controleert het bestand na het bewerken en als er een syntaxisfout is, worden de wijzigingen niet opgeslagen. Als u het bestand opent met een teksteditor, leidt een syntaxisfout tot het verliezen van de sudo-toegang.

Op de meeste systemen opent het visudo commando het bestand /etc/sudoers met de vim-teksteditor. Als je geen ervaring hebt met vim, kun je een andere teksteditor gebruiken. Als u bijvoorbeeld de editor wilt wijzigen in GNU nano, zou u het volgende uitvoeren:

sudo EDITOR=nano visudo

Blader naar het einde van het bestand en voeg de volgende regel toe waarmee de gebruiker "linuxize" elke opdracht met sudo zonder om een ​​wachtwoord te worden gevraagd:

/ Etc / sudoers

linuxize ALL=(ALL) NOPASSWD:ALL Vergeet niet om "linuxize" te wijzigen met de gebruikersnaam waartoe u toegang wilt verlenen.

Als u bijvoorbeeld alleen de opdrachten mkdir en mv wilt toestaan, gebruikt u:

/ Etc / sudoers

linuxize ALL=(ALL) NOPASSWD:/bin/mkdir, /bin/mv

Sla het bestand op en verlaat de editor.

/etc/sudoers.d

In plaats van het bestand sudoers te bewerken, kunt u een nieuw bestand maken met de autorisatieregels in de map /etc/sudoers.d . Deze aanpak maakt het beheer van de sudo-rechten onderhoudbaarder.

Open uw teksteditor en maak het bestand:

sudo nano /etc/sudoers.d/linuxize

U kunt het bestand een naam geven zoals u wilt, maar meestal is het een goed idee om de gebruikersnaam als de naam van het bestand te gebruiken.

/etc/sudoers.d/linuxize

Voeg dezelfde regel toe als u zou toevoegen aan het bestand sudoers:

linuxize ALL=(ALL) NOPASSWD:ALL

Sla ten slotte het bestand op en sluit de editor.

Conclusie

We hebben u laten zien hoe u de /etc/sudoers kunt bewerken, zodat u sudo opdrachten kunt uitvoeren zonder een wachtwoord in te voeren. Dit is handig als u scripts hebt waarbij een niet-rootgebruiker beheertaken moet uitvoeren.

terminal sudo