故障排除
出现问题时,VpnHood! MANAGER 通常会最先显示出来:体现在服务器的状态中,显示为一条红色消息,或在您打开密钥时显示为错误。请在下文中找到您看到的情况,以及相应的处理方法。
服务器状态的含义
服务器的 Status 会告诉您它的运行情况:
- NotInstalled:服务器尚未连接到 MANAGER。
- Configuring:服务器正在应用新设置,这需要一两分钟。
- Idle 或 Active:服务器运行正常,有设备连接时显示为 Active。
- Disabled:服务器的 Enabled 开关已关闭。
- Lost:服务器已停止向 MANAGER 上报。
- Error:服务器无法应用其设置。
新连接只会分配给状态为 Idle、Active 或 Configuring 的服务器。
通过 SSH 安装失败
当 MANAGER 无法通过 SSH 安装服务器时,会显示错误信息,并在 Details 中列出它收到的全部返回内容。常见错误如下:
- 如果提示 The host has no public address,请输入服务器的公网 IP 地址或指向它的域名:MANAGER 是通过互联网访问服务器的。
- 如果连接被拒绝或超时,说明 MANAGER 无法访问服务器上的 SSH:请确保服务器在该端口上接受来自互联网的 SSH 连接,或改用命令安装服务器。
- 如果提示 Permission denied,说明用户名、密码或密钥有误。
- 如果提示 Login Password required,说明该用户使用 sudo 时需要输入密码:请在 Login Password 中填写该密码,即使您使用密钥登录也是如此。
- 如果提示 Installation failed,说明安装程序已运行但未完成,Details 中会显示它的输出内容。该用户必须有权使用 sudo,而且即使是 root 用户,机器上也必须安装 sudo。
服务器始终无法连接
服务器在连接到 MANAGER 之前,会一直显示为 NotInstalled。安装程序完成约一分钟后,服务器会通过 HTTPS 连接到位于 access.vpnhood.com 的 MANAGER。如果状态一直没有变化:
- 查看安装命令输出的内容。如果它因错误而中止,请修复该错误并再次运行该命令:在您删除该服务器之前,该命令一直有效。
- 请确保服务器能通过 HTTPS 访问
access.vpnhood.com:如果防火墙或网络拦截了该连接,服务器就无法连接 MANAGER。 - 查看服务器的日志,其中会说明它无法连接的原因:请参阅启动与停止服务器;如使用 Docker,请参阅启动、停止与检查服务器。
服务器显示错误
当服务器无法应用其设置时,其状态会变为 Error,其页面会在 Error 下以红字显示原因。服务器每分钟重试一次,因此一旦您排除了原因,错误就会消失。
- 如果提示 No working tcp end point is available after configuration,说明服务器无法打开其任何 TCP 端口。在 Access Points 下,端口旁的红色图标表示服务器无法打开该端口:选择它即可查看原因。最常见的原因是其他程序已占用该端口。请释放该端口,或为该接入点换用其他端口,方法参见更改地址。
- 如果提示 Your server version is not supported,说明服务器版本过旧,MANAGER 不予接受:请再次运行其安装命令,该命令会安装最新版本。
如果服务器的设置已连续失败一周,它就只会每半小时重试一次。排除原因后,请重启服务器,使其立即重试。
服务器停止上报
服务器每隔几分钟向 MANAGER 上报一次。如果连续多次未能上报,其状态会变为 Lost:这说明机器已宕机、服务器已停止运行,或它无法访问 access.vpnhood.com。在重新上报之前,它不会获得新连接,集群中的其他服务器则照常运行。
检查机器是否正在运行,然后检查服务器的状态和日志,并重启服务器:请参阅启动与停止服务器;如使用 Docker,请参阅启动、停止与检查服务器。
集群显示红色消息
集群名称下方的红色消息表示 MANAGER 无法生成该集群的 Token,即密钥中告诉应用如何连接集群服务器的部分。在您解决问题之前,集群会保留上一个可用的 Token,因此其密钥携带的仍是旧地址。
- 如果提示 The farm must have at least one server with PublicInToken access points to use a SelfSigned certificate,说明应用既无法通过受信任的域名,也无法通过密钥中的地址找到该集群的服务器。请让集群中的一台服务器拥有一个 Mode 为 PublicInToken 的地址,方法参见接入点设置;或为集群绑定自定义域名,请参阅使用自定义域名。新集群在其第一台服务器安装完成之前,都会显示此消息。
- 如果提示 DomainOnly certificates cannot be used as the default server farm tokens at this time,说明密钥所含证书的 Signing 被设为 DomainOnly,而密钥无法携带此类证书。请为该证书选择其他 Signing,或在密钥中改用另一个证书:请参阅密钥中的证书。
密钥无法打开
如果密钥页面上的 Access Key 显示 The server farm token has not been initialized properly,说明该密钥所属的集群从未有过可用的 Token。请打开该集群,按上文所述处理其红色消息,密钥即可打开。
应用无法连接
当设备无法连接时,应用会显示原因:
- 如果应用提示密钥已过期、已被锁定或流量已用完,请在 MANAGER 中打开该密钥:密钥一旦过期、流量用完或被停用,就会停止工作。
- 如果应用提示没有可用的服务器,说明集群中没有任何服务器能接受新连接:请按上文所述检查它们的状态。
- 如果应用无法访问服务器,请检查 Mode 为 PublicInToken 的地址是否为您服务器的公网地址,以及服务器的防火墙或您云平台的防火墙是否放行了这些地址的 TCP 端口。如果应用在某些网络上能连接,在其他网络上却不能,说明这些网络封锁了该服务器:请参阅防止服务器 IP 地址被封锁。