iptables -nv -L
我们尝试在另一台机器上nmap扫描这台服务器:
nmap -sT 192.168.1.101
此命令显示结果如下:
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2011-05-25 00:46 CST
Interesting ports on 192.168.1.101:
Not shown: 1678 filtered ports
PORT STATE SERVICE
25/tcp open ssh
80/tcp open http
MAC Address: 00:E0:62:12:7B:65 (Host Engineering)
Nmap finished: 1 IP address (1 host up) scanned in 37.721 seconds
看到这个结果说明iptables生效了。
另外,对刚刚学习iptables的朋友提供一个建议。一开始玩iptables很容易犯的一个错误就是把自己锁在服务器外面了。针对这种情况,
我们可以编写一个crontab计划任务,每5分钟关闭一次防火墙,等完全调试完后再关闭此crontab任务:
vim /etc/crontab
*/5 * * * * /etc/init.d/iptables stop
以上只是初级的防护脚本。至于其它的SYN和Ping及其它攻击,等大家熟悉了解其原理后,可以在此脚本的基础上添加。
以下是上文中两个问题的解答:
一、为什么要打开系统回环接口?
Linux系统默认会有一块名为lo的环回网络接口,而真正的网卡一般则被Linux系统识别成名为eth0, eth1这样的网络接口。
一般,lo接口对应的ip地址为127.0.0.1。
当你从一台linux主机向自身发送数据包时,实际上的数据包是通过虚拟的lo接口来发送接受的,而不会通过你的物理网卡eth0/eth1。
如果lo接口被墙,会发生ping/telnet/ssh本机(本机域名、localhost和127.0.0.1)不通的情况,会给调试带来一些麻烦。