OpenVPN允许部分用户跳转到局域网内的其他主机

OpenVPN允许部分用户跳转到局域网内的其他主机

所有用户都可以连接到运行 OpenVPN 的主机,但有些用户可以跳转到局域网中的其他主机。例如,用户可以访问主机10.2.0.1/32(OpenVPN 运行的位置)和主机,10.0.0.0/24酒吧用户只能访问主机10.2.0.1/32

对于两个用户来说,路由表是相同的

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    302    0        0 wlan0
10.1.0.0        10.2.0.5        255.255.255.128 UG    0      0        0 tun0
10.2.0.1        10.2.0.5        255.255.255.255 UGH   0      0        0 tun0
10.2.0.5        0.0.0.0         255.255.255.255 UH    0      0        0 tun0

为了生成客户端的密钥,我运行

cd /usr/share/easy-rsa/2.0
source vars
./build-key --batch foo

/etc/openvpn/server.conf文件有

; server
mode       server
port       1194
proto      udp
dev        tun
keepalive  10 120


; networking
server     10.2.0.0 255.255.255.0
ifconfig   10.2.0.1 255.255.255.0
push       "route 10.1.0.0 255.255.255.128"
ifconfig-pool-persist ipp.txt

该服务器是运行 OpenVPN 2.3.11 和 Easy RSA 2.2.2 的 CentOS 7 (x86_64)。

答案1

我的错:问题出在 IPTables 中的后路由规则上,

-A POSTROUTING -s 10.2.0.0/27 -o eno1 -j MASQUERADE

而且应该是

-A POSTROUTING -s 10.2.0.0/24 -o eno1 -j MASQUERADE

相关内容