sudo的字面意思是表明super user do!對Linux系統管理員或高級用戶而言,它是必不可少的最重要的命令之一。
你可曾有過這樣的經歷:在終端中試着運行某個命令,結果卻遇到「拒絕訪問」?怎麼辦?對了,這個就是你所需
要的命令!
1、OK!那麼下面我將舉一個簡單的列子,看一下如何使用配置和使用sudo來管理咱們的具體服務。
1.輸入命令
chmod u+w /etc/sudoers
2.編輯/etc/sudoers文件,輸入命令vim /etc/sudoers,進入編輯模式,找到這一 行:
root ALL=(ALL) ALL
在起下面添加"username ALL=(ALL) ALL" (username是你須要使用sudo的帳號名稱)
3.保存退出 wq!
4.撤銷文件的寫權限
chmod u-w /etc/sudoers
5.切換到你剛纔配置的帳號下面
如:su - lvsadmin
6.使用sudo進行提權操做
sudo service keepalived restart
2、經過以上配置,咱們能夠看出上面的配置不夠優雅,安全性存在隱患,接下來咱們看一下如何對sudo進行細粒
度管理。
好比咱們想限制一下username的權利,不讓他隨心所欲。好比咱們只想讓他像root那樣使用ls和ifconfig命令,我
們能夠將sudoers的內容改爲以下:
username localhost=/sbin/ifconfig,/bin/ls
免密碼執行sudo列子:
username localhost=NOPASSWD:/bin/cat,/bin/ls
3、再來看一下sudoers配置各參數的意義
第一個ALL是指網絡中的主機,能夠改爲具體主機名,它指明待添加的用戶能夠在此主機上執行後面的命令。第二
ALL是指目標用戶,也就是以誰的身份去執行命令,最後一個ALL就是指具體的命令了。
四.日誌與安全
sudo爲安全考慮得很周到,不只能夠記錄日誌,還能在有必要時向系統管理員報告。可是,sudo的日誌功能不是自
動的,必須由管理員開啓,具體步驟以下:
1.建立日子文件
#touch /var/log/sudo
2.配置日誌輸出路徑
#vi /etc/syslog.conf添加內容以下:
local2.debug/var/log/sudo
3.重啓syslog進程生效配置
ps - aux|grep syslogd
kill–hup PID
5、在使用sudo提權後命令太長又不符合用戶的習慣,那麼咱們能夠爲它指定一個別名
alias goconfig=‘cd /usr/X11/lib/X11’
解除別名:
unalias goconfig
vim