logo

Linux sudo

Johdanto

Linuxin sudo-komento tarkoittaa Super User Do . Yleensä sitä käytetään muutaman komennon etuliitteenä, jotka superkäyttäjä saa suorittaa.

Jos laitamme komennon etuliitteen muiden komentojen kanssa, se suorittaisi kyseisen komennon korkeilla oikeuksilla. Toisin sanoen se sallii käyttäjän syövän komennon asianmukaisen valtuutuksen ohella muiden käyttäjien, kuten pääkäyttäjän, tavoin.

Se on yhtä suuri kuin vaihtoehto 'Suorita järjestelmänvalvojana' Windowsissa. Sudo-vaihtoehto mahdollistaa useamman kuin yhden järjestelmänvalvojan. Käyttäjät, jotka voivat käyttää sudo-komentoa, edellyttävät, että tiedoston sisällä oleva merkintä sudoers on sijoitettu osoitteeseen '/etc/sudoers/' .

Huomautus: Jos haluat tarkastella tai muokata tiedostoa, meidän on käytettävä sudo-komentoa. Tiedoston muokkaamiseen suositellaan 'visudo'-komentoa.

Sudo-komento edellyttää oletuksena, että käyttäjät vahvistavat itsensä salasanalla, joka on käyttäjän salasana, ei itse pääkäyttäjän salasana.

Sudo-komennon syntaksi

Sudo-komennon syntaksi mainitaan alla:

 sudo OPTION... COMMAND 

Vaihtoehto sudo-komennossa

Jotkut sudo-komennon tärkeistä vaihtoehdoista selitetään alla:

1. -Sisään: Se tarkoittaa versio . Tämä vaihtoehto mahdollistaa sudo-komennon, joka tulostaa version numeron ja lopeta. Vaihtoehto -V tulostaa oletusarvoisen sudo-luettelon tauon, jos pyynnön esittänyt käyttäjä on jo pääkäyttäjä.

Linux sudo

2. -l: Se tarkoittaa lista . Tämä vaihtoehto auttaa tulostamaan käyttäjälle sallitut komennot nykyisen isännän kautta.

Se osoittaa, että nykyinen käyttäjä voi käyttää jokaista komentoa sudona.

kmp-algoritmi
Linux sudo

3. -h tai -help: H tarkoittaa auta tässä vaihtoehdossa. Tämä vaihtoehto mahdollistaa sudo-komennon tulostamaan käyttö- ja poistumisviestin.

Linux sudo

4. -in: Se tarkoittaa vahvistaa . Jos sudo-komento päivittäisi käyttäjän aikaleiman, validate kysyy tarvittaessa käyttäjän salasanaa. Se pidentää sudo-komennon aikakatkaisua muilla 5 minuutilla, mutta ei suorita komentoa. Se ei tuota tulosta.

5. -k: Se tarkoittaa tappaa . Tämä vaihtoehto mitätöi käyttäjän sudo-aikaleiman. Siksi seuraavan kerran, kun sudo-komento suoritetaan, vaaditaan salasana. Valinta -k ei vaadi salasanaa ja se sisältyi, jotta käyttäjät voivat peruuttaa sudo-komennon käyttöoikeudet .kirjautua ulos tiedosto.

6. -b: Se tarkoittaa tausta . Tämä vaihtoehto kehottaa sudo-komentoa suorittamaan annetut komennot taustalla.

Huomautus: Jos käytämme tätä vaihtoehtoa, emme voi käyttää shell-työn ohjausta prosessin manipuloimiseen.

Linux sudo

7. -K: Tämä vaihtoehto on sama kuin vaihtoehto -k. Se kuitenkin edustaa varmasti tappaa . Tätä vaihtoehtoa käytetään käyttäjän aikaleiman poistamiseen kokonaan. Se ei myöskään vaadi salasanaa.

8 p: Se tarkoittaa kehote . Tämän vaihtoehdon avulla voimme ohittaa salasanakehotteen (oletus) ja käyttää mukautettua salasanaa. Muutaman prosentin pakot ovat sallittuja, jotka ovat seuraavat:

  • %u on kehitetty kutsuvan käyttäjän kirjautumisnimeksi.
  • %U on kehitetty käyttäjän kirjautumisnimeksi
  • %h on kehitetty isäntänimeksi (paikallinen) ilman toimialueen nimeä.
  • %H on kehitetty isäntänimeksi (paikallinen) verkkotunnuksen nimellä (vain kun koneen isäntänimi on täysin hyväksytty)
  • %% (kaksi peräkkäistä merkkiä) voidaan jakaa yksittäiseksi %-merkiksi.
