logo

Linuxové sudo

Úvod

Príkaz sudo pre Linux znamená Super User Do . Vo všeobecnosti sa používa ako predpona niekoľkých príkazov, ktoré môže superužívateľ vykonať.

Ak príkaz predpíšeme spolu s inými príkazmi, vykoná by tento príkaz s vysokými oprávneniami. Inými slovami, umožní užívateľovi spolu s náležitou autorizáciou prijímať príkazy ako iní užívatelia ako superužívateľ.

Rovná sa opcii 'spustiť ako správca' v systéme Windows. Možnosť sudo nám umožňuje mať viac ako jedného správcu. Používatelia, ktorí môžu použiť príkaz sudo, vyžadujú, aby bol záznam v súbore sudoers umiestnený na '/etc/sudoers/' .

Poznámka: Na zobrazenie alebo úpravu súboru musíme použiť príkaz sudo. Na úpravu súboru sa odporúča použiť príkaz 'visudo'.

Príkaz sudo štandardne vyžaduje, aby sa používatelia overili spolu s heslom, ktoré je heslom používateľa, nie samotným root heslom.

Syntax príkazu sudo

Syntax príkazu sudo je uvedená nižšie:

 sudo OPTION... COMMAND 

Možnosť v príkaze sudo

Niektoré z dôležitých možností v príkaze sudo sú vysvetlené nižšie:

1. -V: To znamená verzia . Táto voľba povolí príkaz sudo na vytlačenie čísla verzie a ukončenie. Voľba -V by vypísala predvolené nastavenia, ak je požadujúci používateľ rootom, bola pozorovaná pauza v zozname sudo.

Linuxové sudo

2. -l: To znamená zoznam . Táto možnosť pomôže vytlačiť rôzne príkazy, ktoré používateľ povolil na aktuálnom hostiteľovi.

Ukazuje, že aktuálny používateľ môže použiť každý príkaz ako sudo.

vkladací python
Linuxové sudo

3. -h alebo -help: H znamená Pomoc v tejto možnosti. Táto možnosť povolí príkaz sudo na vytlačenie správy o použití a ukončenie.

Linuxové sudo

4. -v: To znamená potvrdiť . Ak by príkaz sudo aktualizoval časovú pečiatku používateľa, overenie si v prípade potreby vyžiada heslo používateľa. Predĺži časový limit príkazu sudo o ďalších 5 minút, ale príkaz nevykoná. Neposkytuje žiadny výsledok.

5. -k: To znamená zabiť . Táto možnosť zruší platnosť časovej pečiatky používateľa sudo. Preto pri ďalšom spustení príkazu sudo bude potrebné heslo. Voľba -k nepotrebuje žiadne heslo a bola zahrnutá, aby umožnila používateľom odvolať oprávnenia príkazu sudo prostredníctvom .odhlásiť sa súbor.

6. -b: To znamená pozadie . Táto možnosť informuje príkaz sudo, aby vykonal poskytnuté príkazy na pozadí.

Poznámka: Ak použijeme túto možnosť, nemôžeme použiť riadenie úloh shellu na manipuláciu s procesom.

Linuxové sudo

7. -K: Táto možnosť je rovnaká ako možnosť -k. Stojí však za určite zabiť . Táto možnosť sa použije na úplné odstránenie časovej pečiatky používateľa. Rovnako nepotrebuje žiadne heslo.

8 str: To znamená výzva . Táto možnosť nám umožňuje prepísať výzvu na zadanie hesla (predvolené) a použiť vlastné heslo. Je povolených niekoľko percent únikov, ktoré sú nasledovné:

  • %u je vyvinutý na prihlasovacie meno volajúceho používateľa.
  • %U je vyvinutý na prihlasovacie meno používateľa
  • %h je vyvinutý na názov hostiteľa (lokálne) bez názvu domény.
  • %H je vyvinutý pre názov hostiteľa (lokálny) s názvom domény (iba keď je názov hostiteľa počítača úplne kvalifikovaný)
  • %% (dva po sebe idúce znaky) možno rozdeliť na samostatný znak %.
