admin管理员组文章数量:1571327
1. sudo权限简介
Sudoers allows particular users to run various commands as the root user, without needing the root password.
意思是说,sudo权限管理可以让个别普通用户以管理员root的身份执行命令,而不需要root的密码。
- sudo的操作对象是Linux系统的命令,而不是普通的文件。
- 利用sudo权限,root可以把本来只能由超级用户root执行的命令赋予普通用户来执行。
- sudo可以给普通用户赋予执行特殊命令的权限。
- root先给普通用户赋予执行特殊命令的权限,普通用户才能使用sudo命令来执行特殊命令。
2. 设置sudo权限
超级用户root通过 visudo 命令来设置sudo权限,它实际上修改的是 /etc/sudoers 文件。
那么,设置sudo权限的方法就有两种:
- visudo
- vi /etc/sudoers
只需在 /etc/sudoers 文件内容的最下面添加授权代码,保存即可完成授权。
现粘贴出该文件中的部分重要代码:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
## Allows people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
如果是给某个普通用户设置sudo权限,可参考格式:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
用户名 Linux主机的地址=(可使用的身份,其实就是root) 授权的命令(绝对路径)
例如:授权user01用户可使用所有的命令。
user01 ALL=(ALL) ALL
注意: 这里给user01用户授权可以以root的身份执行所有的命令,这是非常危险的。因为,这样的话,user01就可以用root的身份执行所有的特殊命令(包括vi),而文件的rwx权限对root身份是无效的。
推荐做法: 授权的命令越具体越好,授权命令越具体,授予的权限就越小,风险也就越小。如果是同时授予多条具体的命令,命令之间用逗号分隔。
例如:授权user02用户,可以重启服务器。
user02 ALL=(ALL) /sbin/shutdown -r now
或
user02 ALL=/sbin/shutdown -r now
如果是给某个用户组设置sudo权限,可参考格式:
## Allows people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
%组名 Linux主机的地址=(可使用的身份) 授权的命令(绝对路径)
3. 普通用户如何执行sudo授予的命令
查看当前用户可以执行的sudo命令列表:
sudo -l
普通用户执行sudo赋予的命令:
sudo /sbin/shutdown -r now
或
sudo shutdown -r now
也就是说,对于sudo赋予给普通用户的命令,普通用户想要执行该命令的话,必须在前面以 sudo 开头。普通用户执行该命令时,可以不用命令的绝对路径。
版权声明:本文标题:sudo权限 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1727689990a1125757.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论