sudo-kommandot tillåter icke-root-användare att köra kommandon som normalt skulle kräva Superanvändarbehörighet, medan sudoers-filen instruerar systemet hur man hanterar sudo-kommandot. I den här handledningen visar vi dig alla sudo command basics och hur du redigerar sudoers-filen.
förstå Sudo
för att visa hur sudo fungerar, först komma åt dina VPS via SSH. Om du har problem, kolla in kitt handledning.
som standard behöver root-användaren inte använda sudo-prefixet. De har redan alla möjliga privilegier., Under tiden, om en icke-root-användare vill lägga till en annan användare, skulle de behöva lägga till sudo-prefixet till useradd-kommandot, så här:
sudo useradd edward
om användaren inte använder sudo-prefixet får de en behörighet som nekas utmatning.
sudoers-filen
sudo-kommandot konfigureras via en fil som finns i/ etc / som heter sudoers.
genom sudo-kommandot ger du administratörsnivåbehörighet till vanliga användare. Normalt har den första användaren du skapar när du installerar Ubuntu sudo-rättigheter. I en vps-miljö som är standardanvändaren root., Du kan konfigurera andra användare för att också kunna köra sudo-kommandot. Det kan göras genom att redigera sudoers.
viktigt: var försiktig! Redigering av sudoers-filen, med fel eller dålig syntax kan leda till att alla användare låses ut på distributionen.
Filsyntax för sudoers
Du kan öppna filen med din föredragna textredigerare., Vi använder vi:
vi /etc/sudoers
vår VPS – fil ser ut så här:
låt oss titta på några av de format och regler som ska följas vid redigering av sudoers:
- alla linjer som börjar med # är kommentarer
- root ALL=(alla:Alla) all – den här raden betyder att rotanvändaren har obegränsade privilegier och kan köra något kommando på systemet
- %admin ALL=(Alla) all – % – tecknet anger en grupp., Vem som helst i administratörsgruppen har samma rättigheter som root-användare
- %sudo ALL=(ALL:ALL) ALL – alla användare i sudo-gruppen har behörighet att köra ett kommando
en annan rad av intresse är #includedir /etc/sudoers.d, det betyder att vi kan lägga till konfigurationer till filen sudoers.d och länka den här.
redigera sudoers-filen
för att redigera/etc/sudoers-filen, använd följande kommando:
sudo visudo -f /etc/sudoers
det rekommenderas att använda visudo för att redigera sudoers-filen. Visudo ser till att sudoers redigeras av en användare i taget och ger nödvändiga syntaxkontroller.,
för att se vilka användare som är i sudo-gruppen kan vi använda ett grep-kommando:
grep ‘sudo’ /etc/group
detta kommer att mata ut en lista med användarnamn.
för att lägga till en användare som heter bill till sudo-gruppen använder vi adduser-kommandot i kommandoraden, som så:
adduser bill sudo
om vi använder grep-kommandot för att kontrollera vem som är i gruppen ser vi användarnamnsräkningen.
om du vill ge någon root-behörighet, lägg bara till dem i sudo.
för att ta bort en användare från sudo:
deluser bill sudo
deluser-kommandot tar bort räkningen från sudo-gruppen.,
Nu kan användarräkningen inte längre utföra åtgärder som kräver sudo-privilegier.
använd sudoers-filen för att ge specifika privilegier
vad händer om vi vill att bill ska kunna köra endast specifika typer av kommandon med sudo-privilegier,som nätverk?
för att göra det skapar vi en konfigurationsfil i /etc/sudoers.d / kallas nätverk.
använd följande kommando för att skapa filen:
sudo visudo -f /etc/sudoers.d/networking
Lägg till följande text i filen:
vad vi har gjort i filen ovan är att skapa en netadmin-grupp., Användare i netadmin-gruppen kan köra kommandon som anges i NETALL. NETALL inkluderar i sin tur alla kommandon under CAPTURE och servrar Alias. Kommandot tcpdump är enligt FÅNGA alias dvs /usr/sbin/tcpdump.
nästa lägger vi till användarräkning till netadmin-gruppen:
sudo adduser bill netadmin
nu kommer användarräkningen att kunna köra tcpdump-kommandot tillsammans med andra nätverksrelaterade kommandon.
avsluta
om du arbetar med flera användare är det ett absolut måste att förstå sudo-kommandot och sudoers-filen., I den här handledningen lärde du dig alla grunderna för att ta kontroll över systemets privilegier!
Lämna ett svar