这个教程比较有意思,让服务器除了网站和ssh能链接就不能做任何事情了, 就连在服务器yum安装软件,ping 百度都无法实现. 这样就保证了服务器的安全.
1 2 3 4 5 6 7 8 9 10 11 12
| iptables -F /* 清除所有规则 */ iptables -A INPUT -p tcp --dport 22 -j ACCEPT /*允许包从22端口进入*/ iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT /*允许从22端口进入的包返回*/ iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT /*允许本机访问本机*/ iptables -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT iptables -A INPUT -p tcp -s 0/0 --dport 80 -j ACCEPT /*允许所有IP访问80端口*/ iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP iptables-save > /etc/sysconfig/iptables /*保存配置*/ iptables -L /* 显示iptables列表 */
|
如果需要在服务器安装软件,或者下载文件则需要运行:
1 2
| iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT
|
这样就可以让服务器访问外网了,不过使用网络结束,需要重新拒绝访问. 如果需要集群间的计算机互相访问则可以再拒绝所有之前添加如下规则.
1 2
| iptables -A FORWARD -s 10.0.0.0/24 -j ACCEPT /*允许局域网发送数据包*/ iptables -A FORWARD -d 10.0.0.0/24 -j ACCEPT /*允许局域网接收数据包*/
|
允许某台计算机访问服务器的某个端口.
1
| iptables -A INPUT -p tcp -s 192.168.0.10 --dport 80 -j ACCEPT /*允许192.168.0.10访问80端口*/
|