我的服务器iptables配置。记录用。
# Generated by iptables-save v1.4.21 on Fri Apr 21 12:24:07 2017
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [18:1210]
:POSTROUTING ACCEPT [0:0]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A POSTROUTING -s 172.17.0.2/32 -d 172.17.0.2/32 -p tcp -m tcp --dport 1194 -j MASQUERADE
-A DOCKER -i docker0 -j RETURN
-A DOCKER ! -i docker0 -p tcp -m tcp --dport 1194 -j DNAT --to-destination 172.17.0.2:1194
COMMIT
# Completed on Fri Apr 21 12:24:07 2017
# Generated by iptables-save v1.4.21 on Fri Apr 21 12:24:07 2017
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [18:1210]
:DOCKER - [0:0]
:DOCKER-ISOLATION - [0:0]
# 允许外部输入(TCP协议28端口)
-A INPUT -i eth0 -p tcp --dport 28 -m state --state NEW,ESTABLISHED -j ACCEPT
# 允许外部输入(TCP协议80端口)
-A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
# 禁止外部输入(TCP协议1194端口)
-A INPUT -i eth0 -p tcp --dport 1194 -m state --state NEW,ESTABLISHED -j DROP
# 禁止外部输入(TCP协议3306端口)
-A INPUT -i eth0 -p tcp --dport 3306 -m state --state NEW,ESTABLISHED -j DROP
# 允许外部输入(TCP连接80端口)
-A INPUT -i eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
# 允许外部输入(TCP连接443端口)
-A INPUT -i eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
# 允许外部输入(UDP协议的53端口)
-A INPUT -i eth0 -p udp --sport 53 -m udp -j ACCEPT
# 允许外部输入(PING应答包)
-A INPUT -i eth0 -p icmp --icmp-type echo-reply -j ACCEPT
# 允许外部输入(PING请求包)
-A INPUT -i eth0 -p icmp --icmp-type echo-request -j ACCEPT
# 允许内环输入
-A INPUT -i lo -j ACCEPT
# 允许docker输入
-A INPUT -i docker0 -j ACCEPT
-A FORWARD -j DOCKER-ISOLATION
-A FORWARD -o docker0 -j DOCKER
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
# 允许输出(TCP协议的28端口)
-A OUTPUT -o eth0 -p tcp --sport 28 -m state --state ESTABLISHED -j ACCEPT
# 允许输出(TCP协议的80端口)
-A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
# 禁止输出(TCP协议的1194端口)
-A OUTPUT -o eth0 -p tcp --sport 1194 -m state --state ESTABLISHED -j DROP
# 禁止输出(TCP协议的3306端口)
-A OUTPUT -o eth0 -p tcp --sport 3306 -m state --state ESTABLISHED -j DROP
# 允许输出(TCP协议的80端口)
-A OUTPUT -o eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
# 允许输出(TCP协议的443端口)
-A OUTPUT -o eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
# 允许输出(UDP协议的53端口)
-A OUTPUT -o eth0 -p udp --dport 53 -m udp -j ACCEPT
# 允许输出(PING请求包)
-A OUTPUT -o eth0 -p icmp --icmp-type echo-request -j ACCEPT
# 允许输出(PING应答包)
-A OUTPUT -o eth0 -p icmp --icmp-type echo-reply -j ACCEPT
# 允许内环输出
-A OUTPUT -o lo -j ACCEPT
# 允许docker输出
-A OUTPUT -o docker0 -j ACCEPT
-A DOCKER -d 172.17.0.2/32 ! -i docker0 -o docker0 -p tcp -m tcp --dport 1194 -j ACCEPT
-A DOCKER-ISOLATION -j RETURN
COMMIT
# Completed on Fri Apr 21 12:24:07 2017