Sudo是Unix/Linux平臺上的一個(gè)非常有用的工具,它允許系統(tǒng)管理員分配給普通用戶一些合理的“權(quán)利”,讓他們執(zhí)行一些只有超級用戶或其他特許用戶才能完成的任務(wù),比如:運(yùn)行一些像mount,halt,su之類的命令,或者編輯一些系統(tǒng)配置文件,像/etc/mtab, /etc/samba/smb.conf等。這樣以來,就不僅減少了root用戶的登陸次數(shù)和管理時(shí)間,也提高了系統(tǒng)安全性。 一、sudo的特點(diǎn) sudo扮演的角色注定了它要在安全方面格外謹(jǐn)慎,否則就會(huì)導(dǎo)致非法用戶攫取root權(quán)限。同時(shí),它還要兼顧易用性,讓系統(tǒng)管理員能夠更有效,更方便地使用它。sudo設(shè)計(jì)者的宗旨是:給用戶盡可能少的權(quán)限但仍允許完成他們的工作。所以,sudo有以下特點(diǎn): 1、sudo能夠限制指定用戶在指定主機(jī)上運(yùn)行某些命令。 2、sudo可以提供日志,忠實(shí)地記錄每個(gè)用戶使用sudo做了些什么,并且能將日志傳到中心主機(jī)或者日志服務(wù)器。 3、sudo為系統(tǒng)管理員提供配置文件,允許系統(tǒng)管理員集中地管理用戶的使用權(quán)限和使用的主機(jī)。它默認(rèn)的存放位置是/etc/sudoers。 4、sudo使用時(shí)間戳文件來完成類似“檢票”的系統(tǒng)。當(dāng)用戶執(zhí)行sudo并且輸入密碼后,用戶獲得了一張默認(rèn)存活期為5分鐘的“入場券”(默認(rèn)值可以在編譯的時(shí)候改變)。超時(shí)以后,用戶必須重新輸入密碼。 二、sudo命令 1、sudo條目語法如下: whowhich_hosts=(runas) TAG:command hadoop ALL=(root) NOPASSWD:/usr/sbin/useradd, PASSWD:/usr/sbin/userdel 注釋:hadoop用戶可以在任何地點(diǎn)以管理的身份執(zhí)行命令useradd(無需密碼)和usermod(需要密碼) 2、關(guān)于別名(宏) 此外sudo還支持別名的定義,我們通過引用定義好的別名可以提供工作效率: who User_Alias which_hosts Host_Alias runas Runas_Alias command Cmnd_Alias
3、使用visudo來編輯配置文件(/etc/sudoers) 雖然我們可以使用vim直接來編輯sudo的配置文件,但sudo提供了更加智能的編輯命令visudo,它能在編輯配置文件的同時(shí)幫我們檢查語法錯(cuò)誤,并在錯(cuò)誤時(shí)提供快捷的返回功能,如圖: 4、visudo常用選項(xiàng) 查看當(dāng)前用戶可以使用所有sudo類的命令可以使用 -l 選項(xiàng),如圖: 由于sudo默認(rèn)密碼刷新時(shí)間為5分鐘,如果剛好用戶輸入密碼執(zhí)行命令之后因其他原因離開計(jì)算機(jī),其他用戶在5分鐘之后執(zhí)行相同的命令依然有效,如圖: 為了防止這種情況的發(fā)生,可以使用 -k 選項(xiàng),如圖: 為了能夠明確的追究責(zé)任,sudo還提供了人性化的日志功能,在/var/log/secure日志文件中可以查看到,用于記錄所有sudo類用戶的所有動(dòng)作,如圖: 日志文件的安全性 三、基本實(shí)例用法 1、hadoop用戶可以在任何地點(diǎn)以管理員的身份執(zhí)行命令useradd(無需密碼)和usermod(需要密碼)。 使用visudo命令在配置文件末尾添加如下內(nèi)容:
切換至hadoop用戶測試結(jié)果: 2、hadoop用戶和組可以在任何地點(diǎn)以管理員的身份執(zhí)行命令執(zhí)行增、刪、改、設(shè)置用戶名密碼,但不允許設(shè)置管理員的密碼。 使用visudo命令在配置文件末尾添加如下內(nèi)容:
3、hadoop用戶只能在192.168.1.120主機(jī)遠(yuǎn)程登錄并以管理員身份執(zhí)行ifconfig eth0命令。 使用visudo命令在配置文件末尾添加如下內(nèi)容:
使用192.168.1.104測試,如圖: 使用192.168.1.120測試,如圖: 4、hadoop用戶可以在任何地點(diǎn)以任何的身份執(zhí)行所有命令,等同于root。 使用visudo命令在配置文件末尾添加如下內(nèi)容:
本文出自 “星矢” 博客,轉(zhuǎn)載請與作者聯(lián)系! |
|