Shorewall 中的 DNAT 不适用于 VPN

Shorewall 中的 DNAT 不适用于 VPN

我有一个防火墙 (10.8.0.1) 通过 VPN 连接到内部服务器 (10.8.0.2)。防火墙上的 VPN 接口称为tun0。因此,在我的 shorewall 配置中,我有以下内容:

$ cat interfaces
#ZONE   INTERFACE   OPTIONS
-       lo          ignore
vpn     tun+        optional
net     eth+        dhcp,physical=+,routeback,optional

$ cat zones
#ZONE   TYPE        OPTIONS     IN          OUT
#                               OPTIONS     OPTIONS
fw      firewall
vpn     ipv4
net     ip

$ cat policy
#SOURCE DEST    POLICY      LOG LIMIT:      CONNLIMIT:
#               LEVEL       BURST           MASK
$FW     net     ACCEPT
$FW     vpn     ACCEPT
vpn     all     ACCEPT
net     all     DROP        info

现在我想将来自公网的所有到防火墙 TCP 端口 2222 的流量转发到内部服务器端口 22。因此我添加了以下两行:

$ cat rules
ACCEPT          net         $FW                 tcp     2222
DNAT            net         vpn:10.8.0.2:22     tcp     2222

在我的shorewall.conf文件中有以下行:

IP_FORWARDING=On

但是,这似乎不起作用。
我在这里遗漏了什么?

答案1

#
# Shorewall version 4 - Masq file
#

#INTERFACE:DEST         SOURCE              ADDRESS         PROTO   PORT(S) IPSEC   MARK    USER/   SWITCH
#                                           GROUP
tun+:10.8.0.0/16        0.0.0.0/0           10.8.0.1

相关内容