配置sudo权限
目錄
?1.sudo的介紹
2.實(shí)驗(yàn)準(zhǔn)備工作(前奏)
3.修改完整示例
?
?1.sudo的介紹
sudo(superuser or another do)
讓普通用戶可以以超級(jí)管理員或其他人的身份執(zhí)行命令。
sudo基本流程如下:
管理員需要先授權(quán)(修改/etc/sudoers文件)
普通用戶以sudo的形式執(zhí)行命令
修改/etc/sudoers的方法如下:
visudo(帶語法檢查,默認(rèn)沒有顏色提示)
vim /etc/sudoers(不帶語法檢查,默認(rèn)有顏色提示)
授權(quán)格式如下: 用戶或組 主機(jī)列表=(提權(quán)身份) [NOPASSWD]:命令列表
注意事項(xiàng):命令需要寫絕對(duì)路徑,對(duì)組授權(quán)需要在組名稱前面加%。
2.實(shí)驗(yàn)準(zhǔn)備工作(前奏)
? 1)使用 root 給虛擬機(jī)創(chuàng)建普通賬戶 alice,設(shè)置密碼為 654321
# useradd alice
# echo 654321 | passwd --stdin alice
??????? #重啟計(jì)劃任務(wù)服務(wù)會(huì)失敗
??????? #創(chuàng)建用戶會(huì)失敗
????????#重裝 vim 會(huì)失敗
那么問題來了,如何讓普通用戶也可以做管理員的操作呢?
?2) 管理員 root 修改/etc/sudoers 文件
????????注意是管理員 root 操作:
3) 普通用戶 alice 再次測(cè)試一下,看看能不能裝包、啟服務(wù)、建用戶
#創(chuàng)建用戶會(huì)失敗
#重啟服務(wù)會(huì)失敗
等等... ...
結(jié)論:正常執(zhí)行命令就是以普通用戶的身份執(zhí)行命令,sudo 后面加命令就是以 root 身份執(zhí)行命令晉級(jí)操作(高潮)
:
管理員 root 再次修改/etc/sudoers 文件,將之前添加的一行內(nèi)容適當(dāng)修改如下:
#該文件為只讀文件,需要 root 強(qiáng)制保存退出
普通用戶 alice 再次測(cè)試一下:
#先切換為普通用戶 alice
#不用輸入任何密碼就可以創(chuàng)建賬戶(神奇嗎)
#普通用戶不需要任何密碼,直接切換為 root(驚不驚喜,意不意外)
普通用戶 sudo -i 切換 root 后就可以為所欲為了!
但是,前提條件是管理員需要修改 sudoers 文件,允許你這么干!!
附加嘗試(尾聲)
3.修改完整示例
cat /etc/sudoers
… …
root ALL=(ALL) ALL
tom ALL=(root) /usr/bin/systemctl
%wheel ALL=(ALL) ALL
#該文件為只讀文件,需要 root 強(qiáng)制保存退出
總結(jié)語法:用戶
主機(jī)名=(提權(quán)的用戶)
NOPASSWD: 命令
總結(jié)