iptables关于web,dns,icmp设置

一. 查看终端的iptables服务状态
1.查看iptables服务状态

# service iptables status

由于iptables是通过模块的方式载入内核的,如果相应的模块没有启动,那么iptables服务肯定没有启动(具体查看/etc/init.d/iptables文件)

# lsmod | grep 'tables'

2.设置linux系统启动时,iptables服务自动启动

# chkconfig iptables on

chkconfig –level 3 iptables on

二.设置终端的iptables服务(DNS、lo 、ssh、icmp、httpd)
1.查看filter表的设置情况

# iptables -t filter -L

2.清空filter表上的所有规则

# iptables -t filter -F
# iptables -t filter -Z  //让filter表的数据包计数器和流量计数器归零

3.设置ssh规则,允许其它主机连接本终端的SSH服务(本终端为:SSH服务器),此处默认规则:INPUT链,OUTPUT链,FORWARD链默认拒绝

# iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
# iptables -t filter -A OUTPUT -p tcp --sport 22 -j ACCEPT

允许本终端连接远程主机的SSH服务(本终端为:SSH客户端)

# iptables -t filter -A INPUT -p tcp --sport 22 -j ACCEPT
# iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT

设置终端本地回环通行(因为本地回环地址:127.0.0.1,它提供了很多的服务,可通过netstat -autnlp查看)

# iptables -t filter -A INPUT -i lo -j ACCEPT
# iptables -t filter -A OUTPUT -o lo -j ACCEPT

允许本终端发送和接收ICMP数据包(ping指令)

# iptables -t filter -A INPUT -p icmp -j ACCEPT
# iptables -t filter -A OUTPUT -p icmp -j ACCEPT

允许本终端发送和接收DNS数据包(本终端为:DNS客户端)

# iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
# iptables -t filter -A INPUT -p udp --sport 53 -j ACCEPT

允许本终端发送和接收httpd数据包(本终端为:web客户端)

# iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
# iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT

改变默认的策略规则(注意:一定要先设置上面的那些服务(特别是:SSH服务),再修改默认规则)

# iptables -t filter -P INPUT DROP
# iptables -t filter -P OUTPUT DROP
# iptables -t filter -P FORWARD DROP

三. 查看防火墙规则
# 设置相关的规则后,查看一下filter表的设置盛况

# iptables -t filter -L -n --line-numbers //或iptables -t filter -L -n --line

加上v参数可以看到网卡信息

# iptables -L -v -n --line

四. 保存防火墙规则,保存有2种方法:service iptables save及iptables-save > /etc/sysconfig/iptables
第一种:

# service iptables save(注意:它把当前的设置保存到/etc/sysconfig/iptables配置文件里)

第二种:

# iptables-save > /etc/sysconfig/iptables //呵呵!其实可以直接修改/etc/sysconfig/iptables文件来达到修改规则。
# iptables-restore < iptables-config //iptables-save可以保存当前的设置到一个文件中,以方便再次使用,例如: iptables-save > iptables-config.如果设置丢失时,可以使用iptables-restore还原配置(前提:以前必须有备份配置)

附录:
在做防火墙规则时,首先在本地的实验的机子做好测试,然后使用iptables-save把策略保存成一个文件,最后再拷贝并运用到真实的服务器上

发表评论

邮箱地址不会被公开。 必填项已用*标注