OpenVPN 主机无法访问客户端 LAN

OpenVPN 主机无法访问客户端 LAN

我有一台 OpenVPN 服务器,称为 vpn-server,后面有一个 LAN 192.168.3.0/24。客户端 vpn-client 后面也有一个 LAN,即 10.4.0.0/24。192.168.3.0/24 上的计算机可以访问 10.4.0.0/24(只有一个例外)。10.4.0.0/24 上的计算机可以访问 192.168.3.0/24。(服务器和客户端都基于 Linux。)

唯一的例外是 VPN 主机本身无法访问 10.4.0.0/24。irc 上的 #openvpn 中有人提到,当 openvpn 服务器连接到客户端网络时,它使用 VPN IP,而不是本地 IP,我应该检查我的 iptables 伪装规则。我的伪装规则和相关接口的接口配置位于http://pastebin.com/Q9RDy0es

OpenVPN 的服务器和客户端配置文件可以在以下位置找到:http://pastebin.com/gtfm82pE

我觉得这是主机端的防火墙问题,但我似乎无法解决。我需要新的/不同的伪装规则吗?我很确定 VPN 配置是正确的。

VPN 服务器路由表

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.54.1.9       *               255.255.255.255 UH    0      0        0 tun1
10.8.1.2        *               255.255.255.255 UH    0      0        0 tun0
<pubIP redacted> *               255.255.255.248 U     0      0        0 eth1
10.18.1.0       10.8.1.2        255.255.255.0   UG    0      0        0 tun0
172.16.20.0     10.54.1.9       255.255.255.0   UG    0      0        0 tun1
192.168.3.0     *               255.255.255.0   U     0      0        0 eth0
10.8.1.0        10.8.1.2        255.255.255.0   UG    0      0        0 tun0
10.54.1.0       10.54.1.9       255.255.255.0   UG    0      0        0 tun1
172.16.30.0     10.54.1.9       255.255.255.0   UG    0      0        0 tun1
10.3.0.0        10.54.1.9       255.255.255.0   UG    0      0        0 tun1
172.16.10.0     *               255.255.255.0   U     0      0        0 vlan4000
10.3.1.0        10.54.1.9       255.255.255.0   UG    0      0        0 tun1
10.4.0.0        10.8.1.2        255.255.0.0     UG    0      0        0 tun0
link-local      *               255.255.0.0     U     0      0        0 eth0
loopback        *               255.0.0.0       U     0      0        0 lo
default         <pubIP redacted> 0.0.0.0         UG    0      0        0 eth1

iptables -L 的 vpn-server 输出

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
FW-1-INPUT  all  --  anywhere             anywhere            

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  192.168.3.0/24       anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     icmp --  anywhere             anywhere            icmp any 
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-    prohibited 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination            

Chain FW-1-INPUT (1 references)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     icmp --  anywhere             anywhere            icmp any 
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:7788 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:ha-cluster 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:domain 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:domain 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:domain 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:bootps 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:bootpc 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:openvpn 
ACCEPT     tcp  --  sysmon.example.com  anywhere            tcp dpt:nrpe 
ACCEPT     tcp  --  sysmon1.example.com  anywhere            tcp dpt:nrpe 
ACCEPT     udp  --  sysmon1.example.com  anywhere            udp dpt:ntp 
ACCEPT     udp  --  sysmon.examplecom  anywhere            udp dpt:ntp 
ACCEPT     tcp  --  anywhere             anywhere            tcp multiport dports     iax,sip 
ACCEPT     udp  --  anywhere             anywhere            udp multiport dports iax,sip 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-   prohibited

答案1

请记住,当您的 OpenVPN 网关获取流量时,当客户端路由器及其主机看到它时,它很可能来自 openvpn 接口本身。因此,您需要确保您已以某种方式在 openVPN 服务器上对该 IP 进行 NAT,或者看到请求的主机/客户端有一条返回该 IP 的路径(这可能与您的 LAN 不是同一个网络)。

如果您对两侧的 openvpn 接口以及远程端的内部接口进行 tcpdump,您可能会发现问题出在与此不同接口 IP 相关的防火墙规则或与此相关的路由。

相关内容