安装 iptables 

yum install iptables -y

 默认配置

vi /etc/sysconfig/iptables


# 星号开头的指的是表
# 这里为 filter 表
*filter

# 冒号开头的指的是链,三条内建的链
# 该规则表示 INPUT 链 默认策略是 ACCEPT
:INPUT ACCEPT [0:0]

# 该规则表示 FORWARD 链 默认策略是 ACCEPT
:FORWARD ACCEPT [0:0]

# 该规则表示 OUTPUT 链 默认策略是 ACCEPT
:OUTPUT ACCEPT [0:0]

# 意思是允许进入的数据包只能是刚刚我发出去的数据包的回应
# ESTABLISHED 已建立的链接状态,RELATED 该数据包与本机发出的数据包有关
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# 允许 icmp 包通过,也就是允许 ping
-A INPUT -p icmp -j ACCEPT

# 这条很重要,针对本机内部接口开放!
-A INPUT -i lo -j ACCEPT


# 开入 22 端口
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT


# 这两条的意思是在 INPUT 表和 FORWARD 表中拒绝所有其他不符合上述任何一条规则的数据包
# 并且发送一条 host prohibited 的消息给被拒绝的主机
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

# 提交
COMMIT

 iptables 规则

iptables [-t tables] [-L] [-nv]


# 参数说明

-t :后面接 table ,例如 nat 或 filter ,若省略此项目,则使用默认的 filter
-L :列出目前的 table 的规则
-n :不进行 IP 与 HOSTNAME 的反查,显示讯息的速度会快很多
-v :列出更多的信息,包括通过该规则的封包总位数、相关的网络接口等
# 查看所有防火墙状态
service iptables status

# 查看 filter 表的规则
# filter 表包含 INPUT、OUTPUT、FORWARD 三个规则链
iptables -n -L

# 查看 nat 表的规则
iptalbes -nL -t nat

# 显示行号
iptables -nL --line

# 删除一个规则 数字 1 表示规则的行号
iptables -D INPUT 1

# 删除 nat 表, POSTROUTING 链
iptables -t nat -D POSTROUTING 1

配置 iptables 

# 添加443端口 
iptables -I INPUT -p tcp --dport 443 -j ACCEPT

# 屏蔽IP
# 封整个段即从 35.0.0.1 到 35.255.255.254 的命令
iptables -I INPUT -s 35.0.0.0/8 -j DROP

# 封整个段即从 35.61.0.1 到 35.61.255.254 的命令
iptables -I INPUT -s 35.61.0.0/16 -j DROP

# 封整个段即从 35.61.78.1 到 35.61.78.254 的命令
iptables -I INPUT -s 35.61.78.0/24 -j DROP

# 拒绝 35.61.78.109 访问
iptables -I INPUT -s 35.61.78.109/32 -j DROP

# 解封IP
# 删除屏蔽的指定IP
iptables -D INPUT -s 192.168.1.26 -j DROP