second60 20181030
路径: /etc/sysconfig/iptables
内容:
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*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 RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -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
添加8080端口允许
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
操作分类:
-A 添加一条规则
-D 删除一条规则
-R 替换一条规则
-I 插入一条规则
防火墙链
INPUT : 输入链
OUTPUT: 输出链
FORWARD: 重定向链
-p protocal (all/tcp/udp/icmp)
-s 指定源地址 (-s 0.0.0.0/0)
-d 指定目的地址(-d 192.168.1.1)
-i 指定入口网卡( -i eth0)
-o 指定出口网卡(-o eth0)
--sport 源端口 (--sport 22)
--dport 目的端口(--dport 22:80)
-j 指定要进行的动作(ACCEPT 将封包放行, DROP 丢弃包不处理, REJECT 拒绝)
在添加好防火墙后,需要用命令让防火墙生效
service iptables stop
systemctl stop iptables
service iptables start
systemctl start iptables
service iptables restart
systemctl restart iptables
chkconfig iptables on
systemctl enable iptables
chkconfig iptables off
systemctl disable iptables
iptables --help
iptables -P INPUT DROP
iptables -P FORWARD DROP
当超出iptables里filter表里的两个链规则(INPUT, FORWARD)时, DROP 丢弃
iptables -P OUTPUT ACCEPT
对OUTPUT链,流出的包,不做限制
INPUT链的默认规则是DROP,所以把可以通过的规则写成ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT (如果OUTPUT设成了DROP,要加这条)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport port_num -j ACCEPT
iptables -A INPUT -p tcp --dport port_num -j DROP
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -i lo -p all -j ACCEPT
iptables -A OUTPUT -o lo -p all -j ACCEPT
iptables -A OUTPUT -p tcp --sport 31337 -j DROP
iptables -A OUTPUT -p tcp --dport 31337 -j DROP
iptables -A INPUT -s 192.168.0.2 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 22 -j ACCEPT
用命令和直接修改配置是一样的,最后修改好后,别忘了重启防火墙生效。