Linux sudo

9. -n: Tämä vaihtoehto suorittaa komennon ilman salasanaa. Se on erittäin hyödyllistä, jos haluamme suorittaa muutaman komennon taustatehtävinä (tai komentosarjan sisällä), joissa emme halua sudo-komentoa salasanan kysymiseen. Tämä vaihtoehto on lyhenne sanoista ei-interaktiivinen.

java system.out.println

10. -in: Se tarkoittaa käyttäjä . Tämä vaihtoehto sallii sudo-komennon suorittaa kuvatut komennot, jotka eivät ole juuri käyttäjänä. Määrittämään a uid käyttäjätunnuksen sijaan voimme käyttää #uid .

11. -H: Se tarkoittaa KOTI . Tämä vaihtoehto voi asettaa a HOME-ympäristömuuttuja meidän kotihakemisto pääkäyttäjästä passwd-tiedoston sisällä kuvatulla tavalla. Sudo-komento ei oletuksena muuta HOME-komentoa.

12. -s: Se tarkoittaa kuori . Tämä vaihtoehto suorittaa kohdassa a kuvatun komentotulkin SHELL-ympäristömuuttuja kun se on asetettu tai tämä kuori kuvatulla tavalla passwd tiedosto.

13. -S: Se tarkoittaa stdin . Tämä vaihtoehto ottaa käyttöön sudo-komennon salasanan lukemiseen tavallisen syötteen kautta päätelaitteen sijaan.

14. -: Tämä vaihtoehto osoittaa, että sudo-komennon on lopetettava komentorivin argumenttien käsittely. Se on hyödyllisin yhdessä -s-lipun kanssa.

15. -a: Se tarkoittaa Tunnistautumistapa . Tämä vaihtoehto sallii sudo-komennon käyttää kuvattua todennustyyppiä, jos käyttäjän validointi on sallittua /etc/login/.config .

mitkä kuukaudet ovat Q1

Järjestelmän ylläpitäjä voi kuvata sudokohtaisen todennuksen menetelmäluettelon sisällyttämällä siihen 'auto-sudo' sisäänkäynti sisällä /etc/login/.config .

Linux sudo

Ympäristömuuttujat sudo-komennossa

Seuraavassa on joitain ympäristömuuttujia, joita sudo-komento käyttää:

Kyllä ei. Tag Kuvaus
1. TOIMITTAJA Se on oletuseditori, jota voidaan käyttää -e-tilassa (sudoedit), kun VISUAL ei ole korjattu.
2. KOTI Se asettuu käyttäjän (kohteen) kotihakemistoon -H- tai -s-tilassa (tai kun sudo-komento muodostettiin optiolla, eli -enable-shell-sets-home).
3. PATH Se asettuu järkevään arvoon, kun vaihtoehto eli suojattu_polku sudoers on kiinteä.
4. KUORI Sitä voidaan käyttää määrittämään komentotulkki, joka suoritetaan komennolla -s.
5. SUDO_COMMAND Se asettaa sudo-komennon suorittaman komennon.
6. SUDO_PROMPT Sitä voidaan käyttää salasanakehotteena (oletus).
7. SUDO_USER Se asettaa käyttäjän sisäänkirjautumisen, joka pyytää sudo-komentoa.
8. SUDO_UID Se asettaa käyttäjän uid:n, joka pyytää sudo-komentoa.
9. SUDO_GID Se asettuu käyttäjän gid:ksi, joka pyytää sudo-komentoa.
10. SOUTH_PS1 PS1 pysyisi arvossaan, jos se asetetaan.
yksitoista. KÄYTTÄJÄ Se asettuu käyttäjälle (root, ellei vaihtoehtoa, eli -u) ole kuvattu.
12. VISUAALINEN Se on oletuseditori ja käyttää -e-tilassa (sudoedit).

Sudo-komennon historia

Cliff Spencer ja Robert Coggeshall kirjoittivat todellisen alijärjestelmän vuonna 1980 SUNY/Buffalossa tietojenkäsittelytieteen laitoksella. Robert Coggeshall kantoi sudoa Colorado Boulderin yliopistoon mukanaan. Ominaisuuksia ja koodia muuttivat olennaisesti College of Engineeringin ja Coloradon yliopiston Boulderin tietotekniikan osaston IT-jäsenet sekä soveltava tiede Todd C. Millerin kanssa vuosina 1986-1993.

