Kako zagnati skripte lupine z ukazom Sudo v Linuxu


sudo je zmogljivo orodje ukazne vrstice, ki\"dovoljenemu uporabniku" omogoči izvajanje ukaza kot drugega uporabnika (privzeto nadkorisnik), kot je opredeljeno z varnostno politiko. V večini, če ne v vseh sistemih Linux, varnostno politiko vodi datoteko /etc /sudoers.

Zato morate za zagon lupinskega skripta ali programa uporabiti root ukaz sudo. Vendar pa sudo prepozna in zažene samo ukaze, ki obstajajo v imenikih, navedenih v secure_path v /etc /sudoers, razen če je ukaz prisoten v secure_path, se boste odzvali na napako, kot je spodnja.

To se bo zgodilo, tudi če skript obstaja v imeniku v okoljski spremenljivki PATH, kajti ko uporabnik prikliče sudo, se PATH nadomesti z secure_path.

$ echo  $PATH
$ ls  -l
$ sudo proconport.sh 80

V zgornjem scenariju je imenik/home/aaronkilik/bin v spremenljivki okolja PATH in poskušamo zagnati skript /home/aaronkilik/bin/proconport.sh (najde postopek poslušanja na vratih) s korenskimi pravicami.

Nato smo naleteli na napako\"sudo: proconport.sh: ukaza ni mogoče najti", saj/home/aaronkilik/bin ni na poti sudo secure_path, kot je prikazano na naslednjem posnetku zaslona.

Če želimo to odpraviti, moramo v sudo secure_path dodati imenik, ki vsebuje naše skripte, z uporabo ukaza visudo z urejanjem datoteke /etc /sudoers na naslednji način.

$ sudo visudo

Pozor: Ta metoda ima resne varnostne posledice, zlasti na strežnikih, ki delujejo na internetu. Na ta način tvegamo, da bomo naše sisteme izpostavili različnim napadom, saj lahko napadalec, ki uspe pridobiti dostop do nezaščitenega (brez privilegijev superjuporabnika) imenika, ki je bil dodan v secure_path, lahko zažene zlonamerni skript/program z ukazom sudo.

Iz varnostnih razlogov si oglejte naslednji članek s spletnega mesta sudo, ki pojasnjuje ranljivost v zvezi z secure_path: https://www.sudo.ws/sudo/alerts/secure_path.html

Prednostno lahko zagotovimo absolutno pot do skripta, medtem ko ga izvajamo s sudo:

$ sudo ./proconport.sh 80

To je To! Lahko sledite seznamu člankov o ukazu sudo:

  1. Kako zagnati ukaz 'sudo' brez vnosa gesla v Linuxu
  2. Kako v Linuxu ohraniti daljšo sejo »sudo« s prekinitvijo gesla
  3. Kako popraviti\"Uporabniškega imena ni v datoteki sudoers. Ta incident bo prijavljen" v Ubuntu
  4. Naj vas Sudo užali, ko vnesete napačno geslo

Če imate kakršna koli vprašanja ali razmišljanja o tem članku, jih delite z nami preko spodnjega obrazca za komentar.