Android

Hur man kör sudo-kommando utan lösenord

How to execute all sudo commands without password

How to execute all sudo commands without password

Innehållsförteckning:

Anonim

Kommandot sudo tillåter betrodda användare att köra program som en annan användare, som standard root-användare. Om du spenderar mycket tid på kommandoraden, är sudo ett av de kommandon du kommer att använda på ofta.

För att ge sudo-åtkomst till en användare måste du vanligtvis lägga till användaren i sudo-gruppen som definieras i sudoers filen. På Debian, Ubuntu och deras derivat beviljas medlemmar i gruppen sudo med sudo-privilegier medan på RedHat-baserade distributioner som CentOS och Fedora, namnet på sudo-gruppen är wheel .

Varje medlem i denna grupp uppmanas att ange lösenordet innan ett sudo-kommando körs. Detta lägger till ett extra lager av säkerhet och det är det föredragna sättet att ge sudo privilegier till användarna.

I vissa situationer, till exempel att köra automatiserade skript, kan du dock behöva konfigurera sudoers-filen och låta vissa användare köra sudo kommandon utan att bli ombedda lösenordet.

Lägga till användare i Sudoers-filen

Sudoers-filen innehåller information som bestämmer användarens och gruppens sudo-privilegier.

Du kan konfigurera användarens sudo-åtkomst genom att modifiera sudoers-filen eller genom att lägga till en konfigurationsfil i /etc/sudoers.d . De filer som skapats i den här katalogen kommer att inkluderas i sudoers-filen.

Innan du gör några ändringar är det en bra idé att säkerhetskopiera den aktuella filen:

sudo cp /etc/sudoers{,.backup_$(date +%Y%m%d)} Datumkommandot lägger till det aktuella datumet i säkerhetskopian.

Öppna /etc/sudoers med visudo kommandot:

sudo visudo

Använd alltid visudo när du gör ändringar i filen visudo . Detta kommando kontrollerar filen efter redigering, och om det finns ett syntaxfel kommer det inte att spara ändringarna. Om du öppnar filen med en textredigerare kommer ett syntaxfel att leda till att sudo-åtkomsten förloras.

På de flesta system öppnar visudo kommandot /etc/sudoers med vim-textredigeraren. Om du inte har erfarenhet av vim kan du använda en annan textredigerare. Till exempel, för att ändra redigeraren till GNU nano skulle du köra:

sudo EDITOR=nano visudo

Rulla ner till slutet av filen och lägg till följande rad som gör det möjligt för användaren att "linuxize" att köra alla kommandon med sudo utan att bli ombedda ett lösenord:

/ etc / sudoers

linuxize ALL=(ALL) NOPASSWD:ALL Glöm inte att ändra "linuxize" med det användarnamn du vill ge åtkomst till.

Till exempel, för att endast tillåta mkdir och mv kommandona du skulle använda:

/ etc / sudoers

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

När du är klar sparar du filen och lämnar redigeraren.

Använda /etc/sudoers.d

Istället för att redigera sudoers-filen kan du skapa en ny fil med behörighetsreglerna i /etc/sudoers.d . Detta tillvägagångssätt gör hanteringen av sudo-privilegier mer hållbar.

Öppna din textredigerare och skapa filen:

sudo nano /etc/sudoers.d/linuxize

Du kan namnge filen som du vill, men vanligtvis är det en bra idé att använda användarnamnet som filnamn.

/etc/sudoers.d/linuxize

Lägg till samma regel som du skulle lägga till i Sudoers-filen:

linuxize ALL=(ALL) NOPASSWD:ALL

Spara slutligen filen och stäng redigeraren.

Slutsats

Vi har visat dig hur du redigerar /etc/sudoers så att du kan köra sudo kommandon utan att ange ett lösenord. Detta är användbart när du har skript där en användare som inte är root behöver utföra administrativa uppgifter.

terminal sudo