![重新协商期间的 openvpn 通信](https://linux22.com/image/776471/%E9%87%8D%E6%96%B0%E5%8D%8F%E5%95%86%E6%9C%9F%E9%97%B4%E7%9A%84%20openvpn%20%E9%80%9A%E4%BF%A1.png)
我使用 openvpn 设置,使用auth-user-pass-verify
脚本在服务器上实现自定义身份验证。此脚本访问远程服务器,因此该过程通常需要 10-40 秒。此外,我已reneg-sec
配置为每 30 分钟重新协商一次。
问题是每次重新协商开始时,客户端连接都无法正常工作,直到重新协商结束。在重新协商的某个可配置超时之前保持连接非常有意义。我尝试查看hand-window
或tran-window
配置,它们似乎相关,但没有任何帮助。
有没有办法在 openvpn 重新协商过程中维持连接?
答案1
尝试使用该auth-gen-token 0
选项。根据文档
OpenVPN 服务器将使用此选项生成临时身份验证令牌并将其推送给客户端。在以下重新协商中,OpenVPN 客户端将传递此令牌而不是用户密码。在服务器端,服务器将在内部执行令牌身份验证,并且不会针对配置的外部用户/密码身份验证机制执行任何其他身份验证。
因此,通过这种方式,重新协商就会发生,但它不会调用漫长的身份验证过程,因此不会拖延连接。