sudo 提權(quán)
一.sudo:
某個(gè)用戶能夠以另外一個(gè)用戶的身份通過(guò)某主機(jī)執(zhí)行某命令
useradd admin
sudo 的配置文件? /etc/sudoers
visudo
每一行就定義了一個(gè)sudo的條目:
who? which——hosts=(runas) TAG: command
? ? 基本配置格式
=
user list 用戶/組,或者已經(jīng)設(shè)置的用戶的別名列表, 用戶名直接 username至壤,用戶組加上%况增,比如%admin,
host list 主機(jī)名或別名列表
operator list runas用戶涌哲,即可以以哪個(gè)用戶富蓄、組的權(quán)限來(lái)執(zhí)行
command list 可以執(zhí)行的命令或列表
tag list 這個(gè)經(jīng)常用到的是 NOPASSWD: 剩燥,添加這個(gè)參數(shù)之后可以不用輸入密碼
別名機(jī)制:類似定義了一個(gè)組
4類:
用戶別名:? User_Alias
主機(jī)別名: Hosts_Alias
參照用戶: Runas_Alias
命令別名: Cmnd_Alias
別名的名字只能使用大寫(xiě)的英文字母組合
別名:可使用!取反
User_Alias? USERADMIN = 系統(tǒng)用戶名? 或? %組名? 或用戶別名
Hosts_Alias 主機(jī)名? IP? 網(wǎng)絡(luò)地址? 其它主機(jī)名? 可以嵌套
Runas_Alias 用戶名? #UID? ? 別名
Cmnd_Alias? ? 命令絕對(duì)路徑? 目錄(下面所有命令) 其它定義的命令別名
例子:定義hadoop用戶可以以root用戶的身份執(zhí)行useradd? 命令
? ? ? /usr/sbin/useradd? hadoop
? sudo /usr/sbin/useradd hadoop
? visudo? ? hadoop? ALL=(root) /usr/sbin/useradd ,/usr/sbin/usermod
? 在第一次輸入后立倍,密碼會(huì)被記錄灭红,5分鐘內(nèi)是有效的
? sudo -k 取消密碼記憶,必須再重新進(jìn)行驗(yàn)證
? sudo -l? 列出當(dāng)前用戶所有可以使用的sudo類的命令
例子: ?
? hadoop? ALL=(root) NOPASSWD: /usr/sbin/useradd
口注, PASSWD: /usr/sbin/usermod
例子:
? User_Alias USERADMIN = hadoop , %hadoop
? Cdm_Alias USERADMINCMD = /usr/sbin/useradd,
/user/sbin/usermod,/usr/sbin/userdel,
/usr/bin/passwd [A-Za-z]*,变擒!/usr/bin/passwd root
記錄sudo日志到指定的文件:
編輯/etc/sudoers文件,添加如下行:
Defaults? ? ? logfile=/var/log/sudo.log
? ? Defaults? !syslog
visudo -c 可以檢查配置文件語(yǔ)法