电脑技术学习

Linux下的Root权限控制

dn001

3、Root分权

大家知道,由于Root具有最高的权限,经常用root用户来管理系统,会给系统带来一定的安全隐患。比如,一条无意识输入的破坏性的命令有可能会给系统带来毁灭性的打击。另外,如果系统被植入了嗅探工具,如果用root登录会造成root口令被窃取。因此我们要消减Root的权限,可以让其它用户来完成Root的一些工作,避免过多地使用Root用户。

如何为Root分权,要根据服务器的性质来确定。比如一个Linux平台的apache服务器,作为管理员经常使用的命令应该是诸如/usr/local/apache2/bin/apachect1 start/stop/restart这样的是启动/重启/停止服务器的命令。我们可以为此创建一个用户gslw来管理apache服务器,我们知道普通用户是没有权限来启动apache服务器的。这里要用到sudo命令,通过它为gslw用户加入扩展权限使其可以管理apache服务器。

利用Vi或者直接进入/etc/pam.d打开sudo文件,然后在其中添加一行gslw ALL=(ALL) /usr/local/apache2/bin/apachectl命令就可以了。该命令分成四个字段,依次为用户名、作用对象、以谁的身份运行以及运行的命令。当然,我们也可以加入gslw localhost=(root) /usr/local/apache2/bin/apachectl start,这样过滤更严格一些。最后保存退出后,使用gslw用户登录系统就可以运行/usr/local/apache2/bin/apachectl start命令了。上面只是举例,大家可以根据自己的需要在sudo文件中添加相应的命令行。不过,需要说明的是命令一定要严格过滤,不要赋权过大。(图7)

Root分权

总结:Linux下的权限控制是非常严格的,但也非常灵活,我们可以根据自己的安全需求进行布防。当然,关于Root权限的控制策略和方法还有很多,希望本文提供的思路对大家有所帮助。

标签: linux