wireguard下启用防火墙策略

wireguard下启用防火墙策略

# 防止未加密走wg
PostUp =  iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT

# 开启 MASQUERADE nat(特殊snat)   ok
PostUp   = iptables -A FORWARD -i %i -j ACCEPT;  iptables -A FORWARD -o %i -j ACCEPT;  iptables -t nat -A POSTROUTING -o %i -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT;  iptables -D FORWARD -o %i -j ACCEPT;  iptables -t nat -D POSTROUTING -o %i -j MASQUERADE



# 测试 SNAT / snat(wg4上双ip:172.30.1.4; 172.30.1.5)
# SNAT OK
iptables -t nat -A POSTROUTING  -o wg4 -j MASQUERADE
# SNAT OK
iptables -t nat -A POSTROUTING  -o wg4 -j SNAT --to-source 172.30.1.4
# SNAT OK
iptables -t nat -A POSTROUTING  -o wg4 -j SNAT --to-source 172.30.1.4-172.30.1.5
# SNAT OK
iptables -t nat -A POSTROUTING -s 192.168.11.0/24  -o wg4 -j SNAT --to-source 172.30.1.4
iptables -t nat -A POSTROUTING -s 192.168.2.0/24   -o wg4 -j SNAT --to-source 172.30.1.5

# DNAT  从10.1.250.245访问22  ok (aliyun搞的鬼?)
PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A PREROUTING  -d 172.30.1.4 -p tcp --dport 22  -j DNAT --to-destination 192.168.11.77; iptables -t nat -A POSTROUTING  -o wg4 -j SNAT --to-source 172.30.1.4
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D PREROUTING  -d 172.30.1.4 -p tcp --dport 22  -j DNAT --to-destination 192.168.11.77; iptables -t nat -D POSTROUTING  -o wg4 -j SNAT --to-source 172.30.1.4

# DNAT  从10.1.250.245访问22  ok (aliyun搞的鬼?)
PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A PREROUTING  -i wg4 -d 172.30.1.4  -j DNAT --to-destination 192.168.11.77; iptables -t nat -A POSTROUTING  -o wg4 -s 192.168.11.77  -j SNAT --to-source 172.30.1.4; iptables -t nat -A POSTROUTING  -o wg4 -j SNAT --to-source 172.30.1.5
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D PREROUTING  -i wg4 -d 172.30.1.4  -j DNAT --to-destination 192.168.11.77; iptables -t nat -D POSTROUTING  -o wg4 -s 192.168.11.77  -j SNAT --to-source 172.30.1.4; iptables -t nat -D POSTROUTING  -o wg4 -j SNAT --to-source 172.30.1.5



## 默认包括4个规则表:
raw表:确定是否对该数据包进行状态跟踪
mangle 表: 为数据包设置标记
nat 表: 修改数据包中的源、目标ip地址或端口
filter 表:确定是否放行该数据包(过滤)


## 数据包的常用控制类型:
ACCEPT:允许通过
DROP:直接丢弃,不给出任何回应
REJECT:拒绝通过,必要时会给出提示
LOG:记录日志信息,然后传给下一条规则继续匹配


常见的通用匹配条件:
协议匹配:-p 协议名 ,例如:`-p icmp`、`-p udp --dport 53`
地址匹配:-s 源地址、 -d 目的地址,例如:`-s 192.168.2.0/24`
接口匹配: -i 入站网卡、-o 出站网卡


常用的隐含的匹配条件:
端口匹配: --sport 源端口、–dport 目的端口,例如:`--dport 20:21`
ICMP 类型匹配: --ICMP-type icmp 类型


常用的显式匹配条件:
多端口匹配:-m multiport --sports 源端口列表   -m multiport --dports 目的端口列表,例如:`-m multiport --dports 25.80.110.143`
ip范围匹配 : -m iprange --src-range IP范围,例如:`-m iprange --src-range 192.168.4.21-192.168.4.28`
MAC地址匹配: -m mac --mac-source MAC 地址,例如:`-m mac --mac-source 00:29:c0:55:3f`
状态匹配: -m state --state 连接状态,例如:`-m state --state ESTABLISHED,RELATED`、`-m state --state NEW`、`-m tcp --dport 22`




#########################

PostUp   = iptables -t nat -A POSTROUTING -o %i -j SNAT --to-source 172.30.1.2
PostDown = iptables -t nat -D POSTROUTING -o %i -j SNAT --to-source 172.30.1.2


#########################
### 添加
# eth0
## 被动保持
iptables -A FORWARD -i eth0  -m state --state ESTABLISHED,RELATED  -j ACCEPT
## LAN主动
# to all
iptables -A FORWARD -i eth0  -s 192.168.2.7  -j ACCEPT
# to hb
iptables -A FORWARD -i eth0  -s 192.168.2.0/24   -d 192.168.5.0/24  -j ACCEPT
iptables -A FORWARD -i eth0  -s 192.168.11.0/24  -d 192.168.5.0/24  -j ACCEPT
# to gcs
iptables -A FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.203.177 -p tcp -m tcp --dport 22  -j ACCEPT
iptables -A FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.201.121 -p tcp -m tcp --dport 5432  -j ACCEPT
# to gcp
iptables -A FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.3.59 -p tcp -m tcp --dport 22  -j ACCEPT
iptables -A FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.1.182 -p tcp -m tcp --dport 5432  -j ACCEPT
## 拒绝其他
iptables -A FORWARD -i eth0  -j LOG --log-prefix  "IPTABLES-eth0-IN-DROP: "
iptables -A FORWARD -i eth0  -j DROP

# wg1
# DNAT to 81(阿里云封了反向流量)
#iptables -t nat -A PREROUTING -i wg1  -p tcp -m tcp --dport 2222  -j DNAT --to-destination 192.168.11.81:22


#########################
### 删除
# eth0
## 被动保持
iptables -D FORWARD -i eth0  -m state --state ESTABLISHED,RELATED  -j ACCEPT
## LAN主动
# to all
iptables -D FORWARD -i eth0  -s 192.168.2.7  -j ACCEPT
# to hb
iptables -D FORWARD -i eth0  -s 192.168.2.0/24   -d 192.168.5.0/24  -j ACCEPT
iptables -D FORWARD -i eth0  -s 192.168.11.0/24  -d 192.168.5.0/24  -j ACCEPT
# to gcs
iptables -D FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.203.177 -p tcp -m tcp --dport 22  -j ACCEPT
iptables -D FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.201.121 -p tcp -m tcp --dport 5432  -j ACCEPT
# to gcp
iptables -D FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.3.59 -p tcp -m tcp --dport 22  -j ACCEPT
iptables -D FORWARD -i eth0  -s 192.168.2.0/24  -d 10.1.1.182 -p tcp -m tcp --dport 5432  -j ACCEPT
## 拒绝其他
iptables -D FORWARD -i eth0  -j LOG --log-prefix  "IPTABLES-eth0-IN-DROP: "
iptables -D FORWARD -i eth0  -j DROP

# wg1
# DNAT to 81(阿里云封了反向流量)
#iptables -t nat -D PREROUTING -i wg1  -p tcp -m tcp --dport 2222  -j DNAT --to-destination 192.168.11.81:22

最后

img

爱你!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值