linux如何配置普通用戶(非root用戶)的sudo權限


sudo是為所有想使用root權限的普通用戶設計的。可以讓普通用戶具有臨時使用root權限的權利,只需要普通用戶輸入自己賬戶的密碼即可。當然這個普通用戶必須在/etc/sudoers文件中具有配置項,才具有使用sudo的權利。

沒有配置權限之前,普通用戶是無法進行root權限操作的,下圖的user-1是用戶的名字,例如普通用戶查看/root目錄下的文件:

 

使用root用戶編輯/etc/sudoers文件,給普通用戶授權

命令行輸入visudo,打開/etc/sudoers文件,加入如下的內容,user-1是用戶的名字,保存:

 

這樣普通用戶就可以使用sudo執行需要root權限的命令了,如下:

 

 

 sudo的工作過程如下:

1. 當用戶執行sudo時,系統會主動尋找/etc/sudoers文件,判斷該用戶是否有執行sudo的權限

2. 確認用戶具有執行sudo的權限后,讓用戶輸入自己的密碼進行確認

3. 若密碼輸入成功,則開始執行sudo后續的命令

如果想要更加精准的控制普通用戶使用sudo的場景,就需要理解配置中的含義。

user-1 ALL=(ALL)    ALL

第一個ALL是指網絡中的主機,我們可以指定主機名,這樣user-1用戶只可以在此主機上執行后面的命令。第二個括號里的ALL是指目標用戶,也就是以誰的身份去執行命令,最后一個命令指命令名稱。

例如,我們想讓user-1用戶在node-1主機上以allen的身份執行kill命令,就可以這樣編寫配置文件:

user-1 node-1=(allen)    /bin/kill

案例:只允許user-1用戶以root身份在node-1主機上執行ls、cat命令,並且執行的時候免輸入密碼。

 需要修改/etc/sudoers配置文件:

user-1 node-1=NOPASSWD:    /bin/ls,/bin/cat

 

 

此時若user-1用戶執行非ls、cat命令時會被禁止:

而ls命令就可以正常執行:

 


原文鏈接:https://blog.csdn.net/czr11616/article/details/99767464


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM