Uvod
Linuxov ukaz sudo pomeni Super uporabnik Do . Na splošno se uporablja kot predpona nekaj ukazov, ki jih sme superuporabnik izvajati.
Če dodamo predpono ukazu skupaj z drugimi ukazi, bi ta ukaz izvedel z visokimi privilegiji. Z drugimi besedami, uporabniku bo skupaj z ustrezno avtorizacijo dovolil, da uživa ukaz kot drugi uporabniki, kot je superuporabnik.
Je enako možnosti 'Zaženi kot skrbnik' v sistemu Windows. Opcija sudo nam omogoča, da imamo več kot enega skrbnika. Uporabniki, ki lahko uporabijo ukaz sudo, morajo imeti vnos znotraj datoteke sudoers na mestu '/etc/sudoers/' .
Opomba: Za ogled ali urejanje datoteke moramo uporabiti ukaz sudo. Za urejanje datoteke je priporočljivo uporabiti ukaz 'visudo'.
Ukaz sudo privzeto zahteva, da se uporabniki potrdijo skupaj z geslom, ki je geslo uporabnika in ne samo korensko geslo.
Sintaksa ukaza sudo
Sintaksa ukaza sudo je navedena spodaj:
sudo OPTION... COMMAND
Možnost v ukazu sudo
Nekatere pomembne možnosti v ukazu sudo so razložene spodaj:
1. -V: To pomeni različica . Ta možnost omogoča ukaz sudo za izpis številke različice in izhod. Možnost -V bi natisnila privzete vrednosti sudo list premor, če je uporabnik, ki je zahteval, že root.
2. -l: To pomeni seznam . Ta možnost bo pomagala natisniti različne ukaze, ki so dovoljeni uporabniku prek trenutnega gostitelja.
Prikazuje, da lahko trenutni uporabnik vsak ukaz uporabi kot sudo.
kdo je freddie mercury
3. -h ali -help: Črka h pomeni pomoč v tej možnosti. Ta možnost omogoča ukaz sudo za tiskanje sporočila o uporabi in izhodu.
4. -v: To pomeni potrditi . Če bi ukaz sudo posodobil časovni žig uporabnika, bo validate po potrebi zahteval geslo uporabnika. Podaljša časovno omejitev ukaza sudo za preostalih 5 minut, vendar ne izvede ukaza. Ne daje nobenega rezultata.
5. -k: To pomeni ubiti . Ta možnost razveljavi časovni žig uporabnika za sudo. Zato bo ob naslednji izvedbi ukaza sudo potrebno geslo. Možnost -k ne potrebuje gesla in je bila vključena, da uporabnikom omogoči preklic dovoljenj ukaza sudo prek .Odjava mapa.
6. -b: To pomeni ozadje . Ta možnost obvesti ukaz sudo, da izvede podane ukaze v ozadju.
Opomba: če uporabimo to možnost, ne moremo uporabiti nadzora opravil lupine za manipulacijo procesa.
7. -K: Ta možnost je enaka možnosti -k. Vendar pa stoji za gotovo ubiti . Ta možnost se uporablja za popolno odstranitev časovnega žiga uporabnika. Prav tako ne potrebuje nobenega gesla.
8. -p: To pomeni poziv . Ta možnost nam omogoča, da preglasimo poziv za geslo (privzeto) in uporabimo po meri. Dovoljenih je nekaj odstotkov pobegov, ki so naslednji:
- %u je razvit za prijavno ime uporabnika, ki kliče.
- %U je razvit za uporabniško prijavno ime
- %h je razvit v ime gostitelja (lokalno) brez imena domene.
- %H se razvije v ime gostitelja (lokalno) z imenom domene (samo ko je ime gostitelja stroja popolnoma kvalificirano)
- %% (dva zaporedna znaka) lahko razdelimo na posamezen znak %.
9. -n: Ta možnost bo zagnala ukaz, ne da bi zahtevala geslo. Zelo uporabno je, če želimo nekaj ukazov izvesti kot opravila v ozadju (ali znotraj lupinskega skripta), kjer ne želimo, da bi ukaz sudo spraševal po geslu. Ta možnost je okrajšava za neinteraktivno.
mysql pokaži uporabnike
10. -v: To pomeni uporabnik . Ta možnost omogoča, da ukaz sudo izvede opisane ukaze, ki niso root kot uporabnik. Za določitev a uid namesto uporabniškega imena lahko uporabimo #uid .
11. -H: To pomeni DOMOV . Ta možnost lahko nastavi a Spremenljivka okolja HOME našim domači imenik korenskega uporabnika, kot je opisano v datoteki passwd. Ukaz sudo privzeto ne spremeni HOME.
12. -s: Stoji za lupina . Ta možnost izvede lupino, opisano v a spremenljivka okolja SHELL ko je nastavljena ali ta lupina, kot je opisano znotraj passwd mapa.
mvc z javo
13. -S: To pomeni stdin . Ta možnost omogoča ukaz sudo za branje gesla prek standardnega vnosa namesto prek terminalske naprave.
14. -: Ta možnost ponazarja, da mora ukaz sudo ustaviti obdelavo argumentov ukazne vrstice. Najbolj koristen je v povezavi z zastavico -s.
15. -a: To pomeni vrsto avtentikacije . Ta možnost omogoča ukaz sudo za uporabo opisane vrste avtentikacije pri preverjanju uporabnika, kot to dovoljuje /etc/login/.config .
Skrbnik sistema lahko opiše seznam metod za preverjanje pristnosti, specifične za sudo, tako da vključi 'auto-sudo' vstop v notranjost /etc/login/.config .
Spremenljivke okolja v ukazu sudo
Sledi nekaj spremenljivk okolja, ki jih uporabi ukaz sudo:
da ne | Oznaka | Opis |
---|---|---|
1. | UREDNIK | Je privzeti urejevalnik, ki ga je mogoče uporabiti v načinu -e (sudoedit), ko VISUAL ni popravljen. |
2. | DOMOV | Nastavljen bo na domači imenik uporabnika (cilja) v načinu -H ali -s (ali ko je bil ukaz sudo oblikovan z možnostjo, tj. -enable-shell-sets-home). |
3. | POT | Nastavi se na razumno vrednost, ko je možnost, tj. sudoers secure_path, popravljena. |
4. | ŠKOLJKA | Uporablja se lahko za določanje ukazne lupine za izvajanje z možnostjo -s. |
5. | SUDO_COMMAND | Nastavi se na ukaz, ki ga izvede ukaz sudo. |
6. | SUDO_PROMPT | Uporablja se lahko kot poziv za geslo (privzeto). |
7. | SUDO_USER | Nastavi se na prijavo uporabnika, ki zahteva ukaz sudo. |
8. | SUDO_UID | Nastavi se na uid uporabnika, ki zahteva ukaz sudo. |
9. | SUDO_GID | Nastavi se na gid uporabnika, ki zahteva ukaz sudo. |
10. | SOUTH_PS1 | PS1 bi bil fiksiran na svojo vrednost, če bi bil nastavljen. |
enajst. | UPORABNIK | Nastavi se na uporabnika (root, razen če je opisana možnost, tj. -u). |
12. | VIZUALNO | Je privzeti urejevalnik in uporablja znotraj načina -e (sudoedit). |
Zgodovina ukaza sudo
Cliff Spencer in Robert Coggeshall sta dejanski podsistem napisala leta 1980 na SUNY/Buffalo na oddelku za računalništvo. Robert Coggeshall je s seboj nosil sudo na univerzo Colorado Boulder. Funkcije in kodo so znatno spremenili člani IT inženirske fakultete in oddelka za računalništvo in uporabno znanost Univerze Colorado Boulder s Toddom C. Millerjem med letoma 1986 in 1993.
Javno najnovejšo različico od leta 1994 upravlja Todd .C Miller (razvijalec OpenBSD) in se deli od leta 1999 na podlagi licence v slogu ISC.
Thomas Claburn je novembra 2009 takšne negotovosti označil za pretirane kot odgovor na to, da ima Microsoft privilegij sudo. Natančneje, trditve so bile uokvirjene v poseben GUI namesto pristopa sudo.
Oblikovanje ukaza sudo
Uporabniki lahko namesto superuporabnika vnesejo svoje geslo sudo, kadar je to potrebno, za razliko od ukaza su. Dostopnim uporabnikom omogoča uveljavljanje kvalificiranih privilegijev, ne da bi pri tem posegal v tajnost gesla drugega računa.
- Ko konfiguracijska datoteka dovoljuje uporabniku dostop, sistem po preverjanju pristnosti zahteva zahtevani ukaz.
- Ukaz sudo je obdržal pravice do klicanja uporabnika v daljšem časovnem obdobju (običajno 5 minut) na psevdo-terminal in uporabniku dovoljuje izvajanje različnih zaporednih ukazov kot zahtevani uporabnik, ne da bi mu bilo treba znova dati geslo.
- Ukaz sudo je lahko konfiguriran za beleženje vsakega zagona ukaza kot revizijske in varnostne funkcije.
- Takrat, ko uporabnik izvede strel za priklic ukaza sudo, ne da bi bil naveden v konfiguracijski datoteki, se uporabniku prikaže ilustracija izjeme, ki pove, da je bil posnetek posnet.
- Vnos bi bil shranjen znotraj sistema in root uporabnik bi bil obveščen po pošti.
Konfiguracija ukaza sudo
The /etc/sudoers vključuje uporabniške skupine ali seznam uporabnikov z dovoljenjem za zagon nabora ukazov, hkrati pa vsebuje pravice korenskega uporabnika ali drugega navedenega uporabnika. Program je morda konfiguriran tako, da potrebuje geslo.
Vpliv ukaza sudo
V nekaj sistemskih distribucijah je ukaz sudo izpodrinil uporabo (privzeto) drugačne prijave superuporabnika za različne skrbniške operacije, kar je najpomembnejše v nekaj Applovih distribucijah macOS in Linux.
leksikografsko
Preprečuje nekaj izkoriščanj in omogoča tudi bolj zaščiteno beleženje skrbniških ukazov.
RBAC
Ukaz sudo bi lahko uporabili za prehod med različnimi vrstami vlog znotraj nadzora dostopa na podlagi vlog v sodelovanju s SELinuxom.
Podobni programi in orodja
Visudo je pripomoček v ukazni vrstici, ki omogoča urejanje konfiguracijske datoteke sudo znotraj varnega načina. Izvaja preverjanje sintakse in razumnosti ter preprečuje več kot eno hkratno urejanje skupaj z zaklepanji.
Program runas omogoča enako delovanje v sistemu Microsoft Windows; vendar ne more posredovati trenutnih dolgih ukaznih vrstic otroku, spremenljivkam okolja ali imenikom.
Ne podpira splošnega povišanja, medtem ko pomaga izvesti otroka kot kateri koli drug uporabnik. Za okna sta pravi sudo in su, ki lahko preneseta vsako od teh podrobnosti stanja in začneta otroka kot drugega uporabnika ali povišana, dodana z Hamilton C školjka .
GUI je na voljo za sudo ( gksudo zlasti), vendar je zastarel v Debianu in tudi ne več v Ubuntuju. Različne druge vrste uporabniških vmesnikov niso zasnovane neposredno na sudo, ampak omogočajo isto povišanje privilegijev (začasno) za skrbniške cilje, kot je Avtorizacijske storitve Mac OS X, nadzor uporabniških računov znotraj Microsoft Windows , in pkexec znotraj operacijskih sistemov, podobnih Unixu .
Od različice 5.8 OpenBSD (oktober 2015), darovati Na voljo. Določeno je bilo nadomestiti ukaz sudo znotraj osnovnega sistema OpenBSD.
njegov vs. sudo
Če smo navajeni na bolj klasično namestitev Linuxa, potem smo navajeni uporabiti ukaz su za pridobitev korenskih pravic. Izdamo lahko tudi ukaz su za učinkovito prijavo kot root (dom korena postane naš dom).
S tovrstnimi distribucijami se lahko prijavimo tudi kot uporabnik poti. Vendar ni dobra ideja, da se prijavite kot root uporabnik. Če uporabljamo distribucijo, ki je odvisna od ukaza su in dovoljuje prijavo uporabnika root, potem se prijavite kot naš standardni uporabnik in ukaz su za uporabnika root.
Najverjetneje bomo opazili, da se ne moremo prijaviti kot korenski uporabnik z uporabo distribucij, ki temeljijo na sudo. Pravzaprav je bil v nekaterih distribucijah, kot je Ubuntu, račun root uporabnika onemogočen.
Ne moremo se prijaviti kot root uporabnik in z ukazom su postati root uporabnik. Te ukaze lahko izdamo z ukazom sudo za pridobitev skrbniških pravic.
Uporaba ukaza sudo
Obstajata dva različna načina za izvajanje skrbniških aplikacij z Linuxom. Bodisi lahko spremenimo superuporabnika ali root uporabnika z ukazom su ali pa izkoristimo ukaz sudo.
Ko izkoristimo svoj čas na terminalu, je sudo eden od pomembnih ukazov, ki ga bomo precej pogosto uporabljali. Uporaba ukaza sudo namesto prijave kot root uporabnika je bolj zaščitena, ker lahko enemu uporabniku podelimo le nekaj skrbniških pravic, ne da bi on/njena vedel za root geslo.
tostring v Javi
Kako ga implementiramo, je odvisno od tega, kateri distro uporabljamo. Nekaj distribucij omogoča uporabniku root (npr OpenSUSE, Red Hat , oz Fedora ), nekateri pa ne (všeč Debian in Ubuntu ).
Uporaba ukaza sudo je preprosta v svoji osnovni obliki. Na primer, za namestitev dela programske opreme moramo izvesti dpkg. Če samo zaženemo dpkg -i software.deb ukaz kot standardni uporabnik bomo prejeli sporočilo o napaki, da uporabnik nima dovoljenj za zagon ukaza.
Zato standardni uporabniki privzeto ne morejo nameščati različnih aplikacij na računalnik Linux. Če želimo namestiti katero koli aplikacijo na stroj Linux, moramo imeti privilegije superuporabnika.
Namesto tega bomo vodili sudo dpkg -i software.deb ukaz, da lahko uspešno izvedemo namestitev.
Namestitev ukaza sudo
Paket ukaza sudo je vnaprej nameščen v večini distribucij Linuxa. Če želite potrditi, da je paket nameščen v našem sistemu, morate slediti spodnjim korakom:
- Najprej odprite naš terminal.
- Vnesite sudo in kliknite gumb enter.
- Če imamo v sistemu nameščen paket sudo, bo prikazal kratko sporočilo.
- V nasprotnem primeru vas bomo obvestili s sporočilom, tj. ukaz sudo ni bil najden.
- Če paket ni nameščen, lahko ta paket preprosto namestimo z uporabo upravitelja paketov prekomerne distribucije.
Namestite Sudo na Fedora in CentOS
$ yum install sudo
Namestite Sudo na Debian in Ubuntu
$ apt install sudo