将 VPN 连接尝试超时时间增加到 60 秒以上

将 VPN 连接尝试超时时间增加到 60 秒以上

我有 OpenVPN 连接,但由于某种原因,连接时间太长。

但是,当我使用该nmcli connection up MyOpenVPN_TCP命令时,它一直尝试连接仅 60 秒,我需要增加该持续时间。

我收到以下错误消息:

错误:连接激活失败:未知原因

提示:使用'journalctl -xe NM_CONNECTION={部分序列号} + NM_设备={我的 WLAN 接口}'以获取更多详细信息。

当我运行它时日志控制命令,我只得到以下日志:

启动 openvpn

dbus:故障:连接失败(1)

当我监控 DBusNetworkManager 的 VPN 接口,我得到以下日志:

信号时间=1677534191.881782 发送方=:1.328 -> 目的地=(空目的地)串行=527 路径=/org/freedesktop/NetworkManager/ActiveConnection/2;接口=org.freedesktop.NetworkManager.VPN.Connection;成员=VpnStateChanged uint32 2 uint32 1

信号时间=1677534191.883698 发送者=:1.328 -> 目的地=(空目的地)串行=544 路径=/org/freedesktop/NetworkManager/ActiveConnection/2;接口=org.freedesktop.NetworkManager.VPN.Connection;成员=VpnStateChanged uint32 3 uint32 1

信号时间=1677534252.361651 发送方=:1.328 -> 目的地=(空目的地)串行=582 路径=/org/freedesktop/NetworkManager/ActiveConnection/2;接口=org.freedesktop.NetworkManager.VPN.Connection;成员=VpnStateChanged uint32 6 uint32 0

我是不是漏掉了什么?有什么办法可以增加超时时间吗?


我到目前为止尝试过但没有成功的方法:

  1. 在我的 VPN 连接配置文件中:/etc/NetworkManager/system-connections/MyOpenVPN_TCP.nmconnection:timeout=90在节下添加[vpn](当我将其设置为小于 60 时,它就可以正常工作;我收到超时错误消息,而不是未知原因
  2. 在 NetworkManager 全局配置文件中:/etc/NetworkManager/NetworkManager.conf
    • 根据vpn.timeout=90[connection](与前一个行为相同
  3. 在 OpenVPN 配置文件中:MyOpenVPN_TCP.ovpn:添加“hand-window 90”,然后重新导入配置文件,但我没有看到 MyOpenVPN_TCP.nmconnection 文件中添加任何新内容(我期望 [vpn] 下的 timeout=90!
  4. /usr/sbin/openvpn用传递的 shell 脚本替换二进制文件--hand-window 90,以便每当 NetworkManager 启动 openvpn 时,它都会以 启动hand-window=90

但是,当我使用以下命令明确启动 openvpn 时,握手会等待 90 秒而不是 60 秒:

sudo openvpn --hand-window 90 --config MyOpenVPN_TCP.ovpn

到目前为止我能做的唯一解决方法是使用一些 shell 脚本循环不断重试连接直至成功。


我的配置是:

1./etc/NetworkManager/NetworkManager.conf

[主要的]

插件=ifupdown,密钥文件

[如果上载]

管理=false

[设备]

wifi.scan-rand-mac 地址=no

[联系]

#VPN超时=90

2. /etc/NetworkManager/system-connections/MyOpenVPN_TCP.nmconnection

[联系]

id=MyOpenVPN_TCP

uuid=7f9b3356-b210-4c0e-8123-bd116c9c280f

类型=vpn

时间戳=1676641002

[VPN]

身份验证=SHA256

ca=MyOpenVPN_TCP.p12

证书=MyOpenVPN_TCP.p12

证书通过标志=0

密码=AES-256-GCM

连接类型=密码-tls

dev=tun

密钥=MyOpenVPN_TCP.密钥

密码标志=1

推送对等信息=是

远程={服务器 IP}:443:tcp客户端

远程证书 tls = 服务器

ta=MyOpenVPN_TCP.key

ta-目录=1

用户名={我的VPN用户名}

验证-x509-name = 名称:freeradius-temp-服务器

服务类型=org.freedesktop.NetworkManager.openvpn

#超时=90

[VPN 秘密]

证书通过={CERT_PWD}

[IPv4]

方法=自动

[IPv6]

addr-gen-mode =稳定隐私

方法=自动

[代理人]


系统详细信息:

  • Ubuntu 22.04 LTS 64 位
  • 网络管理器 1.36.6
  • OpenVPN 2.5.5

OpenVPN 客户端日志

当我运行以下命令时:

sudo openvpn --hand-window 93 --config MyOpenVPN_TCP.ovpn

或者添加hand-window 93到 OpenVPN 配置文件:MyOpenVPN_TCP.ovpn,然后运行以下命令:

sudo openvpn --config MyOpenVPN_TCP.ovpn

它起作用了,并且我得到了以下日志:

2023-02-23 14:01:53 TCP/UDP:保留最近使用的远程地址:[AF_INET]{服务器 IP}:443

2023-02-23 14:01:53 尝试与 [AF_INET] 建立 TCP 连接{服务器 IP}:443 [非阻塞]

2023-02-23 14:01:53 与 [AF_INET] 建立 TCP 连接{服务器 IP}:443

2023-02-23 14:01:53 TCP_CLIENT 链接本地(绑定):[AF_INET][undef]:0

2023-02-23 14:01:53 TCP_CLIENT 链接远程:[AF_INET]{服务器 IP}:443

2023-02-23 14:03:26 TLS 错误:TLS 密钥协商在 93 秒内失败(请检查您的网络连接)

2023-02-23 14:03:26 TLS 错误:TLS 握手失败 2023-02-23 14:03:26 致命 TLS 错误(check_tls_errors_co),正在重新启动

2023-02-23 14:03:26 SIGUSR1[soft,tls-error] 已接收,进程正在重新启动

2023-02-23 14:03:31 TCP/UDP:保留最近使用的远程地址:[AF_INET]{服务器 IP}:443

答案1

我认为您尝试的第一个选项被 nm 的配置文件覆盖了。在第二个选项中,我认为您正在修改操作系统的默认配置。尝试在 /etc/NetworkManager/conf.d 下创建您自己的配置。当您将其设置为小于或大于默认值 60 时,看看它是否随之变化

相关内容