sudo:某个用户能够以另外一个用户的身份通过哪些主机执行什么命令

sudo COMMAND

-l:列出当前用户可以使用的所有sudo类命令

-k:让认证信息失效,即每次执行都需要认证


sudo的配置文件/etc/sudoers

一行定义一个sudo条目:

who    which_hosts=(runas)    TAG:command


支持的alias,可使用!取反

who:User_Alias

which_hosts:Host_Alias

runas:Runas_Alias

command:Cmnd_Alias

别名必须全部而且只能使用大写英文字母的组合



User_Alias 

用户的用户名

% 组名

# UID

还可以包含其它已经定义的用户别名


Host_Alias

主机名

IP

网络地址

其它主机别名


Runas_Alias:

用户名

% 组名

其它的Runas别名


Cmnd_Alias:

命令路径

目录(此目录内的所有命令)

其它事先定义过的命令别名

例子 User_Alias USERADMIN=hadoop, %hadoop, %useradmin

   Cmnd_Alias USERADMINCMD= /usr/sbin/useradd, /usr/sbin/usermod, /usr/sbin/userdel,                       /usr/bin/passwd [A-Za-z]* , ! /user/bin/passwd root


TAG

NOPASSWD:执行命令是不在需要输入密码认证

PASSWD


USERADMIN    ALL=(root)    NOPASSWD:USERADMINCMD


执行完后,5分钟内再次执行不用输入密码

执行信息将保存到/var/log/secure