首页 文章

无法通过VPN连接到服务器上的HTTPS [关闭]

提问于
浏览
-1

我在家里有一台服务器,另一台在VPS主机上 . 我试图在它们之间创建L2TP / IPsec隧道 . 隧道工作,一台服务器可以从另一台服务器访问HTTP服务(VPS服务器是客户端,家里的服务器是我连接的VPN服务器,运行我试图从VPS服务器访问的HTTP和HTTPS服务) . 但是当我尝试通过HTTPS连接时,连接不起作用 .

当我从通过L2TP / IPsec连接到另一个的远程服务器运行此命令时会发生这种情况:_1497878:

CONNECTED(00000003)

如果我尝试 wget --verbose https://SERVER/

Resolving SERVER (SERVER)... SERVERIP
Connecting to SERVER (SERVER)|SERVERIP|:443... connected.

因此连接已启动,但没有数据交换 . 我已经使用nmap进行了测试,并且端口被检测为打开 .

我试图通过我的笔记本电脑连接到这个VPN,从那里,我可以访问HTTP和HTTPS服务,但是从这个服务器,我只能使用HTTP . 我已经尝试关闭数据包路径上的所有防火墙,但问题仍然存在 .

我知道这是一个非常具体的案例,所以如果问题可能没有实际答案,我至少在寻找如何调试这个的指导原则wget,curl和openssl s_clinent不提供任何细节,因为它们保持连接 Build 状态 .

更新:我在家庭服务器上打开了NAT上的443端口,并尝试直接从没有VPN的VPS服务器连接到HTTPS服务,并且它工作正常 . 因此,只有当我通过VPN访问HTTPS时,连接才起作用 .

1 回答

  • 0

    问题是L2TP连接的MTU设置 . 我不得不将MTU降低到1300,因为HTTPS IPSec增加了数据包超过1500的开销,这是以太网和SSL软件包在第3层上设置DF(不分段)标志的上限,这会禁用软件包碎片 .

    通常情况下,服务器会发送特殊的ICMP消息来通知VPN服务器这个问题,但我有防火墙阻止了ICMP,所以没有错误,只是连接无法 Build ,因为包太大而且只是被丢弃 .

相关问题