Jinsi ya kulemaza Upataji wa 'su' kwa Watumiaji wa Sudo


Amri ya su ni amri maalum ya Linux ambayo hukuruhusu kuendesha amri kama mtumiaji mwingine na kikundi. Pia hukuruhusu kubadili hadi akaunti ya msingi (ikiwa inaendeshwa bila mabishano yoyote) au akaunti nyingine maalum ya mtumiaji.

Watumiaji wote kwa chaguo-msingi wanaruhusiwa kufikia amri ya su. Lakini kama msimamizi wa mfumo, unaweza kulemaza ufikiaji wa su kwa mtumiaji au kikundi cha watumiaji, kwa kutumia sudoers faili kama ilivyoelezewa hapa chini.

Faili ya sudoers huendesha programu-jalizi ya sera ya usalama ya sudo ambayo huamua marupurupu ya sudo ya mtumiaji. Amri ya sudo inaruhusu watumiaji kuendesha programu na haki za usalama za mtumiaji mwingine (kwa chaguo-msingi, kama mtumiaji wa mizizi).

Ili kubadilisha hadi akaunti nyingine ya mtumiaji, mtumiaji anaweza kutekeleza amri ya su kutoka kwa kipindi chao cha sasa cha kuingia kama inavyoonyeshwa. Katika mfano huu, aaronk ya mtumiaji anabadilisha hadi akaunti ya mtumiaji wa majaribio. Aronk ya mtumiaji itaombwa kuweka nenosiri la akaunti ya mtumiaji wa majaribio:

$ su testuser

Ili kubadili akaunti ya mizizi, mtumiaji lazima awe na nenosiri la mizizi au awe na fursa za kuomba amri ya sudo. Kwa maneno mengine, mtumiaji lazima awepo kwenye faili ya sudoers. Katika mfano huu, mtumiaji aaronk (mtumiaji wa sudo) anabadilisha akaunti ya mizizi.

Baada ya kuvuta sudo, mtumiaji aaronk anaombwa aweke nenosiri lake, ikiwa ni halali, mtumiaji anapewa ufikiaji wa ganda linaloingiliana kama mzizi:

$ sudo su

Zima Upataji kwa Mtumiaji wa Sudo

Ili kuzima ufikiaji wa sudo kwa mtumiaji wa sudo kwa mfano mtumiaji wa aaronk hapo juu, kwanza, weka nakala ya faili asili ya sudoers iliyoko /etc/sudoers kama ifuatavyo:

$ sudo cp /etc/sudoers /etc/sudoers.bak

Kisha fungua faili ya sudoers kwa kutumia amri ifuatayo. Kumbuka kuwa haipendekezi kuhariri faili ya sudoers kwa mkono, kila wakati tumia visudo amri:

 
$ sudo visudo

Chini ya sehemu ya lakabu za amri, tengeneza lakabu ifuatayo:

Cmnd_Alias DISABLE_SU = /bin/su

Kisha ongeza laini ifuatayo mwishoni mwa faili, badilisha jina la mtumiaji aaronk na mtumiaji unayetaka kuzima ufikiaji wa su:

aaronk ALL=(ALL) NOPASSWD: ALL, !DISABLE_SU

Hifadhi faili na uifunge.

Kisha jaribu ili kuthibitisha kuwa usanidi unafanya kazi kama ifuatavyo. Mfumo unapaswa kurudisha ujumbe wa hitilafu kama hii: \Samahani, mtumiaji aaronk hairuhusiwi kutekeleza '/bin/su' kama mzizi kwenye tecmint..

$ sudo su

Lemaza Ufikiaji wa Kikundi cha Watumiaji wa Sudo

Unaweza pia kulemaza ufikiaji wa su kwa kikundi cha watumiaji wa sudo. Kwa mfano kuzima ufikiaji wa su kwa watumiaji wote kwenye msimamizi wa kikundi, rekebisha laini:

%admin ALL=(ALL) ALL

kwa hili:

%admin ALL=(ALL) ALL, !DISABLE_SU

Hifadhi faili na uifunge.

Ili kuongeza mtumiaji kwenye kikundi cha msimamizi, endesha usermod amri (badilisha jina la mtumiaji na mtumiaji halisi):

$ sudo usermod -aG  admin  username

Kwa habari zaidi juu ya su, sudo na sudoers, angalia kurasa zao za watu:

$ man su
$ man sudo
$ man sudoers