正确配置Sudoers

0x81 软件包升级机制

之前我们在《Sudoers-Configuration》说过如何去配置Sudoers,以达到自己临时提权的目的,并且提到我们理应使用visudo这个命令去修改配置文件,这个文件默认修改的文件路径是/etc/sudoers。使用包管理升级过软件包的都知道,包管理器在升级软件包时除了分析数据库中的依赖之外,还会对当前已安装软件包的文件状况进行统计,比如我使用的Fedora的rpm工具就能检测到那些文件发生了,在我使用dnf升级sudo软件包时,由于我修改了sudoers这个文件,因此rpm会产生一个/etc/sudoers.rpmnew文件,这个文件就是新版版本的默认配置与旧版本不一致为避免丢失用户设置而产生的。

0x82 分散配置文件夹

和大部分带有可配置文件的软件工具一样,sudo提供了/etc/sudoers.d文件夹给用户加载自定义配置,这样就可以在不修改源配置文件的情况下添加我们自己的配置。当然这个文件夹也是可以配置的,但是这样就需要修改我们的默认文件夹,如果你想自定义配置路径,可以在默认的sudoers.d中作一次中转。

默认配置文件夹

0x83 添加自定义配置

起初我使用vim直接写入了一个文件,后来发现没有效果,于是我使用visudo -f path重新添加了一个文件,发现后者是有效的。经过对比我发现他们的权限是不一样的:

权限差异与检查结果

所以前者不好用也就很好理解了,把权限修改正确就能用了。