![如何像 CTF 网络一样配置 OpenVPN](https://linux22.com/image/784657/%E5%A6%82%E4%BD%95%E5%83%8F%20CTF%20%E7%BD%91%E7%BB%9C%E4%B8%80%E6%A0%B7%E9%85%8D%E7%BD%AE%20OpenVPN.png)
我目前使用此配置在 ubuntu 20 上配置了一个 OpenVPN 服务器;它将向客户端提供私有子网 (172.31.40.0 255.255.240.0) 访问权限,但此 VPN 通过我的 VPN 重定向客户端的互联网流量。我想禁用此功能,同时保留对客户端的私有子网访问权限。
我尝试按照文档删除这些行# push "redirect-gateway def1 bypass-dhcp"
,但客户端无法访问互联网,并且客户端在浏览器上收到无互联网错误。
local 172.31.40.170
port 1500
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-crypt tc.key
topology subnet
client-to-client
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "route 172.31.40.0 255.255.240.0"
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS 1.0.0.1"
push "dhcp-option DNS 1.1.1.1"
push "block-outside-dns"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
verb 3
crl-verify crl.pem
explicit-exit-notify
答案1
您的问题具有误导性,因为据我所知,不存在任何称为 CTF 网络的特殊类型的网络拓扑。
但是根据您提供的配置文件示例,如果删除redirect-gateway def1 bypass-dhcp
,则还需要删除push "block-outside-dns"
。
您的隧道仅包含 10.8.0.0/24 和 172.31.40.0/20 的路由。您正在推送 DNS 服务器 1.0.0.1 和 1.1.1.1,除非您强制所有流量通过隧道,否则它们不属于 VPN,而这正是 VPN 的作用redirect-gateway def1
。因此,您只是删除了redirect-gateway def1 bypass-dhcp
意味着客户端将尝试在本地从 1.0.0.1 和 1.1.1.1 获取 DNS,但由于push "block-outside-dns"
设置了这些请求,因此它们无法获得正常的互联网访问。
假设您确实想推广 Cloudflare DNS,而不是您环境中的某些私人服务器,那么删除这两行应该就可以实现良好的连接。