sudo命令詳解
一. sudo的特點
我們直接略過上邊的部分,直接看”# User privilege specification”用戶權限定義部分
大致可以描述為:
who where whom command
root ALL=(ALL:ALL) ALL
root 表示root用戶
ALL 表示從任何的主機都可以執行,也可以這樣192.168.100.0/24
(ALL:ALL) 是以誰的身份來執行,ALL:ALL就表示root可以以任何人的身份來執行命令,第一個ALL是用戶,第二個ALL是組
ALL 表示任何命令
那么整條規則就是root用戶可以在任何主機以任何人的身份來執行所有的命令。
在看下面這個定義:
%wheel ALL=(ALL) ALL
允許wheel組中的所有人運行所有的命令
這就可以說明把用戶加入到wheel組就可以使用sudo命令
再看一個例子:
nick 192.168.10.0/24=(root) /usr/sbin/useradd
上面的配置只允許nick用戶在192.168.10.0/24網段上連接主機并且以root權限執行useradd命令。
設置 sudo 時不需要輸入密碼
sudoers配置可以在命令部分附加選項,比如設置執行sudo時不需要輸入密碼,可以這么配置:
nick ALL=(ALL) NOPASSWD: ALL
sudo扮演的角色注定了它要在安全方面格外謹慎,否則就會導致非法用戶攫取root權限。同時,它還要兼顧易用性,讓系統管理員能夠更有效,更方便地使用它。sudo設計者的宗旨是:給用戶盡可能少的權限但仍允許完成他們的工作。所以,sudo
有以下特點:
# 1. sudo能夠限制指定用戶在指定主機上運行某些命令。
# 2. sudo可以提供日志,忠實地記錄每個用戶使用sudo做了些什么,并且能將日志傳到中心主機或者日志服務器。
# 3. sudo為系統管理員提供配置文件,允許系統管理員集中地管理用戶的使用權限和使用的主機。它默認的存放位置是/etc/sudoers。
# 4.sudo使用時間戳文件來完成類似“檢票”的系統。當用戶執行sudo并且輸入密碼后,用戶獲得了一張默認存活期為5分鐘的“入場券”(默認值可以在編譯的時候改變)。超時以后,用戶必須重新輸入密碼。
我們直接略過上邊的部分,直接看”# User privilege specification”用戶權限定義部分
大致可以描述為:
who where whom command
root ALL=(ALL:ALL) ALL
root 表示root用戶
ALL 表示從任何的主機都可以執行,也可以這樣192.168.100.0/24
(ALL:ALL) 是以誰的身份來執行,ALL:ALL就表示root可以以任何人的身份來執行命令,第一個ALL是用戶,第二個ALL是組
ALL 表示任何命令
那么整條規則就是root用戶可以在任何主機以任何人的身份來執行所有的命令。
在看下面這個定義:
%wheel ALL=(ALL) ALL
允許wheel組中的所有人運行所有的命令
這就可以說明把用戶加入到wheel組就可以使用sudo命令
再看一個例子:
nick 192.168.10.0/24=(root) /usr/sbin/useradd
上面的配置只允許nick用戶在192.168.10.0/24網段上連接主機并且以root權限執行useradd命令。
設置 sudo 時不需要輸入密碼
sudoers配置可以在命令部分附加選項,比如設置執行sudo時不需要輸入密碼,可以這么配置:
nick ALL=(ALL) NOPASSWD: ALL

浙公網安備 33010602011771號