关于防火墙iptableables命令的学习体会

来源:互联网 发布:京东手机抢购软件 编辑:程序博客网 时间:2024/06/04 17:39

今天一早来到实验室,大腿同学说计算机不能上网,查看了下代理服务器,发现关机了,怀疑是被黑了或是恶作剧了。幸运的是这名黑客还算有“热心”,只是警告我们一下我们的安全系数低,他可以随意的入侵我们。当我们再启动代理服务器时,发现各自的主机还是无法ping通外网,而代理服务器却可以连接到外网,然后查看网卡、ip等都没有发现异常,最后通过查看相关资料,发现问题出在linux防火墙上。

代理服务器主机使用的系统是linux ubuntu-12.04版本。首先使用iptables -L -n 查看本机的防火墙规则,发现使用代理服务器ip地址的端口号不在规则限制之内,则解决的办法即是让防火墙允许该端口的数据包通过。以下为相应的设置:

$iptables -A INPUT -i eth0 -p tcp -s 192.168.1.0/24 --dport 3218 -j ACCEPT

$iptables -A INPUT -o eth0 -p tcp -s 192.168.1.0/24 --dport 3218 -j ACCEPT

注:两条语句的差别就是“-i”与“-o”,一个是允许数据包进入网络接口,另一个是允许数据包传出网络接口;“--dport”是destination port 的缩写,即目标端口;

待设置好后,需要保存防火墙规则,因为iptables只是个临时命令,类似于ifconfig设置网卡,只是临时生效,待主机重启后就会失效。现将设置好的防火墙规则保存到/etc/iptables.up.rules文件中:

$iptables-save > /etc/iptables.up.rules  

然后修改脚本/etc/network/interfaces,使系统能自动应用这些规则,在最后一行添加:

pre-up iptables-restore < /etc/iptables.up.rules

最后重启服务器,问题得到解决,实验室中各台机器能够上网。


0 0
原创粉丝点击