首页 > 服务器学习 > Linux > Linux中的系统命令sudo权限
2016
12-16

Linux中的系统命令sudo权限

系统命令sudo权限作用是root用户把本来只能超级用户执行的命令赋予普通用户或指定用户组执行,sudo的操作对象只能是系统命令文件

命令语法:visudo 用户名/%组名 ALL=命令绝对路径 [选项等]

如果把用户名改成组名并在组名前面添加%,则代表针对某个用户组设定sudo权限。

如:visudo user1 ALL=/sbin/shutdown -r now代表只允许用户使用/sbin/shutdown -r now来重启服务器,但是shutdown命令的其他选项是不允许使用的,如果不加后面的选项那么user1用户可以使用shutdown命令的所有选项。

visudo命令实际修改的是/etc/sudoers文件(不用命令直接修改文件也可以实现),该文件的配置格式:

被赋予权限的用户名 ALL=(ALL) ALL

第一个ALL是被管理的主机地址,填写本机地址或用ALL代替

第二个(括号中的)ALL是代表用户执行命令时的身份,ALL代表可以使用root,一般不用改或改成root。

第三个ALL代表要授权的系统命令(命令文件的绝对路径)

该配置格式也可以简写为如:user1 ALL=/sbin/shutdown -r now的格式(省略了第二个ALL)。

被赋予权限的用户名 ALL=(ALL) NOPASSWD: ALL :添加了“NOPASSWD:”表示使用sudo命令时不需要输入密码。

普通用户查看自身可用的sudo命令:sudo -l

普通用户执行sudu赋予的命令:sudo 命令绝对路径 [选项等]

最后编辑:
作者:qingheluo
这个作者貌似有点懒,什么都没有留下。