Linuxové sudo

9. -n: Táto možnosť spustí príkaz bez vyžiadania hesla. Je to veľmi užitočné, ak chceme vykonať niekoľko príkazov ako úlohy na pozadí (alebo v shell skripte), kde nechceme, aby sa príkaz sudo pýtal na heslo. Táto možnosť je skratka pre neinteraktívne.

enum tostring java

10. -in: To znamená užívateľ . Táto možnosť umožňuje príkazu sudo vykonávať opísané príkazy iné ako root ako používateľ. Pre špecifikáciu a uid namiesto používateľského mena môžeme použiť #uid .

11. -H: To znamená DOMOV . Táto možnosť môže nastaviť a premenná prostredia HOME do nášho domovský adresár užívateľa root, ako je popísané v súbore passwd. Príkaz sudo v predvolenom nastavení nemení HOME.

12. -s: Znamená to škrupina . Táto voľba spustí shell popísaný cez a premenná prostredia SHELL keď je nastavená alebo táto škrupina, ako je popísané vo vnútri passwd súbor.

13. -S: To znamená stdin . Táto možnosť povoľuje príkaz sudo na čítanie hesla cez štandardný vstup a nie cez koncové zariadenie.

java char na celé číslo

14. -: Táto možnosť ilustruje, že príkaz sudo musí zastaviť spracovanie argumentov príkazového riadku. Najužitočnejšie je v spojení s príznakom -s.

15. -a: To znamená autentický typ . Táto možnosť umožňuje príkazu sudo použiť opísaný typ autentifikácie pri overovaní používateľa, ako to povoľuje /etc/login/.config .

Administrátor systému môže popísať zoznam metód sudo-špecifickej autentifikácie zahrnutím 'auto-sudo' vstup dovnútra /etc/login/.config .

Linuxové sudo

Premenné prostredia v príkaze sudo

Nasledujú niektoré z premenných prostredia, ktoré sú aplikované príkazom sudo:

Áno nie. Tag Popis
1. EDITOR Je to predvolený editor, ktorý možno použiť v režime -e (sudoedit), keď nie je opravený VISUAL.
2. DOMOV Nastaví sa na homedir používateľa (cieľ) v režime -H alebo -s (alebo keď bol príkaz sudo vytvorený s voľbou, t. j. -enable-shell-sets-home).
3. PATH Nastaví sa na rozumnú hodnotu, keď je možnosť, t. j. sudoers secure_path, pevná.
4. SHELL Môže sa použiť na určenie shellu, ktorý sa má spustiť s voľbou -s.
5. SUDO_COMMAND Nastaví sa na príkaz vykonaný príkazom sudo.
6. SUDO_PROMPT Dá sa použiť ako výzva na zadanie hesla (predvolené).
7. SUDO_USER Nastaví prihlásenie používateľa, ktorý požaduje príkaz sudo.
8. SUDO_UID Nastaví sa na uid používateľa, ktorý požaduje príkaz sudo.
9. SUDO_GID Nastaví sa na gid používateľa, ktorý požaduje príkaz sudo.
10. SOUTH_PS1 PS1 by bol nastavený na svoju hodnotu.
jedenásť. USER Nastaví sa na používateľa (root, pokiaľ nie je popísaná možnosť, t. j. -u).
12. VIZUÁLNY Je to predvolený editor a používa sa v režime -e (sudoedit).

História príkazu sudo

Cliff Spencer a Robert Coggeshall napísali skutočný subsystém v roku 1980 v SUNY/Buffalo na Katedre informatiky. Robert Coggeshall nosil sudo so sebou na University of Colorado Boulder. Funkcie a kód v podstate zmenili IT členovia College of Engineering a University of Colorado Boulder Computer Science Department a aplikovanej vedy s Toddom C. Millerom v rokoch 1986-1993.

