雄关漫道真如铁,而今迈步从头越。
全部博文(348)
分类: LINUX
2012-10-27 22:11:29
由于公司对外商用服务在一期建设的时候安全设备未能采购到位,但综合考虑到业务的安全性避免系统在上线后遭受到恶意攻击,所以笔者采用了linux自带的防火墙iptables来实现系统安全防护工作。
在制定防火墙策略之前,笔者建议安全工程师要详细调研各主机系统上运行的服务以及需要开放的端口等工作。其次制定相应的防火墙策略,再次将该策略实施到测试服务器上进行测试,如果没有问题。最后我们就可以在生产系统进行实施了。不过笔者建议实施人员应当避开业务高峰期,以及实施后的测试及做好相应的应急预案工作。
废话不多说了,分享一下防火墙的策略配置,不当的地方还请博友们不吝指正。
一、Web服务器防火墙策略:
iptables -I OUTPUT -j ACCEPT
#允许所有出去的数据
iptables -I FORWARD -j DROP
#丢弃所有forward的数据
iptables -I INPUT -s 10.0.211.0/24 -j ACCEPT
#允许服务器网段的业务之间互访
iptables -I INPUT-s 10.0.211.0/26 -p tcp --dport 22 -j ACCEPT
#允许指定网段使用ssh远程登录服务器
iptables -I INPUT -i lo -j ACCEPT
##允许代理通过回环访问本地程序
#否则你的web服务会出现异常
iptables -I INPUT -p icmp -j ACCEPT
##允许被ping
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#允许使用扩展的连接服务
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
#允许web服务
iptables -A INPUT -j DROP
##对于其他不符合的规则一律丢弃
二、ftp服务器防火墙策略
iptables -I OUTPUT -j ACCEPT
#允许所有出去的数据
iptables -I FORWARD -j DROP
#丢弃所有forward的数据
iptables -I INPUT -s 10.0.211.0/24 -j ACCEPT
#允许服务器网段的业务之间互访
iptables -I INPUT-s 10.0.211.0/26 -p tcp --dport 22 -j ACCEPT
#允许指定网段使用ssh远程登录服务器
iptables -I INPUT -p icmp -j ACCEPT
##允许被ping
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#允许使用扩展的连接服务
iptables -A INPUT -j DROP
#其他需要访问本服务器的请求均丢弃
iptables -I INPUT -s 10.0.0.0/16 -p tcp --dport 21 -j ACCEPT
#接收ftp命令行传输口
iptables -I INPUT -s 10.0.0.0/16 -p tcp --dport 20 -j ACCEPT
#接收ftp的数据传输口(你的ftp处于pasv模式)
modprobe ip_conntrack_ftp
或
modprobe ip_nat_ftp
#允许ftp服务
如果你的服务器开启了ftp服务那么你需要加载相应的内核在kernel2.6.19前modprobe ip_nat_ftp,这个模块叫ip_conntrack.ko。在kernel2.6.19版本之后modprobe ip_conntrack_ftp。如果你不知道自己内核你也可以直接使用modprobe 加载到内核modprobe ip_conntrack_ftp或modprobe ip_nat_ftp。