我通过网络管理器设置了 VPN PPTP 连接并且连接正确(我看到通知图标附近的锁和消息“Vpn 连接已成功...”)
当我尝试通过已建立的隧道执行任何 SSH 连接时,连接本身就会中断,并显示消息“Vpn 连接失败”。
SSH 连接总是在
debug1: SSH2_MSG_KEXINIT sent
我查看了系统日志,这是日志
Dec 12 12:25:00 ushuaia NetworkManager[1155]: <info> Starting VPN service 'pptp'...
Dec 12 12:25:00 ushuaia NetworkManager[1155]: <info> VPN service 'pptp' started (org.freedesktop.NetworkManager.pptp), PID 7093
Dec 12 12:25:00 ushuaia NetworkManager[1155]: <info> VPN service 'pptp' appeared; activating connections
Dec 12 12:25:00 ushuaia NetworkManager[1155]: <info> VPN plugin state changed: init (1)
Dec 12 12:25:00 ushuaia NetworkManager[1155]: <info> VPN plugin state changed: starting (3)
Dec 12 12:25:00 ushuaia NetworkManager[1155]: <info> VPN connection 'Redation' (Connect) reply received.
Dec 12 12:25:05 ushuaia NetworkManager[1155]: <info> VPN connection 'Redation' (IP4 Config Get) reply received from old-style plugin.
Dec 12 12:25:05 ushuaia NetworkManager[1155]: <info> VPN Gateway: 5.98.141.210
Dec 12 12:25:06 ushuaia NetworkManager[1155]: <info> VPN connection 'Redation' (IP Config Get) complete.
Dec 12 12:25:06 ushuaia NetworkManager[1155]: <info> VPN plugin state changed: started (4)
Dec 12 12:25:14 ushuaia NetworkManager[1155]: <info> VPN plugin state changed: stopping (5)
Dec 12 12:25:14 ushuaia NetworkManager[1155]: <info> VPN plugin state changed: stopped (6)
Dec 12 12:25:14 ushuaia NetworkManager[1155]: <info> VPN plugin state change reason: 0
Dec 12 12:25:15 ushuaia NetworkManager[1155]: <warn> error disconnecting VPN: Could not process the request because no VPN connection was active.
Dec 12 12:25:20 ushuaia NetworkManager[1155]: <info> VPN service 'pptp' disappeared
请注意,我的同事在 Windows 7 上配置了相同的 vpn,当他们使用 putty 通过 SSH 连接时,可以正常工作
答案1
此类问题最常见的原因与路由器硬件有关,而与您的连接无关。
我以前见过这个问题,当时使用 Cisco 路由器并将其配置为使用最大 MTU 1500,并且使用 VPN 集中器,其客户端 MTU 设置也设置为 1500。您的计算机向 VPN 集中器发送一个 1500 位的数据包,但 VPN 隧道本身会增加开销(如果我没记错的话,大约 37 位),使总大小达到 1537,无法通过路由器。这是一个格式错误的数据包,路由器会将其丢弃。
Windows 机器连接的原因是它忽略了集中器的“建议”,将数据包大小设置为 1500,而只是使用它想要的大小。
测试:
要确定问题出在这里,请尝试通过 VPN 发送一个大文件(大约 1 MB),而无需使用 ssh。这样可以将 ssh 问题与底层问题隔离开来。如果出现同样的断开连接情况,则可能是 MTU 问题。
修复:
正确的解决方法是让网络管理员修复 vpn 集中器,设置比路由器更低的 MTU。或者修复路由器...
您可以将 VPN MTU 大小调整为 1400,然后一切就正常了。有几种方法可以做到这一点但这个页面应该能让你领先一步。