我已经被这个问题困扰了好几天了。
我目前在自托管服务器上运行 OpenVPN 服务器。我们的员工使用此功能,以便在从远程位置登录 VPN 后,他们能够访问我们办公室网络中的资源。其主要用途是使用 RDP 连接到 Windows 机器。
我们需要将其迁移到云端。我们已经建立了一个测试环境,AWS VPNs 从我们的办公室连接到一个 Transit Gateway,该网关连接到各种 VPC。其中一个 VPC 包含一个实例,我在该实例上运行一个 OpenVPN 服务器,该服务器几乎与当前 VPN 的配置相匹配,只是做了一些小改动。然而,虽然 RDP 使用当前的 OpenVPN 安装工作得非常好,但使用云托管的 OpenVPN 安装却无法使用。无法使用我的意思是:
- 尝试播放 YouTube 剪辑以便我们可以测试帧速率,播放立即冻结长达 10 秒,然后 RDP 会话断开连接
- 当做任何不涉及视频的事情时,它通常会工作一两分钟,然后一切都冻结,一段时间后会话断开
所以我们能够很好地连接,但显然有些东西没有按应有的方式运行,我已经尝试了我能想到的一切。这些是当前可用的自托管 OpenVPN 服务器的详细信息。
- CentOS 6.10
- 开放VPN 2.4.7
和内容server.conf:
local 192.168.1.103
port 1194
proto tcp
dev tun
cert /etc/openvpn/keys2/mycert
key /etc/openvpn/keys2/mykey
dh /etc/openvpn/keys2/dh.pem
server 10.8.0.0 255.255.255.0
topology subnet
route 192.168.2.0 255.255.255.0
push "route 10.8.0.0 255.255.255.0"
push "route 192.168.1.0 255.255.255.0"
push "dhcp-option DNS 192.168.1.1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
client-config-dir /etc/openvpn/ccd
client-to-client
duplicate-cn
keepalive 20 600
cipher AES-128-CBC
max-clients 100
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 4
username-as-common-name
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn
reneg-sec 0
management localhost 17505
compress lz4
mssfix 1432
mute 10
ifconfig-pool-persist ipp.txt
key-direction 0
tcp-queue-limit 256
verify-client-cert none
云 OpenVPN 服务器的详细信息:
- CentOS 7.6.1810
- 开放VPN 2.4.7
以及内容server.conf:
port 1194
proto udp
dev tun
username-as-common-name
ca /etc/certs/ca.crt
cert /etc/certs/server.crt
key /etc/certs/server.key
dh /etc/certs/dh2048.pem
server 10.8.0.0 255.255.255.0
topology subnet
push "route 10.8.0.0 255.255.255.0"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
client-config-dir /etc/openvpn/ccd
client-to-client
duplicate-cn
keepalive 20 600
tcp-queue-limit 256
cipher AES-256-CBC
auth SHA256
max-clients 100
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 4
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn
reneg-sec 0
compress lz4
mssfix 1432
mute 10
ifconfig-pool-persist ipp.txt
key-direction 0
verify-client-cert none
您可以看到某些路由是必要的。此外,虽然目前新服务器正在使用 UDP,如下所述,这是因为我已更改此设置以尝试解决问题。
这是我尝试过的:
- 尝试了 TCP 和 UDP(UDP 在办公室里对我们来说从来都不是很好,所以我们已经使用 TCP 多年了)
- MTU 设置的许多变化,从 500 到 2500,以许多增量
- 将密码更改为 AES-128-CBC
- 所有可用的 RDP 颜色和带宽设置
- 各种 RDP 显示尺寸设置
- TightVNC,效果很好,但不幸的是不是一个解决方案。我只是想确定这个问题是 RDP 特有的
将不胜感激任何想法,因为我没有他们。