sudo er nok en af de mest brugte Linux-kommandoer. Det giver dig mulighed for at få administrative eller forhøjede privilegier på en Linux-maskine.
Du har normalt brug for forhøjede privilegier for at udføre handlinger såsom installation af software, administration af tjenester og sletning af kritiske systemfiler. Men vidste du, at der er alternativer til sudo-kommandoen på Linux?
Hvorfor udføre Linux-kommandoer som en anden bruger?
sudo er en meget vigtig kommando, fordi den giver dig mulighed for at udføre kommandoer med superbrugerrettigheder. Som standard har ikke-rootbrugere normalt begrænset adgang til ressourcer og filer på Linux.
Det er meget vigtigt at begrænse adgangen til brugere på Linux af følgende årsager:
- Styring: Det giver administratorer eller ejere af systemet mulighed for at give specifik adgang til bestemte filer og programmer. Dette er godt for systemstabilitet, privatliv og overordnet ydeevne.
- Sikkerhed: Begrænsning af adgang til visse dele af systemet forhindrer utilsigtet sletning eller ændringer af systemet. Og det også reducerer systemets angrebsflade.
sudo fungerer fint og gør meget mere end hvad de fleste bruger det til. Desværre gør dette den meget oppustet.
Heldigvis, som med de fleste ting på Linux, er der nogle gode alternativer til sudo-kommandoen, og her er nogle af dem.
1. pkexec
Kommandoen pkexec (PolicyKit Executive) er en frontend-implementering af PolicyKit-rammeværket, som giver et sæt regler for tildeling af privilegier til brugere og processer.
pkexec giver dig mulighed for at udføre en kommando med en anden brugers eller rolles privilegier baseret på reglerne defineret i en specificeret politik.
Pkexec-værktøjet er allerede installeret på Ubuntu og andre større Linux-distros. Hvis det ikke er installeret, kan du se, hvordan du installerer det.
På Debian-baserede systemer skal du køre:
sudo apt opdatering && sudo apt installere politiksæt-1
På RHEL og lignende distributioner skal du køre:
sudo dnf installere politiksæt
På Arch-baserede Linux distros skal du bruge følgende kommando:
sudo sudo pacman -S policykit
Sådan bruges pkexec
For at bruge pkexec skal du først angive pkexec nøgleordet efterfulgt af den kommando, du vil udføre, efterfulgt af eventuelle argumenter eller muligheder, som kommandoen kræver.
For eksempel at installere det sjove Linux-program: cowsay på dit system ved hjælp af superbrugerrettigheder, ville du bruge følgende:
pkexec apt installere cowsay
Du kan også angive en bruger eller rolle, som du skal have rettighederne til, ved at bruge --bruger valgmulighed efterfulgt af navnet på brugeren eller rollen. For eksempel, for at udføre den foregående kommando med admin-brugerens privilegier, skal du bruge følgende kommando:
pkexec --user admin apt installer cowsay
Du skal også indtaste adgangskoden til den bruger eller rolle, du har angivet i kommandoen. Hvis du ikke har de nødvendige tilladelser, får du en fejlmeddelelse.
2. doas
Doas-kommandoen har sin oprindelse i OpenBSD-operativsystemet. Det giver dig mulighed for at udføre en kommando med rettighederne for en bestemt bruger eller rolle.
Den minder meget om sudo-kommandoen, men den er moderne, meget let og nem at konfigurere, fordi den bruger kortfattede og læsbare udsagn.
Hvis det ikke er, her er, hvordan du kan installere doas på Linux.
Konfiguration af doas på Linux
I modsætning til sudo og pkexec kommandoer, skal du konfigurere en nyligt installeret forekomst af doas, før du begynder at bruge den. Konfigurationsfilen er placeret på /etc/doas.conf. Hvis konfigurationsfilen ikke findes, oprette en ved hjælp af berøringskommandoen eller ethvert andet program efter eget valg.
For at give brugeren "mwizak" superbrugerrettigheder på dit system, kan du tilføje følgende linje til /etc/doas.conf fil:
tillade persist :mwizak som rod
Husk at erstatte brugeren "mwizak" i den førnævnte kommando med det korrekte brugernavn.
Efter at have gemt konfigurationsændringerne, prøv at installere cowsay ved hjælp af følgende kommando:
doas apt installere cowsay
For at bruge en anden bruger, kan du bruge -u flag efterfulgt af brugernavnet. Det ligner --bruger flag brugt sammen med kommandoen pkexec.
For at køre den foregående kommando som systemadministrator, ville du for eksempel køre:
doas -u admin apt installere cowsay
3. su
Su-kommandoen er en forkortelse for "skift bruger." Det giver dig mulighed for at udføre kommandoer som andre brugere end den aktuelt loggede bruger. Det bruges normalt til at køre kommandoer, der kræver root-privilegier, men du kan bare køre enhver anden kommando ved hjælp af su.
At køre su-kommandoen uden nogen argumenter antager root-brugeren, så du skal kende root-bruger-adgangskoden for at fortsætte. Hvis du skulle skifte til en bruger ved navn john, ville du blot køre kommandoen:
su john
Indtast adgangskoden til brugeren john. For at skifte tilbage til den oprindelige bruger skal du blot køre Afslut kommando.
Vær opmærksom på, at det normalt ikke anbefales at køre kommandoer som root-bruger, fordi du ikke bliver bedt om en adgangskode på hver kommando, du kører, hvilket kan føre til katastrofale konsekvenser, såsom utilsigtet sletning filer.
4. dzdo
dzdo er et kommandolinjeværktøj, der bruges til at udføre kommandoer med en anden brugers privilegier, såsom superbrugeren eller root-brugeren. Det ligner sudo-kommandoen, som almindeligvis bruges til samme formål. Kommandoen dzdo er for det meste tilgængelig på Oracle Linux.
Du kan bruge -u flag for at angive den bruger, hvis privilegier du vil bruge. For eksempel vil følgende kommando udføre apt-get opdatering kommando med superbrugerens privilegier (rod):
dzdo -u root apt-få opdatering
Systemet vil bede dig om at indtaste den relevante adgangskode for at bekræfte, at du har de nødvendige rettigheder til at køre kommandoen.
Brug de korrekte brugerkontroller til forbedret sikkerhed på Linux
sudo er en almindeligt brugt kommando på Linux-systemer, der tillader en bruger at udføre en kommando med root-brugerens privilegier. Afhængigt af dine behov kan du bruge alle sudo-alternativer i din arbejdsgang.
På Linux er det også vigtigt at tildele de korrekte adgangsniveauer til filer og mapper for bedre sikkerhed.