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