Linux系统安全加固的六个小方法[转]
Linux系统安全加固的六个小方法
1、ssh登录限制:
a、限制root用户登录:
# vim /etc/ssh/sshd_config ##编辑sshd配置文件,找到如下一行,将前面注释取消,变改yes为no
#PermitRootLogin yes
PermitRootLogin no
b、限制其他用户登录:
同样打开上述配置文件,在最后加入允许登录的用户即可,其他未允许的将不能登录
AllowUsers 用户a 用户b 用户c
也可以用AllowGroups指定允许的组,不过这个组指的是“主组”,即/etc/passwd文件中指定的组。如:
AllowGroups oinstall
完成上述两条修改后,重启sshd服务后,将只用a、b、c和主组为oinstall的用户才能使用ssh远程登录。
2、限制一般用户使用su或sudo:
a、将特定管理用户加入wheel组(只有wheel组里的用户才能用su):
# usermod -G wheel 用户名
b、# vim /etc/pam.d/su ← 打开这个配置文件找到这句话在第六行将其前面的#注释掉
# auth required pam_wheel.so use_uid
auth required pam_wheel.so use_uid
c、# echo "SU_WHEEL_ONLY yes" >> /etc/login.defs
完成后没有加入wheel组的用户将无法使用su,即使输入正确的密码,也会提示密码错误。
d、在root用户下输入visudo编辑sudo文件,找到如下一行,取消注释:
#%wheel ALL=(ALL) ALL
%wheel ALL=(ALL) ALL
保存并退出后,wheel组下的用户就能使用sudo命令了。
3、配置sudo,给相应用户相应权限
在root用户下执行visudo命令即可编辑,根据情况赋予用户相应权限,以最小化权限为要求。visudo我有文章专门介绍,这里就不再复述。
4、关闭不需要的服务(最小化服务)
a、关闭IPv6支持
在/etc/modprobe.d/dist.conf结尾添加
alias net-pf-10 off
alias ipv6 off
b、 根据需要关闭不需要的服务
cups 打印支持服务,服务器不需要,关闭
atd 指定时间执行命令,一般用crond,可以关闭
auditd 不用selinux,可以关闭
autofs 文件系统自动加载和卸载,不需要可以关闭
avahi-daemon 本地网络服务查找 对服务器无用,可以关闭
bluetooth 蓝牙无线通讯 对服务器无用,关闭
cups 打印服务
ip6tables 如果关闭了IPv6支持,关闭
netfs 如果不用NFS文件系统,可以关闭
nfslock 同上
rpcgssd 同上
rpcidmapd 同上
saslauthd SASL认证服务,关闭
其他相关服务视具体情况关闭,可以通过命令netstat -tnlp看那些服务开放了端口,不需要的都关闭。
5、配置防火墙(iptables)
# vim /etc/sysconfig/iptables
添加防火墙策略是以最小化为标准,比如ssh链接只需要内网(如192.168.1.0/24),则可以定义如下:
-A INPUT -m state --state NEW -m tcp -p tcp -s 192.168.1.0/24 --dport 22 -j ACCEPT
6、更新操作系统
# yum update
嗨、骚年、快来消灭0回复。