Uvod
Linux sudo naredba je kratica za Super korisnik Do . Općenito, primjenjuje se kao prefiks nekoliko naredbi koje superkorisnik smije izvršiti.
Ako naredbi dodamo prefiks zajedno s drugim naredbama, izvršit će tu naredbu s visokim privilegijama. Drugim riječima, dopustiti će korisniku uz odgovarajuću autorizaciju da koristi naredbu kao i drugi korisnici poput superkorisnika.
Jednako je opciji 'Pokreni kao administrator' u sustavu Windows. Opcija sudo nam omogućuje da imamo više od jednog administratora. Korisnici koji mogu primijeniti naredbu sudo zahtijevaju da se unos unutar datoteke sudoers nalazi na '/etc/sudoers/' .
Napomena: Za pregled ili uređivanje datoteke moramo primijeniti naredbu sudo. Za uređivanje datoteke preporuča se primijeniti naredbu 'visudo'.
Naredba sudo prema zadanim postavkama zahtijeva da se korisnici verificiraju uz lozinku koja je lozinka korisnika, a ne sama root lozinka.
Sintaksa naredbe sudo
Sintaksa naredbe sudo navedena je u nastavku:
sudo OPTION... COMMAND
Opcija u naredbi sudo
Neke od važnih opcija u naredbi sudo objašnjene su u nastavku:
1. -U: To stoji za verzija . Ova opcija omogućuje naredbu sudo za ispis broja verzije i izlaz. Opcija -V bi ispisala zadane sudo liste pauza ako je korisnik koji je zatražio već root.
2. -l: To stoji za popis . Ova opcija će vam pomoći ispisati različite naredbe dopuštene korisniku preko trenutnog hosta.
To pokazuje da trenutni korisnik može primijeniti svaku naredbu kao sudo.
algoritmi pretraživanja
3. -h ili -pomoć: Slovo h označava Pomozite u ovoj opciji. Ova opcija omogućuje naredbu sudo za ispis poruke o korištenju i izlazu.
4. -u: To stoji za potvrditi . Ako bi naredba sudo ažurirala vremensku oznaku korisnika, validacija će po potrebi zatražiti lozinku korisnika. Produžuje vremensko ograničenje naredbe sudo za ostalih 5 minuta, ali ne izvršava naredbu. Ne daje nikakav rezultat.
5. -k: To stoji za ubiti . Ova opcija poništava vremensku oznaku korisnika za sudo. Dakle, prilikom sljedećeg izvršenja naredbe sudo bit će potrebna lozinka. Opcija -k ne treba lozinku i uključena je kako bi korisnicima omogućila opoziv dopuštenja naredbe sudo putem .Odjavite se datoteka.
6. -b: To stoji za pozadina . Ova opcija obavještava naredbu sudo da izvrši navedene naredbe u pozadini.
Napomena: Ako primijenimo ovu opciju, ne možemo primijeniti kontrolu posla ljuske za manipuliranje procesom.
7. -K: Ova opcija je ista kao opcija -k. Međutim, stoji za sigurno ubiti . Ova se opcija primjenjuje za potpuno uklanjanje vremenske oznake korisnika. Isto tako ne treba nikakvu lozinku.
8. -p: To stoji za potaknuti . Ova nam opcija dopušta nadjačavanje upita za lozinku (zadano) i primjenu prilagođene. Dopušteno je nekoliko postotaka bijega, a to su:
- %u se razvija prema imenu za prijavu korisnika koji poziva.
- %U je razvijen za korisničko ime za prijavu
- %h je razvijen u ime hosta (lokalno) bez ikakvog naziva domene.
- %H se razvija u naziv hosta (lokalno) s nazivom domene (samo kada je naziv hosta stroja potpuno kvalificiran)
- %% (dva uzastopna znaka) mogu se rastaviti na pojedinačni znak %.
9. -n: Ova opcija će pokrenuti naredbu bez traženja lozinke. Vrlo je korisno ako želimo izvršiti nekoliko naredbi kao pozadinske zadatke (ili unutar shell skripte), gdje ne želimo da sudo naredba pita za lozinku. Ova opcija je skraćenica za non-interactive.
konačni stroj
10. -u: To stoji za korisnik . Ova opcija omogućuje naredbi sudo izvršavanje opisanih naredbi osim root-a kao korisnika. Za određivanje a uid umjesto korisničkog imena, možemo koristiti #uid .
11. -H: To stoji za DOM . Ova opcija može postaviti a HOME varijabla okruženja našima kućni imenik root korisnika kao što je opisano unutar datoteke passwd. Naredba sudo prema zadanim postavkama ne mijenja HOME.
12. -s: To stoji za ljuska . Ova opcija izvršava ljusku opisanu kroz a SHELL varijabla okruženja kada se postavi ili ova ljuska kako je opisano unutar passwd datoteka.
13. -S: To stoji za stdin . Ova opcija omogućuje naredbu sudo za čitanje lozinke putem standardnog unosa umjesto terminalnog uređaja.
14. -: Ova opcija ilustrira da sudo naredba mora zaustaviti obradu argumenata naredbenog retka. Najkorisnije je u kombinaciji s oznakom -s.
15. -a: To stoji za vrsta ovjere . Ova opcija omogućuje naredbu sudo za korištenje opisane vrste provjere autentičnosti prilikom provjere valjanosti korisnika, kao što je dopušteno /etc/login/.config .
Administrator sustava može opisati popis metoda sudo-specifične provjere autentičnosti uključivanjem 'auto-sudo' ulaz unutar /etc/login/.config .
es5 protiv es6
Varijable okruženja u naredbi sudo
Slijede neke od varijabli okoline koje se primjenjuju naredbom sudo:
Da ne. | Označiti | Opis |
---|---|---|
1. | UREDNIK | To je zadani uređivač koji se može koristiti unutar -e načina (sudoedit) kada VISUAL nije popravljen. |
2. | DOM | Postavit će se na homedir korisnika (cilj) u načinu -H ili -s (ili kada je sudo naredba formirana s opcijom, tj., -enable-shell-sets-home). |
3. | STAZA | Postavlja se na razumnu vrijednost kada je opcija, tj. secure_path sudoers, fiksna. |
4. | LJUSKA | Može se koristiti za određivanje ljuske za izvršavanje s opcijom -s. |
5. | SUDO_NAREDBA | Postavlja se na naredbu koju izvršava naredba sudo. |
6. | SUDO_PROMPT | Može se koristiti kao upit za lozinku (zadano). |
7. | SUDO_USER | Postavlja se na prijavu korisnika koji zahtijeva naredbu sudo. |
8. | SUDO_UID | Postavlja se na korisnikov uid koji zahtijeva naredbu sudo. |
9. | SUDO_GID | Postavlja se na gid korisnika koji zahtijeva naredbu sudo. |
10. | JUG_PS1 | PS1 bi bio fiksiran na svoju vrijednost ako je postavljen. |
jedanaest. | KORISNIK | Postavlja se na korisnika (root osim ako nije opisana opcija, tj. -u). |
12. | VIZUALNO | To je zadani uređivač i koristi se unutar -e načina (sudoedit). |
Povijest naredbe sudo
Cliff Spencer i Robert Coggeshall napisali su stvarni podsustav 1980. godine na SUNY/Buffalu na Odjelu za računalne znanosti. Robert Coggeshall nosio je sudo sa sobom na Sveučilište Colorado Boulder. Značajke i kod su bitno promijenili IT članovi Tehničkog fakulteta i Odsjeka za računarstvo i primijenjenu znanost Sveučilišta Colorado Boulder s Toddom C. Millerom između 1986.-1993.
Javno, najnovijom verzijom od 1994. upravlja Todd .C Miller (programer za OpenBSD) i dijeli se od 1999. prema licenci u stilu ISC-a.
Thomas Claburn okarakterizirao je takve nesigurnosti kao prenapuhane u studenom 2009. kao odgovor na činjenicu da Microsoft ima privilegiju sudo. Usko rečeno, zahtjevi su uokvireni određenim GUI umjesto sudo pristupa.
Dizajn naredbe sudo
Korisnici mogu unijeti svoju lozinku za sudo kada je to potrebno umjesto superkorisnika, za razliku od naredbe su. Omogućuje pristupačnim korisnicima korištenje kvalificiranih privilegija bez rješavanja tajnosti lozinke drugog računa.
- Kada konfiguracijska datoteka omogući pristup korisniku, nakon provjere autentičnosti sustav zahtijeva traženu naredbu.
- Naredba sudo zadržala je korisnička prava pozivanja u određenom vremenu (obično 5 minuta) po pseudo-terminalu i dopušta korisniku izvršavanje raznih uzastopnih naredbi kao prijavljeni korisnik bez ponovnog davanja lozinke.
- Naredba sudo može se konfigurirati za bilježenje svake pokrenute naredbe kao značajka revizije i sigurnosti.
- U trenutku kada korisnik puca za pozivanje naredbe sudo, a da nije naveden u konfiguracijskoj datoteci, korisniku se prikazuje ilustracija iznimke koja govori da je snimak snimljen.
- Unos bi se spremio unutar sustava, a root korisnik bi bio obaviješten poštom.
Konfiguracija naredbe sudo
The /etc/sudoers datoteka uključuje korisničke grupe ili popis korisnika s dopuštenjem za pokretanje skupa naredbi dok sadrži prava root korisnika ili drugog navedenog korisnika. Program je možda konfiguriran da treba lozinku.
Utjecaj naredbe sudo
U nekoliko distribucija sustava, naredba sudo zamijenila je korištenje (zadane) različite prijave superkorisnika za razne administrativne operacije, što je najvažnije u nekoliko Appleovih macOS-a, kao i distribucija Linuxa.
Sprječava nekoliko iskorištavanja i također dopušta zaštićenije bilježenje administratorskih naredbi.
RBAC
Naredba sudo može se koristiti za prijelaz između različitih vrsta uloga unutar kontrole pristupa temeljene na ulogama u suradnji sa SELinuxom.
Slični programi i alati
Visudo je uslužni program naredbenog retka koji dopušta uređivanje konfiguracijske datoteke sudo unutar sigurnog načina. Obavlja sintaksu i provjere ispravnosti te također sprječava više od jednog istovremenog uređivanja zajedno s zaključavanjima.
Program runas omogućuje iste performanse u sustavu Microsoft Windows; međutim, ne može proslijediti trenutne dugačke retke naredbi podređenom, varijablama okruženja ili direktorijima.
što znači google
Ne podržava opću elevaciju, a pomaže u izvršavanju djeteta kao bilo kojeg drugog korisnika. Za Windows, pravi sudo i su koji mogu prenijeti svaku od tih pojedinosti o stanju i započeti dijete kao drugi korisnik ili povišeni dodani su s Hamilton C školjka .
GUI je dostupan za sudo ( gksudo posebice), ali je zastario u Debianu, a također više nije u Ubuntuu. Razne druge vrste korisničkih sučelja nisu dizajnirane izravno na sudo, ali omogućuju isto podizanje povlastica (privremeno) za administrativne ciljeve kao što je Autorizacijske usluge Mac OS X, kontrola korisničkih računa unutar Microsoft Windows , i pkexec unutar operativnih sustava sličnih Unixu .
Od verzije 5.8 OpenBSD-a (listopad 2015.), donirati dostupan. Specificirano je zamjena naredbe sudo unutar osnovnog sustava OpenBSD-a.
njegov protiv sudo
Ako smo navikli na klasičniju postavu Linuxa, tada smo navikli primijeniti naredbu su za dobivanje root privilegija. Možemo također izdati naredbu su za učinkovitu prijavu kao root (dom roota postaje naš dom).
Koristeći ove vrste distribucija možemo se prijaviti i kao korisnik rute. Ali, nije dobra ideja prijaviti se kao root korisnik. Ako primjenjujemo distribuciju koja ovisi o naredbi su i dopušta prijavu root korisnika, tada se prijavite kao naš standardni korisnik i naredbu su za root korisnika.
Najvjerojatnije ćemo primijetiti da se ne možemo prijaviti kao root korisnik koristeći sudo-bazirane distribucije. Zapravo, u nekim distribucijama poput Ubuntua, račun root korisnika je onemogućen.
Ne možemo se prijaviti kao root korisnik i koristiti naredbu su da postanemo root korisnik. Mogli bismo izdati ove naredbe pomoću naredbe sudo za dobivanje administrativnih privilegija.
Korištenje naredbe sudo
Postoje dva različita načina za izvršavanje administrativnih aplikacija u Linuxu. Ili možemo promijeniti superkorisnika ili root korisnika pomoću naredbe su ili možemo iskoristiti prednosti naredbe sudo.
Kada koristimo svoje vrijeme na terminalu, sudo je jedna od važnih naredbi koju ćemo prilično često koristiti. Korištenje naredbe sudo umjesto prijave kao root korisnika je zaštićenije jer možemo dodijeliti samo nekoliko administrativnih privilegija jednom korisniku bez njegovog/njezinog znanja root lozinke.
Kako ćemo to implementirati ovisi o distrou koji koristimo. Nekoliko distribucija dopušta root korisniku (kao OpenSUSE, Red Hat , ili Fedora ), dok ih nekolicina ne (sviđa Debian i Ubuntu ).
Korištenje naredbe sudo jednostavno je u svom osnovnom obliku. Na primjer, moramo izvršiti dpkg za instaliranje softverskog dijela. Ako samo pokrenemo dpkg -i softver.deb naredbu kao standardni korisnik dobit ćemo poruku o pogrešci da korisnik nema dopuštenja za pokretanje naredbe.
linux naredbe
Zato prema zadanim postavkama standardni korisnici ne mogu instalirati razne aplikacije preko Linux stroja. Ako želimo instalirati bilo koju aplikaciju na Linux stroj moramo imati privilegije superkorisnika.
Umjesto toga ćemo pokrenuti sudo dpkg -i softver.deb naredbu kako bismo mogli uspješno izvršiti instalaciju.
Instaliranje naredbe sudo
Paket naredbe sudo unaprijed je instaliran na većini distribucija Linuxa. Kako bismo potvrdili da je paket instaliran na našem sustavu, potrebno je slijediti korake u nastavku:
- Prije svega, otvorite naš terminal.
- Upišite sudo i kliknite gumb enter.
- Ako na našem sustavu imamo instaliran paket sudo, prikazat će se kratka poruka.
- U protivnom ćemo vas obavijestiti porukom, tj. naredba sudo nije pronađena.
- Ako paket nije instaliran, ovaj paket možemo jednostavno instalirati primjenom upravitelja paketa prekomjerne distribucije.
Instalirajte Sudo na Fedora i CentOS
$ yum install sudo
Instalirajte Sudo na Debian i Ubuntu
$ apt install sudo