sudo特权用户
????????????????????? ??Sudo特權用戶<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 介紹:sudo命令通過維護一個特殊用戶對應其特殊權限的數據庫,實現將特權分配給不同的用戶。 環境:生產環境下,我們不太可能直接使用root身份進行日常管理。第一不安全,第二有可能我們同時會有好幾個管理員,那么都用root進行登錄的話,將無法判斷到底是那個管理員做個什么管理工作。 ????? 而更多時候,我們同樣的不允許普通用戶能su作為root身份,這樣也是出于安全考慮。 ????? 那么如此,我們該如何做呢? 解決思路:基于種種原因,我們可以這么做,以root的身份將不同的管理權限,分配給不同的管理員。 ????? 下面分別介紹給 單個用戶、組分配特權。 1、? 給單個用戶設定特權 ?修改sudo的配置文件,全路徑是:/etc/sudoes 即使不知道路徑也沒有關系,因為我們可以用visudo命令直接打開,。編輯配置以下內容: 用戶名 主機名=特權 舉個例子:讓用戶kaodaxia在主機host上具有創建用戶的權限 visudo 回車添加如下內容 kaodaxia host=/usr/sbin/adduser,/usr/bin/passwd 這里需要注意的是,所給出的特權如/usr/sbin/adduser一定要給出絕對路徑,因為普通用戶的PATH變量可能沒有這些特權命令的路徑。而且多個特權命令中間要用逗號分開。 配置完成后,用戶kaodaxia就可以有添加用戶的權限了。使用如下命令格式操作特權命令。 比如想創建一個叫zhangsan的用戶,就可以按下面的方式完成 sudo /usr/sbin/adduser zhangsan sudo /usr/sbin/passwd zhangsan 思考 如何讓用戶kaodaxia能在主機benet上執行重啟和關機的命令 2、? 給組用戶設定特權 ?給組設定特權就更簡單了。基本和單個用戶操作一樣,只需要在組名前加上%的符號就可以了。下面給個例子吧。!! 如讓組guanli的所有用戶都具有root權限 visudo? 回車 %guanli ALL=(ALL)? 保存退出,表示guanli組所有用戶在所有主機上具有所有權限,那可不就是root權限了嗎,。 3、? 別名配置? 別名的配置有點類似組的概念,不,應該說是有點像我們學過的sendmail 中利用別名實現群發功能一樣。。 給個例子,,我想要用戶zhangsan、zhangsi、zhangwu都具有修改用戶屬性的特殊權限,但是他們并不屬于一個組,如果單個給他們設定權限,又很麻煩,所以我們可以給他們定義一個別名,像是邏輯上給他們放到一個組里,但這個組是虛擬的,并不存在。 Visudo 回車 user_alias? zhangyi=zhangsan,zhangsi,zhangwu zhangyi? benet=/usr/sbin/chmod User_alias? 是給用戶定義別名,如在上面的例子給出的是zhangyi.然后給別名定義特權。 用戶在使用sudo操作特權命令時,會提示輸入密碼確認。如果不想要密碼確認,只需要在修改配置文件時,在 特權命令后面加上 NOPASSWD:ALL就可以了。。。 如 zhangsan benet=/usr/sbin/date? NOPASSWD:ALL 那么用戶zhagsan在主機benet上用date命令修改時間時,就不會提示輸入密碼確認了。
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
轉載于:https://blog.51cto.com/kaodaxia/197093
總結
- 上一篇: IPSec的NAT穿越
- 下一篇: 内控与IT安全的关系,IT内控与安全审计