Jinsi ya Kuendesha Hati za Shell na Sudo Amri kwenye Linux


sudo ni zana yenye nguvu ya mstari wa amri inayomwezesha \mtumiaji aliyeruhusiwa kutekeleza amri kama mtumiaji mwingine (mtumiaji mkuu kwa chaguo-msingi), kama inavyofafanuliwa na sera ya usalama. Kwa mifumo mingi ikiwa siyo yote ya Linux, sera ya usalama inaendeshwa na faili ya /etc/sudoers.

Kwa hivyo, ili kuendesha hati ya ganda au programu kama mzizi, unahitaji kutumia amri ya sudo. Walakini, sudo inatambua na kuendesha tu amri ambazo zipo katika saraka zilizoainishwa kwenye njia salama katika /etc/sudoers, isipokuwa kama amri iko kwenye njia salama, utakabiliana na hitilafu kama hii hapa chini.

Hii itafanyika hata kama hati iko kwenye saraka katika utofauti wa mazingira wa PATH, kwa sababu mtumiaji anapoomba sudo, PATH inabadilishwa na secure_path.

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

Katika hali iliyo hapo juu, saraka /home/aaronkilik/bin iko katika mabadiliko ya mazingira ya PATH na tunajaribu kuendesha hati /home/aaronkilik/bin/proconport.sh (hupata kusikilizwa kwa mchakato kwenye bandari) na upendeleo wa mizizi.

Kisha tukakumbana na hitilafu \sudo: proconport.sh: amri haipatikani, kwa kuwa /home/aaronkilik/bin haiko kwenye sudo secure_path kama inavyoonyeshwa kwenye picha ya skrini inayofuata.

Ili kurekebisha hili, tunahitaji kuongeza saraka iliyo na hati zetu kwenye sudo secure_path kwa kutumia visudo amri kwa kuhariri /etc/sudoers faili kama ifuatavyo.

$ sudo visudo

Makini: Njia hii ina athari kubwa za usalama haswa kwenye seva zinazoendesha kwenye Mtandao. Kwa njia hii, tunahatarisha kufichua mifumo yetu kutokana na mashambulizi mbalimbali, kwa sababu mshambulizi anayeweza kufikia saraka isiyo salama (bila haki za mtumiaji mkuu) ambayo imeongezwa kwa secure_path, anaweza kuendesha hati/mpango hasidi kwa amri ya sudo.

Kwa sababu ya usalama, angalia nakala ifuatayo kutoka kwa wavuti ya sudo inaelezea hatari inayohusiana na safe_path: https://www.sudo.ws/sudo/alerts/secure_path.html

Ikiwezekana, tunaweza kutoa njia kamili kwa hati wakati wa kuiendesha na sudo:

$ sudo ./proconport.sh 80

Hiyo ndiyo! Unaweza kufuata orodha ya vifungu kuhusu amri ya sudo:

  1. Jinsi ya Kutekeleza Amri ya ‘sudo’ Bila Kuingiza Nenosiri katika Linux
  2. Jinsi ya Kuweka Kipindi cha ‘sudo’ Nenosiri kwa Muda Mrefu katika Linux
  3. Jinsi ya Kurekebisha \Jina la mtumiaji halipo kwenye faili ya sudoers. Tukio hili litaripotiwa katika Ubuntu
  4. Ruhusu Sudo Akutusi Unapoweka Nenosiri Lisilosahihi

Ikiwa una maswali au maoni yoyote kuhusu nakala hii, shiriki nasi kupitia fomu ya maoni hapa chini.