sudo:
想要使用sudo,需要先在 /etc/sudoers 中定义
定义某个用户能够以另外一个用户的身份通过某主机执行某命令
# visudo
一个sudo条目:
who which_hosts=(runas) command
who which_hosts=(runas) NOPASSWD: command -->表示执行这些命令不需要进行密码验证
hadoop ALL=(root) NOPASSWD: /usr/sbin/useradd, PASSWD: /usr/sbin/usermod -->表示useradd不需要密码验证,usermod需要密码验证
hadoop ALL=(root) /usr/bin/passwd [a-zA-Z]*,! /usr/bin/passwd root -->passwd 必须跟上用户名,但不能更改root的密码
别名(类似于组): 别名必须全部而且只能使用大写英文字母
who : User_Alias
which_hosts : Host_Alias
runas : Ruans_Alias
command : Cmnd_Alias
User_Alias USERADMIN =
用户名
组名,使用 %group_name
其他定义的User_Alias
Host_Alias HOSTADMIN =
主机名
IP地址
网络地址
其他定义的Host_Alias
Runas_Alias RUNASADMIN =
用户名
%group_name
其他定义的Runas_Alias
Cmnd_Alias CMNDADMIN =
命令路径,绝对路径
目录,该目录下的所有命令
其他定义的Cmnd_Alias
sudo命令:
-l : 列出当前用户可以使用的所有sudo命令
-k : 让认证信息失效,默认第一次验证后5分钟内无需再认证