linux sudo命令的概念與使用
1.sudo介紹
本文引用地址:http://www.biyoush.com/article/201610/305498.htmsudo是linux下常用的允許普通用戶使用超級(jí)用戶權(quán)限的工具,允許系統(tǒng)管理員讓普通用戶執(zhí)行一些或者全部的root命令,如halt,reboot,su等等。這樣不僅減少了root用戶的登陸和管理時(shí)間,同樣也提高了安全性。Sudo不是對(duì)shell的一個(gè)代替,它是面向每個(gè)命令的。它的特性主要有這樣幾點(diǎn):
sudo能夠限制用戶只在某臺(tái)主機(jī)上運(yùn)行某些命令。
sudo提供了豐富的日志,詳細(xì)地記錄了每個(gè)用戶干了什么。它能夠?qū)⑷罩緜鞯街行闹鳈C(jī)或者日志服務(wù)器。
sudo使用時(shí)間戳文件--日志 來(lái)執(zhí)行類似的“檢票”系統(tǒng)。當(dāng)用戶調(diào)用sudo并且輸入它的密碼時(shí),用戶獲得了一張存活期為5分鐘的票(這個(gè)值可以在編譯的時(shí)候改變)。
sudo的配置文件是sudoers文件,它允許系統(tǒng)管理員集中的管理用戶的使用權(quán)限和使用的主機(jī)。它所存放的位置默認(rèn)是在/etc/sudoers,屬性必須為0411。
2.下面詳細(xì)解釋配置實(shí)例:
[root@ocm1 ~]# rpm -qa|grep sudo --查詢是否已經(jīng)安裝SUDO,一般是安裝了的。
sudo-1.6.9p17-5.el5
[root@ocm1 ~]# visudo ---root使用visudo會(huì)默認(rèn)打開(kāi)/etc/sudoers文件,
root ALL=(ALL) ALL ---系統(tǒng)默認(rèn)只有這一行
oracle ALL=(ALL) ALL ----為ORACLE用戶增加這一行,
3.配置中可能碰到的問(wèn)題:
1、主機(jī)名配置錯(cuò)誤導(dǎo)致sudo不能執(zhí)行和日志紀(jì)錄。
錯(cuò)誤提示:Sorry, user test is not allowed to execute '/bin/cat /etc/sudoers' as root on
localhost.localdomain.
解決:將其中的localhost改為真實(shí)主機(jī)名字或IP即可
test localhost=/sbin/cat /etc/sudoers
Defaults@localhost log_host /var/log/sudo.log
2、命令別名列表中命令錯(cuò)誤導(dǎo)致sudo不能執(zhí)行
錯(cuò)誤提示:[jackyu@localhost jackyu]$ sudo cat /etc/sudoers
Sorry, user jackyu is not allowed to execute '/bin/cat /etc/sudoers' as root on
localhost.localdomain.
解決:由于在Cmnd alias里定義的時(shí)候命令書(shū)寫(xiě)有誤(Cmnd_Alias CAT = /bin/cat -n /etc/sudoers).
執(zhí)行:sudo cat -n /etc/sudoers
評(píng)論