雜集:淺談關於linux中sudoers配置授權規則,附帶案例

前言:

/etc/sudoers 的規則可分為兩類:

一類是別名定義[略]。

別名定義並不是必須的,授權規則是必須的。

如果系統中只有幾個少量用戶,設置權限有限的話,可以不用定義別名,針對系統用戶直接授權。

格式:

授權用戶 主機=[(切換到哪些用戶或用戶組)] [是否需要密碼驗證] [命令1],

[(切換到哪些用戶或用戶組)] [是否需要密碼驗證] [命令2],......

簡化:

主機=ALL:表示授權用戶可以在任何可能出現的主機名的系統中執行後面命令。

注意:

1、[ ]中的內容,可以省略。

2、命令與命令之間用','號分隔。

3、[(切換到哪些用戶或用戶組)]:

3.1:如果省略,則默認為root用戶。

案例:user1 ALL=/bin/chown,命令2 表示:user1可以切換到root

3.2:如果ALL,則代表能切換到所有用戶。

案例:user1 ALL=(ALL) 命令1,命令2 表示:user1用戶可以切換到任何用戶

4、 [是否需要密碼驗證]

4.1:如果省略,需要驗證密碼。

4.2:NOPASSWD:命令 這樣就不需要輸入密碼

扯文字遊戲還是比較無聊的,看一下下面的幾個案例。

案例1:

user1 ALL=(root) /bin/chown

表示:user1可以切換到root執行後面的命令,需要輸入密碼

案例2:

user1 ALL=(root) NOPASSWD: /bin/chown

表示:user1可以切換到root執行後面的命令,不需要輸入密碼

案例3:[懶人型,不推薦]

user1 ALL=(ALL) NOPASSWD:ALL

user1 ALL=(ALL) ALL

表示:用戶user1可以切換到所有用戶執行所有命令

注意:

關於wheel組下期再做詳細解釋

1、以centos7普通用戶stephen為例,演示如何授權:

創建用戶併為其賦密碼

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

切換到stephen用戶

以chown命令為例

注意:普通用戶是不能使用chown命令的

下圖所示無權限操作

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

2、利用root修改/etc/sudoers文件

首先給sudoers可寫[w]的權限

chmod u+w /etc/sudoers

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

查看

ll /etc/sudoers

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

3.1、測試案例1:

測試命令:stephen ALL=(root) /bin/chown

vim /etc/sudoers

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

切換到stephen測試

sudo chown stephen:odysee sudoFile/

注意:

1、使用命令需要輸入密碼

2、sudo -l:可以查看用戶擁有的命令

如下圖stephen只有一個可憐巴巴的chown

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

3.2、測試案例2:

測試命令:stephen ALL=(root) NOPASSWD: /bin/chown

用root用戶修改一下sudoers文件

vim /etc/sudoers

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

切換到stephen測試

sudo chown stephen:root sudoFile/

這裡就不用輸入密碼了

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

4、還原文件,去掉sudoers文件w權限

雜集:淺談關於linux中sudoers配置授權規則,附帶案例

其實只要弄明白了授權規則,其他的都是自己操作驗證了

提示:

最好別user1 ALL=(ALL) NOPASSWD:ALL/user1 ALL=(ALL) ALL這麼直接。

下一篇談一下關於wheel組的認識。

歡迎大家給予寶貴的意見或者建議。

歡迎大家補充或者共享一些其他的方法。

感謝支持。


分享到:


相關文章: