设置里写的是自动连接,而它在生效之后会发生什么,完全取决于选的是两种模式中的哪一种。一种在您登录 Mac 时启动隧道;另一种在计算机开机时启动,完全没有用户会话。后一种需要有人能输入密码之前就已存在的凭证,因此它常常以一条永远起不来的连接收场。两种模式都不是在隧道建立之前就阻断流量的策略。

在选择该选项之前,先决定连接应当跟随哪个事件,因为所有要求都完全来自这个答案。

两个选项,两种不同的会话

Tunnelblick 的自动连接设置提供登录时模式和计算机启动模式,而这两者并不是可以互换的标签。前者在用户会话内运行,可以使用该用户的钥匙串并弹窗询问。后者在既没有界面、也没有该会话的情况下运行,所以对话框根本没有人可以显示。其他所有差异,包括哪些配置符合条件,都源自这一区分。

因此,桌面上能正常工作的私人配置,并不会自动成为计算机启动的候选。

登录时启动能带来什么

随会话一起启动,保留了正常的交互环境。应用可以请求配置所需要的任何东西,无论是账户密码、密钥口令还是 MFA 提示,而用户就在那里可以回答。Tunnelblick 还记录了在注销时仍在运行、登录时重新启动这一行为,它相关但独立,值得针对已安装的版本加以确认。打开应用与建立可用的隧道是两件事,只有后一件事对您想访问的资源有意义。

通过注销再登录来测试它,然后检查私人资源,而不是看图标。菜单栏里的图标只能证明应用已启动;一次成功的请求才能证明隧道在工作。

计算机启动真正需要什么

计算机启动在没有 Tunnelblick 界面、也没有已登录用户的情况下运行 OpenVPN,因此没有用户钥匙串可用,也不可能有任何提示出现。该选项需要一份符合此模式的共享配置,并且认证必须在无人值守下工作:无口令的密钥,或 VPN 所有者已批准的另一种受支持安排。为了让变灰的控件变得可选而移除密钥的保护,或把 MFA 代码存进文件,这不是配置,而是降级。

计算机启动时的连接还可能比应用和用户会话活得更久。请规划管理员如何观察并停止它,而不要以为退出 Tunnelblick 就会结束隧道。

两者都不阻断流量

更早启动并不是网络阻断策略。底层网络必须先存在,OpenVPN 才能连接,而在此期间其他应用可以自由使用它。如果要求是隧道建立之前什么都不能出去,那是另一套带有自身验证的强制执行设计,而不是 VPN 客户端里的一个复选框。macOS 的按需规则和防火墙解决的是那个问题的不同部分。

在触碰设置之前,把要求写成一句话:这台 Mac 必须从登录起、从开机起,或仅在某个特定应用运行时才有隧道。然后再确认已安装的版本真正支持哪些模式。

引发这一切的症状通常是一条从未起来的隧道。答案几乎总是会话模型,而不是配置文件。

相关文章