sudo授权

添加用户授权方式:vi /etc/sudoers sudo visudo,两种方式的区别在于后者能够自动检查配置是否正确。
在文件中找到这行:root ALL=(ALL) ALL,在下面添加XXX ALL=(ALL) ALL (注:这里的xxx是你的用户名)

#一、允许用户youuser执行sudo命令(需要输入密码)。
youuser            ALL=(ALL)                ALL
#二、允许用户组youuser里面的用户执行sudo命令(需要输入密码)。
%youuser           ALL=(ALL)                ALL
#三、允许用户youuser执行sudo命令,并且在执行的时候不输入密码。
youuser            ALL=(ALL)                NOPASSWD: ALL
#四、允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码。
%youuser           ALL=(ALL)                NOPASSWD: ALL

sudo的工作过程如下:

1. 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限

2. 确认用户具有执行sudo的权限后,让用户输入自己的密码进行确认

3. 若密码输入成功,则开始执行sudo后续的命令

如果想要更加精准的控制普通用户使用sudo的场景,就需要理解配置中的含义。

ywjadid ALL=(ALL) ALL

第一个ALL是指网络中的主机,我们可以指定主机名,这样ywjadid用户只可以在此主机上执行后面的命令。

第二个括号里面的ALL是指目标用户,也就是以谁的身份去执行命令。

第三个ALL是指命令名称。

详细案例:

1、ywjadid用户在oracle主机上以root身份执行yum命令

ywjadid oracle=(root) /usr/bin/yum

2、ywjadid用户在oracle主机上以root身份执行yum、rpm命令,并且免密

ywjadid oracle=(root ) NOPASSWD:/usr/bin/yum,/usr/bin/rpm