Linux基礎(chǔ)教程之sudo使用指南
一、前言
sudo是什么?
sudo是系統(tǒng)管理指令;由于root用戶權(quán)限過(guò)大,在實(shí)際生產(chǎn)過(guò)程中很少使用root用戶直接登錄系統(tǒng),而是使用普通用戶登錄系統(tǒng);但是如果普通用戶要對(duì)系統(tǒng)進(jìn)行日常維護(hù)操作時(shí)需要su到root用戶,為了提高安全性,可以使用sudo授權(quán)某一用戶在某一主機(jī)以某一用戶身份運(yùn)行某些命令;從而減少root用戶密碼知曉人,提高系統(tǒng)安全性。
sudo的優(yōu)勢(shì):
①授權(quán)指定用戶在指定的主機(jī)上運(yùn)行指定的管理命令;
②詳細(xì)記錄用戶基于sudo執(zhí)行的命令相關(guān)的日志信息;
③”檢票系統(tǒng)”:時(shí)效性認(rèn)證,用戶第一次執(zhí)行sudo命令時(shí)會(huì)要求輸入密碼來(lái)驗(yàn)證用戶身份,成功后用戶會(huì)獲得一個(gè)有固定存活時(shí)長(zhǎng)的”令牌”(令牌默認(rèn)存活時(shí)長(zhǎng)為5分鐘)
二、sudo相關(guān)參數(shù)
sudo的授權(quán)文件:/etc/sudoers,只有管理員能夠編輯
1、實(shí)現(xiàn)sudo授權(quán)的方法
①使用vim打開(kāi)編輯:
可以實(shí)現(xiàn)文本著色,但是不能檢測(cè)語(yǔ)法錯(cuò)誤,不建議使用
②visudo:專用的sudoers文本編輯工具
配置完成后能夠檢測(cè)提示語(yǔ)法錯(cuò)誤,建議使用此編輯工具進(jìn)行/etc/sudoers進(jìn)行編輯
幫助文檔:man visudo;man visudoers
2、sudo授權(quán)格式:授權(quán)某用戶在某主機(jī)上以某用戶的身份運(yùn)行指定的管理命令
WHO ? ? HOST=(WHOM) ? ? COMMAND
別名定義:別名必須使用全大寫字符
WHO別名定義:
User_Alias ? NAME = item1,item2,item3,….
item:可以是用戶名,%組名,#UID,$#GID,User_Alias
HOST別名定義:
Host_Alias ?NAME = item1,item2,item3,….
item:可以是hostname,ip,network,Host_Alias
WHOM別名定義:
Runas_Alias ?NAME = item1,item2,item3,….
item:可以是用戶名,%組名,#UID,$#GID,User_Alias
COMMANDb別名定義:
Cmnd_Alias ?NAME = item1,item2,item3,…..
item:可以是命令,目錄(目錄下的所有命令),”sudoedit”,Cmnd_Alias
3、常用的標(biāo)簽
PASSWD: 執(zhí)行操作時(shí),需要輸入密碼,來(lái)驗(yàn)證用戶身份
NOPASSWD: 執(zhí)行操作時(shí),無(wú)需輸入密碼,不能確定用戶身份
4、sudo常用的命令參數(shù)
-l: 查看當(dāng)前用戶可執(zhí)行的sudo命令
-k:清除”令牌”
-b COMMAND:在后臺(tái)運(yùn)行指定的命令COMMAND
-e /path/to/somefile: 修改指定的文件
-u USERNAME COMMAND: 以指定用戶的身份運(yùn)行指定的命令COMMAND
三、配置舉例
1、授權(quán)cnetos用戶具有添加用戶的權(quán)限
使用centos用戶登錄測(cè)試: ? ? ?
2、別名定義以及調(diào)用
測(cè)試;centos用戶登錄測(cè)試指定的相關(guān)命令:?
?
3、防止授權(quán)用戶修改密碼修改root用戶的密碼?