有时候我们的防火墙本身也提供一些服务,这个时候iptables就是一个单机防火墙,它可以通过设置策略来保护自己。
首先准备一下实验环境,准备两台虚拟机,一个做防火墙(192.168.100.1),并在它上面安装WWW和FTP服务,一台作客户机(192.168.100.2),来访问WWW和FTP服务。
先测试一下实验环境,在客户机上访问WWW,现在可以访问
#elinks 192.168.100.1
测试一下FTP服务,也是可以访问
#ftp 192.168.100.1
修改防火墙的默认策略
因为防火墙的默认策略是ACCEPT。
#iptables –P INPUT DROP
#iptables –P OUTPUT DROP
#iptables –L –n 查看iptables的策略
测试一下,现在客户机192.168.100.2已经不能访问WWW和FTP了
现在想让客户机来访问FTP服务,应该这样配置一下
首先先检查一下是否加载了ip_conntrack_ftp 这个模块
#lsmod
我这里已经加过了,如果没加的话使用一下命令加载一下
#modprobe ip_conntrack_ftp (这种是临时的,重启就失效了)
也可以修改iptables的配置文件来加载
#vim /etc/sysconfig/iptables-config
在IPTABLES_MODULES=“”中加上ip_conntrack_ftp就可以了,这样是永久有效的。
# service iptables save 保存规则
#service iptables restart 重启
配置关于FTP的iptables的规则
#iptables –A INPUT –s 192.168.100.2 –d 192.168.100.1 –p tcp - -dport 21 –m state - -state NEW,ESTABLISHD –j ACCEPT
#iptables -A INPUT –s 192.168.100.2 –d 192.168.100.1 –m state - - state ESTABLISHD,RELATED –j ACCEPT
#iptables –A OUTPUT –s 192.168.100.1 –d 192.168.100.2 –m state - - state ESTABLISHED,RELATED –j ACCEPT
在客户机上测试一下,发现已经可以访问FTP了。
配置一下关于WWW的iptables的规则
#iptables –A INPUT –d 192.168.100.1 –p tcp - -dport 80 –m state - -state NEW –j ACCEPT
#iptables -A OUTPUT -s 192.168.100.1 -p tcp - -sport 80 -m state - -state ESTABLISHED –j ACCEPT
测试一下,现在客户机也可以访问WWW服务了
其实可以将我们的策略简化一下,可以一次控制多个端口
#iptables -A INPUT -d 192.168.100.1 -p tcp -m state --state NEW -m multiport - -destination-ports 25,80 –j ACCEPT
这样两条规则就变成了一条。
阅读(1193) | 评论(0) | 转发(0) |