Verejne najnovšiu verziu spravuje od roku 1994 Todd .C Miller (vývojár OpenBSD) a je zdieľaná od roku 1999 na základe licencie v štýle ISC.

Thomas Claburn charakterizoval takéto neistoty ako prehnané v novembri 2009 v reakcii na vec, že ​​Microsoft mal privilégium sudo. Skrátka, nároky boli zarámované do špecifického GUI namiesto prístupu sudo.

Návrh príkazu sudo

Používatelia môžu v prípade potreby zadať svoje heslo do sudo namiesto superužívateľa, na rozdiel od príkazu su. Umožňuje prístupným používateľom vykonávať kvalifikované privilégiá bez toho, aby sa museli zaoberať utajením hesla druhého účtu.

  • Keď konfiguračný súbor umožňuje užívateľovi prístup, po autentifikácii systém požaduje nárokovaný príkaz.
  • Príkaz sudo si ponechal práva na vyvolávanie používateľa s dodatočným časom (zvyčajne 5 minút) na pseudoterminál a umožňuje používateľovi vykonávať rôzne po sebe nasledujúce príkazy ako nárokovaný používateľ bez toho, aby musel znova zadávať akékoľvek heslo.
  • Príkaz sudo môže byť nakonfigurovaný na zaznamenávanie každého spusteného príkazu ako funkcia auditu a zabezpečenia.
  • V čase, keď používateľ strieľa na vyvolanie príkazu sudo bez toho, aby bol uvedený v konfiguračnom súbore, je používateľovi predložená ilustrácia výnimky, ktorá hovorí, že strela bola zaznamenaná.
  • Záznam by sa uložil do systému a používateľ root by bol informovaný poštou.

Konfigurácia príkazu sudo

The /etc/sudoers súbor obsahuje skupiny používateľov alebo zoznam používateľov s povolením spúšťať sadu príkazov, pričom obsahuje práva používateľa root alebo iného používateľa uvedeného v zozname. Program môže byť nakonfigurovaný tak, aby potreboval heslo.

Vplyv príkazu sudo

V niekoľkých systémových distribúciách príkaz sudo nahradil použitie (predvoleného) iného prihlásenia superužívateľa pre rôzne administratívne operácie, čo je najdôležitejšie v niekoľkých distribúciách MacOS a Linux od Apple.

Zabraňuje niekoľkým exploitom a tiež umožňuje viac chránené protokolovanie príkazov správcu.

nahradiť všetko v reťazci java

RBAC

Príkaz sudo možno použiť na prechod medzi rôznymi typmi rolí v rámci riadenia prístupu na základe rolí v spolupráci so SELinuxom.

Podobné programy a nástroje

visudo je pomôcka príkazového riadku, ktorá umožňuje upravovať konfiguračný súbor sudo bezpečným spôsobom. Vykonáva kontrolu syntaxe a zdravého rozumu a tiež zabraňuje viac ako jednej simultánnej úprave spolu so zámkami.

Program runas umožňuje rovnaký výkon v systéme Microsoft Windows; nemôže však odovzdať aktuálne dlhé príkazové riadky potomkovi, premenným prostredia alebo adresárom.

Nepodporuje všeobecnú eleváciu, zatiaľ čo pomáha spustiť dieťa ako ktorýkoľvek iný používateľ. V prípade systému Windows sa pridá skutočné sudo a su, ktoré dokáže preniesť každý z týchto podrobností o stave a začať dieťa ako iný používateľ alebo zvýšené, s Škrupina Hamilton C .

GUI je k dispozícii pre sudo ( gksudo najmä), ale v Debiane je zastaraný a tiež už nie v Ubuntu. Rôzne iné typy používateľských rozhraní nie sú navrhnuté priamo pre sudo, ale uľahčujú rovnaké zvýšenie privilégií (dočasné) pre administratívne ciele ako Autorizačné služby Mac OS X, Kontrola používateľských účtov v rámci Microsoft Windows a pkexec v operačných systémoch podobných Unixu .

Od verzie 5.8 OpenBSD (október 2015), darovať je k dispozícii. Bolo špecifikované nahradiť príkaz sudo v základnom systéme OpenBSD.

jeho vs. sudo

Ak sme zvyknutí na klasickejšie nastavenie Linuxu, potom sme zvyknutí použiť príkaz su na získanie práv root. Môžeme zadať aj príkaz su, aby sme sa efektívne prihlásili ako root (domov roota sa stane naším domovom).

Pomocou týchto druhov distribúcií sa môžeme prihlásiť aj ako používateľ trasy. Nie je však dobrý nápad prihlásiť sa ako užívateľ root. Ak aplikujeme distribúciu, ktorá závisí od príkazu su a povoľuje prihlásenie užívateľa root, potom sa prihláste ako náš štandardný užívateľ a príkaz su ako užívateľ root.

ako aktualizovať v jave

S najväčšou pravdepodobnosťou si všimneme, že sa nemôžeme prihlásiť ako užívateľ root pomocou distribúcií založených na sudo. V skutočnosti, v niektorých distribúciách, ako je Ubuntu, bol účet používateľa root zakázaný.

Nemôžeme sa prihlásiť ako užívateľ root a pomocou príkazu su sa stať užívateľom root. Mohli by sme urobiť tieto príkazy pomocou príkazu sudo na získanie oprávnení správcu.

Použitie príkazu sudo

Existujú dva rôzne spôsoby spúšťania administratívnych aplikácií v systéme Linux. Buď môžeme zmeniť superužívateľa alebo užívateľa root pomocou príkazu su alebo môžeme využiť príkaz sudo.

Keď využívame čas na termináli, sudo je jedným z dôležitých príkazov, ktoré budeme pomerne často používať. Použitie príkazu sudo namiesto prihlásenia ako užívateľa root je viac chránené, pretože jednému užívateľovi môžeme udeliť len niekoľko administrátorských oprávnení bez toho, aby poznal heslo root.

Ako to implementujeme, závisí od toho, aké distro používame. Niekoľko distribúcií umožňuje užívateľovi root (napr OpenSUSE, Red Hat , alebo Fedora ), zatiaľ čo niektorí nie (ako Debian a Ubuntu ).

Používanie príkazu sudo je vo svojej úplne základnej forme jednoduché. Napríklad musíme spustiť dpkg na inštaláciu softvérovej časti. Ak len spustíme dpkg -i software.deb príkaz ako štandardný používateľ dostaneme chybové hlásenie, že používateľ nemá oprávnenie na spustenie príkazu.

To je dôvod, prečo štandardne štandardní používatelia nemôžu inštalovať rôzne aplikácie cez počítač so systémom Linux. Ak chceme nainštalovať akúkoľvek aplikáciu na počítač so systémom Linux, musíme mať práva superužívateľa.

Namiesto toho spustíme sudo dpkg -i software.deb aby sme mohli úspešne spustiť inštaláciu.

Inštalácia príkazu sudo

Balík príkazu sudo je predinštalovaný vo väčšine distribúcií Linuxu. Ak chcete potvrdiť, že balík je nainštalovaný v našom systéme, musíte vykonať nasledujúce kroky:

  • Najprv otvorte náš terminál.
  • Napíšte sudo a kliknite na tlačidlo Enter.
  • Ak máme v systéme nainštalovaný balík sudo, zobrazí sa krátka správa.
  • V opačnom prípade vás upozorníme správou, t. j. príkaz sudo nenájdený.
  • Ak balík nie je nainštalovaný, môžeme ho jednoducho nainštalovať použitím správcu balíkov nadmernej distribúcie.

Nainštalujte Sudo na Fedora a CentOS

 $ yum install sudo 

Nainštalujte Sudo na Debian a Ubuntu

 $ apt install sudo 

Linuxové sudo

Príkaz na aktualizáciu sudo

Linuxové sudo