sudo命令想必用过linux的都很熟悉,就是容许系统管理员让普通用户执行一些或则全部的root命令的一个工具。
在sudo没有出现之前,想要使用root管理权限就必须使用su切换到root用户,缺点是必须告之root密码,这样即不安全,也不便捷权限管理linux给用户sudo权限,所以sudo即之诞生。它才能限制用户只在主机上运行个别命令,也支持开启丰富的日志记录(可做审计),且无需曝露给普通用户root密码,只需root提早授权。sudo配置文件路径为/etc/sudoers,假如你有爆棚掌握,可直接编辑,但还是推荐使用visudo命令来配置(也是调用vi命令来编辑),由于在保存时会手动检测句型,有错误会提示。
假设一个普通用户test,为其分配所有root权限
testALL=(ALL:ALL)ALL
也可指定组,后面加%
%testgroupALL=(ALL:ALL)ALL
让我们来瞧瞧三个ALL究竟是哪些意思:第一个ALL是指容许网路中的主机名linux查看硬件信息,它指明test用户可以在什么主机上执行前面的(第三个ALL)命令;第二个ALL是指以什么用户去执行命令;第三个ALL是指以什么组的身分去执行(可省略);最后一个ALL其实就是指可执行的命令名了。这四个ALL里,均可以写多个值,多个值用冒号隔开。
有时侯,我们希望使用sudo时,不要输入当前用户的密码也可以,如下配置:
testALL=(ALL)NOPASSWD:ALL
上述举例是为了便捷理解,而且不够严谨,由于test用户相当于具有root所有权限;现实中为了严格的控制帐户权限,会对用户权限做和详尽的控制,比如只分配test用户执行fdisk硬盘安装linux,kill命令,不容许执行passwd(命令路径后面加!):
testALL=(ALL)/bin/kill,/sbin/fdisk,!/usr/bin/passwd
sudo有更多的配置和用法,这儿仅概括了几个基本配置,想了解更多的朋友可以自行网上查询,木纳哥偷个懒就不细讲了。
@感觉不错的,加个关注点个赞linux给用户sudo权限,木纳哥都会有更大的动力来贡献更多的内容,谢谢诸位@
文章评论