Julkisesti viimeisintä versiota on hallinnut vuodesta 1994 lähtien Todd .C Miller (OpenBSD-kehittäjä), ja sitä on jaettu vuodesta 1999 ISC-tyylisen lisenssin perusteella.

Thomas Claburn luonnehtii tällaisia ​​epävarmuustekijöitä liialliseksi marraskuussa 2009 vastauksena siihen, että Microsoftilla oli etuoikeus sudo. Suppeasti sanottuna väitteet kehystettiin tiettyyn graafiseen käyttöliittymään sudo-lähestymistavan sijaan.

Sudo-komennon suunnittelu

Käyttäjät voivat tarvittaessa antaa salasanansa sudolle pääkäyttäjän sijaan, toisin kuin komennossa su. Sen avulla käyttäjät voivat käyttää päteviä oikeuksia ilman toisen tilin salasanan salassapitoa.

  • Kun konfigurointitiedosto sallii käyttäjän pääsyn, järjestelmä pyytää todennuksen jälkeen vaaditun komennon.
  • Sudo-komento säilytti käyttäjän kutsuoikeudet pseudopäätettä kohti (tyypillisesti 5 minuuttia) ja se sallii käyttäjän suorittaa erilaisia ​​peräkkäisiä komentoja vaaditun käyttäjänä ilman, että hänen tarvitsee antaa uudelleen salasanaa.
  • Sudo-komento voidaan määrittää kirjaamaan jokaisen ajetun komennon valvonta- ja suojausominaisuudena.
  • Tuolloin käyttäjä laukaisee sudo-komennon käynnistämisen ilman, että hän on luettelossa asetustiedoston sisällä, tälle käyttäjälle esitetään poikkeuskuva, joka kertoo, että laukaus on tallennettu.
  • Tieto tallennettaisiin järjestelmän sisään ja pääkäyttäjälle ilmoitetaan siitä postitse.

Sudo-komennon asetukset

The /etc/sudoers tiedosto sisältää käyttäjäryhmät tai luettelon käyttäjistä, joilla on oikeus suorittaa joukko komentoja, mutta sisältää pääkäyttäjän tai muun luettelossa olevan käyttäjän oikeudet. Ohjelma voi olla määritetty tarvitsemaan salasanan.

Sudo-komennon vaikutus

Muutamissa järjestelmäjakeluissa sudo-komento on syrjäyttänyt pääkäyttäjän eri kirjautumistunnuksen käytön (oletusarvoisesti) erilaisissa hallinnollisissa toimissa, mikä tärkeintä on muutamissa Applen macOS- ja Linux-jakeluissa.

Se estää muutaman hyväksikäytön ja mahdollistaa myös järjestelmänvalvojan komentojen suojatun kirjaamisen.

RBAC

Sudo-komentoa voidaan käyttää erilaisten roolien väliseen siirtoon roolipohjaisessa pääsynhallinnassa yhteistyössä SELinuxin kanssa.

Samanlaisia ​​ohjelmia ja työkaluja

Visudo on komentorivin apuohjelma, joka mahdollistaa sudon asetustiedoston muokkaamisen vikasietoisella tavalla. Se suorittaa syntaksin ja mielenterveyden tarkistuksia ja estää myös useamman kuin yhden samanaikaisen muokkauksen sekä lukot.

java lista

Runas-ohjelma mahdollistaa saman suorituskyvyn Microsoft Windowsissa; Se ei kuitenkaan voi välittää nykyisiä pitkiä komentoriviä lapsi-, ympäristömuuttujia tai hakemistoja varten.

Se ei tue yleistä korkeutta, mutta se auttaa suorittamaan lapsen kuten mikä tahansa muu käyttäjä. Windowsille aito sudo ja su, jotka voivat siirtää jokaisen näistä tilatiedoista ja aloittaa lapsen toisena käyttäjänä tai korotettuna, lisätään Hamilton C -kuori .

GUI on saatavilla sudolle ( gksudo varsinkin), mutta se on vanhentunut Debianissa eikä myöskään enää Ubuntussa. Useita muun tyyppisiä käyttöliittymiä ei ole suunniteltu suoraan sudolle, vaan ne mahdollistavat saman (väliaikaisen) käyttöoikeuksien korotuksen hallinnollisiin tarkoituksiin, kuten Mac OS X:n valtuutuspalvelut, käyttäjätilien valvonta Microsoft Windowsin sisällä , ja pkexec Unix-tyyppisissä käyttöjärjestelmissä .

OpenBSD:n 5.8-versiosta lähtien (lokakuu 2015), lahjoittaa on käytettävissä. Se on määritetty korvaamaan sudo-komento OpenBSD:n perusjärjestelmän sisällä.

hänen vs. sudo

Jos olemme tottuneet perinteisempään Linux-asetuksiin, olemme tottuneet käyttämään su-komentoa pääkäyttäjän oikeuksien hankkimiseksi. Voimme antaa myös su-komennon, jotta pääset kirjautumaan tehokkaasti sisään juurina (juuren kodista tulee kotimme).

Tällaisten jakelujen avulla voimme kirjautua sisään myös reittikäyttäjänä. Mutta ei ole hyvä idea kirjautua sisään pääkäyttäjänä. Jos käytämme jakelua, joka riippuu su-komennosta ja sallii pääkäyttäjän kirjautumisen, kirjaudu sisään tavallisena käyttäjänämme ja su-komento root-käyttäjälle.

Todennäköisesti huomaamme, että emme voi kirjautua sisään pääkäyttäjänä käyttämällä sudo-pohjaisia ​​jakeluja. Itse asiassa joissakin jakeluissa, kuten Ubuntussa, pääkäyttäjän tili on poistettu käytöstä.

java linkitetty lista

Emme voi kirjautua sisään pääkäyttäjänä ja käyttää su-komentoa päästäksemme pääkäyttäjäksi. Voisimme tehdä nämä komennot käyttämällä sudo-komentoa järjestelmänvalvojan oikeuksien saamiseksi.

Sudo-komennon käyttö

Hallinnollisia sovelluksia voidaan suorittaa Linuxissa kahdella eri tavalla. Joko voimme vaihtaa super- tai root-käyttäjää komennolla su tai voimme hyödyntää sudo-komentoa.

Kun käytämme aikamme terminaalissa, sudo on yksi tärkeimmistä komennoista, joita käytämme melko usein. Sudo-komennon käyttäminen sisäänkirjautumisen sijaan, koska pääkäyttäjä on suojattu, koska voimme myöntää vain muutamia järjestelmänvalvojan oikeuksia yhdelle käyttäjälle ilman, että hän tietää pääkäyttäjän salasanan.

Kuinka toteutamme sen, riippuu siitä, mitä jakelua käytämme. Muutamat jakelut sallivat pääkäyttäjän (esim OpenSUSE, Red Hat , tai Fedora ), kun taas muutamat eivät (kuten Debian ja Ubuntu ).

Sudo-komennon käyttäminen on yksinkertaista sen perusmuodossa. Meidän on esimerkiksi suoritettava dpkg ohjelmiston asentamiseksi. Jos vain ajamme dpkg -i software.deb komento tavallisena käyttäjänä saamme virheilmoituksen, että käyttäjällä ei ole oikeuksia suorittaa komentoa.

Tästä syystä tavalliset käyttäjät eivät voi oletusarvoisesti asentaa erilaisia ​​sovelluksia Linux-koneelle. Jos haluamme asentaa minkä tahansa sovelluksen Linux-koneeseen, meillä on oltava pääkäyttäjän oikeudet.

Sen sijaan käytämme sudo dpkg -i software.deb komento, jotta voimme suorittaa asennuksen onnistuneesti.

Sudo-komennon asentaminen

Sudo-komennon paketti on esiasennettu useimpiin Linux-jakeluihin. Varmistaaksesi, että paketti on asennettu järjestelmäämme, on noudatettava seuraavia vaiheita:

  • Ensinnäkin, avaa terminaalimme.
  • Kirjoita sudo ja napsauta Enter-painiketta.
  • Jos järjestelmäämme on asennettu sudo-paketti, se näyttää lyhyen viestin.
  • Muussa tapauksessa ilmoitamme viestillä, eli sudo-komentoa ei löydy.
  • Jos pakettia ei ole asennettu, voimme asentaa tämän paketin helposti käyttämällä ylijakelun paketinhallintaa.

Asenna Sudo Fedoraan ja CentOS:ään

 $ yum install sudo 

Asenna Sudo Debianiin ja Ubuntuun

 $ apt install sudo 

Linux sudo

Sudo-päivityksen komento

Linux sudo