Linux 笔记分享十:sudo 权限
一、sudo权限
root把本来只能超级用户执行的命令赋予普通用户执行
sudo的操作对象是系统命令
1、visudo
root赋予普通用户执行超级命令的权限
visudo
实际是打开
/etc/sudoers
文件
/etc/sudoers
文件配置语法
user ALL=(ALL) ALL
user: 普通用户账户
第一个ALL: 被管理主机的地址
第二个ALL(括号里面的): 可使用的身份,即user转换成哪些身份,默认root,可以不写
第三个ALL: 授权的命令,默认ALL,如果想指定某些命令,最好用绝对路径指定相应的命令
- 关于第三个ALL
命令指定可以写详细的命令选项,当写上详细的命令选项,则用户获取的权限越小,命令指定的越简单,则用户获取的权限则越大
- 例子
用超级用户执行visodu命令
[root@localhost ~]# visodu
赋予user用户重启权限
... ...
user ALL=(ALL) /sbin/shutdown -r now
user下查看自己的超级命令权限
[user@localhost ~]$ sudo -l
执行重启命令
[user@localhost ~]$ sudo /sbin/shutdown -r now
2、普通用户查看自己能够执行的超级命令
sudo -l
3、授权普通用户可以添加其他用户
user ALL=/sbin/useradd
user ALL=/bin/passwd
- 第二行相当危险
[user@localhost ~]$ sudo /bin/passwd root
上面是可以执行的,root就送给user用户了
- 要改成
user ALL=/usr/sbin/useradd
user ALL=/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd "", !/usr/bin/passwd root
本作品采用《CC 协议》,转载必须注明作者和本文链接