linux如何配置普通用户的sudo权限?
linux配置普通用户(非root用户)的sudo权限
sudo是为所有想使用root权限的普通用户设计的。可以让普通用户具有临时使用root权限的权利,只需要普通用户输入自己账户的密码即可。当然这个普通用户必须在/etc/sudoers文件中具有配置项,才具有使用sudo的权利。
没有配置权限之前,普通用户是无法进行root权限操作的,例如普通用户查看/root目录下的文件:
使用root用户编辑/etc/sudoers文件,给普通用户授权
命令行输入visudo,打开/etc/sudoers文件,加入如下的内容,保存:
这样普通用户就可以使用sudo执行需要root权限的命令了,如下:
sudo的工作过程如下:
1. 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限
2. 确认用户具有执行sudo的权限后,让用户输入自己的密码进行确认
3. 若密码输入成功,则开始执行sudo后续的命令
如果想要更加精准的控制普通用户使用sudo的场景,就需要理解配置中的含义。
第一个ALL是指网络中的主机,我们可以指定主机名,这样user-1用户只可以在此主机上执行后面的命令。第二个括号里的ALL是指目标用户,也就是以谁的身份去执行命令,最后一个命令指命令名称。
例如,我们想让user-1用户在node-1主机上以allen的身份执行kill命令,就可以这样编写配置文件:
案例:只允许user-1用户以root身份在node-1主机上执行ls、cat命令,并且执行的时候免输入密码。
需要修改/etc/sudoers配置文件:
此时若user-1用户执行非ls、cat命令时会被禁止:
而ls命令就可以正常执行: