Linux是当前比较流行
![](/icons/9326de.gif)
网络服务器操作系统
![](/icons/9326dou.gif)
它继承了UNIX系统安全、稳定、高效等优点
![](/icons/9326dou2.gif)
在Linux系统中Root拥有最高权限
![](/icons/9326dou.gif)
正因如此攻击者往往以获取Root权限为目标
![](/icons/9326dou2.gif)
作为管理员如何有效地对Root进行有效管理呢?本文将从权限控制
![](/icons/9326de.gif)
角度
![](/icons/9326dou.gif)
提供几个安全窍门技巧
演示环境
Red Hat Enterprise Linux 5
1、远程登录
我们知道在RHEL系统中
![](/icons/9326dou.gif)
默认是允许Root用户直接远程登录
![](/icons/9326de.gif)
![](/icons/9326dou2.gif)
假若攻击者获取了Root
![](/icons/9326de.gif)
密码
![](/icons/9326dou.gif)
然后进行远程登录
![](/icons/9326dou.gif)
那整个服务器就沦陷了
![](/icons/9326dou2.gif)
因此
![](/icons/9326dou.gif)
我们要做好Root
![](/icons/9326de.gif)
权限限制
![](/icons/9326dou.gif)
拒绝其远程登录
![](/icons/9326dou2.gif)
这样
![](/icons/9326dou.gif)
就算攻击者获取了Root密码
![](/icons/9326dou.gif)
也不能通过远程登录控制服务器
![](/icons/9326dou2.gif)
限制Root远程登录
![](/icons/9326de.gif)
思路方法有很多种
![](/icons/9326dou.gif)
笔者向大家推荐两种
(1)SSH限制
我们知道SSH是Linux系统中用于远程维护管理
![](/icons/9326de.gif)
![](/icons/9326yi.gif)
个服务
![](/icons/9326dou.gif)
类似于Windows系统中
![](/icons/9326de.gif)
Telnet或者远程桌面3389
![](/icons/9326dou2.gif)
通过SSH限制Root远程登录
![](/icons/9326dou.gif)
我们需要做
![](/icons/9326de.gif)
就是修改SSH
![](/icons/9326de.gif)
配置文件
![](/icons/9326dou2.gif)
找/etc/ssh/sshd_config文件
![](/icons/9326dou.gif)
在其中添加PermitRootLogin no
![](/icons/9326dou2.gif)
需要注意
![](/icons/9326de.gif)
是Linux系统是大小写敏感
![](/icons/9326de.gif)
![](/icons/9326dou.gif)
不要输错
![](/icons/9326dou2.gif)
输入完毕后
![](/icons/9326dou.gif)
保存并退出
![](/icons/9326dou.gif)
然后输入命令service sshd restart重启SSH服务使修改生效
![](/icons/9326dou2.gif)
这样当通过Root远程连接Linux服务器时
![](/icons/9326dou.gif)
就会拒绝连接
(2)PAM认证
我们还可以使用PAM认证模块来拒绝Root用户直接登录系统
![](/icons/9326dou.gif)
可通过下面
![](/icons/9326de.gif)
操作来实现
![](/icons/9326dou2.gif)
打开/etc/pam.d/sshd文件
![](/icons/9326dou.gif)
在第
![](/icons/9326yi.gif)
行加入auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/sshduser _disibledevent=>
然后我们创建
![](/icons/9326yi.gif)
个认证文件
![](/icons/9326dou.gif)
可以在终端中运行命令echo "root" > /etc/sshduser来创建
![](/icons/9326dou.gif)
当然我们也可以使用vi打开sshduser文件来加入用户
![](/icons/9326dou2.gif)
需要介绍说明
![](/icons/9326de.gif)
是
![](/icons/9326dou.gif)
当有多个用户时
![](/icons/9326dou.gif)
每个用户占用
![](/icons/9326yi.gif)
行
![](/icons/9326dou2.gif)
添加完成后
![](/icons/9326dou.gif)
再使用Root直接登录服务器就可以看到登录被拒绝了
2、su限制
我们知道在Linux系统中有个su命令
![](/icons/9326dou.gif)
利用该命令只要知道Root用户
![](/icons/9326de.gif)
密码
![](/icons/9326dou.gif)
默认情况下任何人都可以切换到Root用户中进行操作
![](/icons/9326dou2.gif)
例如
![](/icons/9326dou.gif)
![](/icons/9326yi.gif)
个属于users组
![](/icons/9326de.gif)
普通用户gslw可以通过su命令切换到Root用户中.
因此
![](/icons/9326dou.gif)
我们需要对SU进行限制
![](/icons/9326dou.gif)
只允许特定组
![](/icons/9326de.gif)
用户才能SU到Root用户
![](/icons/9326dou2.gif)
使用
![](/icons/9326de.gif)
思路方法还是通过PAM认证模块来实现
![](/icons/9326dou2.gif)
我们先前控制ssh服务
![](/icons/9326dou.gif)
是使用/etc/pam.d/sshd文件
![](/icons/9326dou.gif)
当然控制用户使用su命令就需要对
/etc/pam.d/su文件进行修改
![](/icons/9326dou2.gif)
直接打开该文件进行修改
![](/icons/9326dou.gif)
或者在终端命令窗口输入命令vi /etc/pam.d/su
![](/icons/9326dou.gif)
然后去掉其中#auth required pam_wheel.so use_uid
![](/icons/9326de.gif)
注释即可
![](/icons/9326dou2.gif)
其含义是
![](/icons/9326dou.gif)
使用pam_wheel.so文件来检查当前用户
![](/icons/9326de.gif)
UID
![](/icons/9326dou.gif)
如果不是whell组
![](/icons/9326de.gif)
用户就直接拒绝
![](/icons/9326dou2.gif)
现在我们通过gslw用户登录系统
![](/icons/9326dou.gif)
然后su到Root可以看到被拒绝
![](/icons/9326dou2.gif)
当然
![](/icons/9326dou.gif)
要使其可以su到Root需要将其加入了wheel组才可以
3、Root分权
大家知道
![](/icons/9326dou.gif)
由于Root具有最高
![](/icons/9326de.gif)
权限
![](/icons/9326dou.gif)
经常用root用户来管理系统
![](/icons/9326dou.gif)
会给系统带来
![](/icons/9326yi.gif)
定
![](/icons/9326de.gif)
安全隐患
![](/icons/9326dou2.gif)
比如
![](/icons/9326dou.gif)
![](/icons/9326yi.gif)
条无意识输入
![](/icons/9326de.gif)
破坏性
![](/icons/9326de.gif)
命令有可能会给系统带来毁灭性
![](/icons/9326de.gif)
打击
![](/icons/9326dou2.gif)
另外
![](/icons/9326dou.gif)
如果系统被植入了嗅探工具
![](/icons/9326dou.gif)
如果用root登录会造成root口令被窃取
![](/icons/9326dou2.gif)
因此我们要消减Root
![](/icons/9326de.gif)
权限
![](/icons/9326dou.gif)
可以让其它用户来完成Root
![](/icons/9326de.gif)
![](/icons/9326yi.gif)
些工作
![](/icons/9326dou.gif)
避免过多地使用Root用户
![](/icons/9326dou2.gif)
如何为Root分权
![](/icons/9326dou.gif)
要根据服务器
![](/icons/9326de.gif)
性质来确定
![](/icons/9326dou2.gif)
比如
![](/icons/9326yi.gif)
个Linux平台
![](/icons/9326de.gif)
apache服务器
![](/icons/9326dou.gif)
作为管理员经常使用
![](/icons/9326de.gif)
命令应该是诸如/usr/local/apache2/bin/apachect1 start/stop/restart这样
![](/icons/9326de.gif)
是启动/重启/停止服务器
![](/icons/9326de.gif)
命令
![](/icons/9326dou2.gif)
我们可以为此创建
![](/icons/9326yi.gif)
个用户gslw来管理apache服务器
![](/icons/9326dou.gif)
我们知道普通用户是没有权限来启动apache服务器
![](/icons/9326de.gif)
![](/icons/9326dou2.gif)
这里要用到sudo命令
![](/icons/9326dou.gif)
通过它为gslw用户加入扩展权限使其可以管理apache服务器
![](/icons/9326dou2.gif)
利用Vi或者直接进入/etc/pam.d打开sudo文件
![](/icons/9326dou.gif)
然后在其中添加
![](/icons/9326yi.gif)
行gslw ALL=(ALL) /usr/local/apache2/bin/apachectl命令就可以了
![](/icons/9326dou2.gif)
该命令分成 4个字段
![](/icons/9326dou.gif)
依次为用户名、作用对象、以谁
![](/icons/9326de.gif)
身份运行以及运行
![](/icons/9326de.gif)
命令
![](/icons/9326dou2.gif)
当然
![](/icons/9326dou.gif)
我们也可以加入gslw localhost=(root) /usr/local/apache2/bin/apachectl start
![](/icons/9326dou.gif)
这样过滤更严格
![](/icons/9326yi.gif)
些
![](/icons/9326dou2.gif)
最后保存退出后
![](/icons/9326dou.gif)
使用gslw用户登录系统就可以运行/usr/local/apache2/bin/apachectl start命令了
![](/icons/9326dou2.gif)
上面只是举例
![](/icons/9326dou.gif)
大家可以根据自己
![](/icons/9326de.gif)
需要在sudo文件中添加相应
![](/icons/9326de.gif)
命令行
![](/icons/9326dou2.gif)
不过
![](/icons/9326dou.gif)
需要介绍说明
![](/icons/9326de.gif)
是命令
![](/icons/9326yi.gif)
定要严格过滤
![](/icons/9326dou.gif)
不要赋权过大
整理总结:Linux下
![](/icons/9326de.gif)
权限控制是非常严格
![](/icons/9326de.gif)
![](/icons/9326dou.gif)
但也非常灵活
![](/icons/9326dou.gif)
我们可以根据自己
![](/icons/9326de.gif)
安全需求进行布防
![](/icons/9326dou2.gif)
当然
![](/icons/9326dou.gif)
有关Root权限
![](/icons/9326de.gif)
控制策略和思路方法还有很多
![](/icons/9326dou.gif)
希望本文提供
![](/icons/9326de.gif)
思路对大家有所帮助
延伸阅读
最新评论