跳到主要内容
Windscribe

如何在Linux上设置并使用VPN(CLI与无头环境)

Author
Shaun C.
Jul 31, 2026
Divider

Windscribe为Linux提供两款应用:图形界面应用和命令行应用。图形界面应用需要桌面环境,因此在无头或仅有终端的机器上,请使用Linux CLI应用。本指南将介绍安装、登录、连接,以及其余设置的配置位置。

Linux CLI命令使用windscribe-cli这个名称(带-cli后缀),例如windscribe-cli login和windscribe-cli connect。

开始之前

  • 一个Windscribe账户。你需要有Windscribe账户。Free账户每月包含2 GB流量,确认邮箱地址后可增加到每月10 GB。Free账户可以连接免费位置。此外还有Pro和Build-a-Plan付费方案可供选择。
  • 适合你环境的应用。Linux GUI应用需要桌面环境,无法在仅有终端的无头环境中运行。服务器和无头机器请使用Linux CLI应用。
  • 受支持的发行版。Windscribe为多个发行版提供Linux CLI版本。请在下载页面下载与你的发行版和架构相匹配的CLI版本。

下载与安装

GUI应用和CLI应用均可从Windscribe下载页面获取。Windscribe是开源的,源代码和发布文件都发布在GitHub上。

如果用于无头环境,请下载与你的发行版和架构相匹配的Linux CLI版本。

Debian/Ubuntu

AMD64:

curl -L https://windscribe.com/install/desktop/linux_deb_x64_cli -o windscribe.deb
sudo apt install ./windscribe.deb

ARM64:

curl -L https://windscribe.com/install/desktop/linux_deb_arm64_cli -o windscribe.deb
sudo apt install ./windscribe.deb

其他发行版

适用于Fedora/CentOS、Arch和openSUSE的Linux CLI版本可在下载页面获取。下载对应你发行版的版本,然后用该发行版的包管理器安装。

登录并连接

请以普通用户身份运行windscribe-cli命令。唯一需要sudo的步骤是上面的软件包安装。

使用你的Windscribe账户登录:

windscribe-cli login

连接到VPN:

windscribe-cli connect

查看连接状态:

windscribe-cli status

验证你的连接

连接之后,值得确认一下流量是否真的通过VPN转发。状态显示为Connected是个好迹象,但仅凭这一点还不足以证明。先运行:

windscribe-cli status

除了连接状态和城市之外,status还会显示你的协议和端口、防火墙状态以及流量使用情况,后者便于关注Free方案的每月额度。有两个标记值得了解:Connected前面出现星号表示隧道测试仍在进行,而出现关于网络干扰的提示则表示测试发现了值得排查的问题。

要在无头机器上做一次独立验证,可以确认你的公网IP地址是否已经改变。在连接前后分别查询一个IP查询服务,无需浏览器即可完成:

curl ifconfig.me

如果连接期间返回的地址显示的是你选择的位置,而不是你的真实位置,说明流量正在通过隧道传输。比起听我们说,我们更希望你自己验证一遍。

DNS也值得留意。默认情况下,连接期间我们会把DNS请求转发到自己的服务器,R.O.B.E.R.T.过滤正是在这里生效的。如果你在配置文件中设置了自定义DNS服务器,请确认解析你查询的是这台服务器,而不是你的运营商。

切换位置

单独运行windscribe-cli connect会重新连接到你上次使用的位置,或者由应用替你选择一个。要查看可连接位置的完整列表:

windscribe-cli locations

位置以Region - City - Nickname的格式列出。你可以使用城市名、昵称、地区名或两位国家代码来连接,匹配时不区分大小写。

windscribe-cli connect "Toronto"
windscribe-cli connect CA

让应用根据延迟自动为你选择服务器:

windscribe-cli connect best

查看你的收藏位置,包括已固定的IP:

windscribe-cli locations fav

随时断开VPN连接:

windscribe-cli disconnect

更改协议和端口

Linux CLI应用支持WireGuard、UDP和TCP模式的OpenVPN、Stealth以及WStunnel。IKEv2在Windows和macOS应用中可用,但Linux上不支持。Stealth和WStunnel速度较慢,主要适用于限制严格的网络。要更换协议,在位置后面加上协议名称:

windscribe-cli connect best wireguard
windscribe-cli connect "Toronto" stealth

协议名称不区分大小写。要指定端口连接,在协议后面用冒号加上端口号:

windscribe-cli connect best udp:443

列出某个协议可用的端口:

windscribe-cli ports wireguard

如果你输入了不可用的端口,应用会回退到该协议的默认端口。

开启或关闭防火墙

防火墙会阻止VPN隧道之外的流量,有助于在连接中断时防止泄漏。开启或关闭:

windscribe-cli firewall on
windscribe-cli firewall off

在通过SSH管理的机器上使用防火墙时要小心。如果防火墙已开启而VPN未连接,它会连同其他流量一起阻断你的SSH会话。如果你是通过本地网络连接的,下面的AllowLANTraffic选项可以放行本地流量。

使用windscribe-cli logout退出登录会断开VPN并关闭防火墙。如果想退出登录但保持防火墙开启:

windscribe-cli logout on

在配置文件中配置功能

Linux CLI应用会从配置文件中读取设置:

~/.config/Windscribe/windscribe_cli.conf

该文件中的值区分大小写,必须与允许的取值完全一致。如果取值不匹配,应用会改用默认值。编辑文件后,应用你的更改:

windscribe-cli preferences reload

允许LAN流量

让本地网络中的设备在VPN和防火墙开启时仍能访问这台机器。如果你从同一网络SSH登录无头机器,就需要启用这个设置:

[Connection]
AllowLANTraffic=true

启动时自动连接

在Windscribe服务启动时自动连接VPN:

[Connection]
Autoconnect=true

自定义DNS

默认情况下,应用在连接期间使用Windscribe的DNS,R.O.B.E.R.T.过滤正是依此生效。若要使用其他DNS服务器,请将模式切换为Custom并设置上游地址。上游地址可以填普通IP,也可以填DNS-over-HTTPS/TLS的URL:

[Connection]
ConnectedDNSMode=Custom
ConnectedDNSUpstream1=1.1.1.1

分割隧道

分割隧道可以让特定应用或网段走VPN隧道内部或外部。Exclude模式会把你列出的内容之外的所有流量都发送到VPN。Include模式则只把你列出的内容发送到VPN:

[Connection]
SplitTunnelingEnabled=true
SplitTunnelingMode=Exclude
SplitTunnelingApps=/usr/bin/curl
SplitTunnelingRoutes=192.168.1.0/24

应用条目是可执行文件的完整路径,用逗号分隔。不存在的路径会被静默跳过,所以如果某个应用表现不符合预期,请仔细核对路径。

代理网关

你可以把VPN连接作为HTTP或SOCKS代理,共享给网络中的其他设备:

[Connection]
ShareProxyGatewayEnabled=true
ShareProxyGatewayMode=HTTP
ShareProxyGatewayPort=8888

将ShareProxyGatewayMode设置为HTTP或SOCKS,并选择1024到65535之间的任意端口。

完整的可用选项列表,请参阅Linux CLI配置文件参考。

其他实用命令

在同一台服务器上获取新的IP地址,部分方案在连接期间可用:

windscribe-cli ip rotate

检查并安装应用更新:

windscribe-cli update

把调试日志发送给Windscribe支持团队,在排查无头机器问题时很方便:

windscribe-cli logs send

R.O.B.E.R.T.

R.O.B.E.R.T.是Windscribe的域名拦截功能。规则不能通过CLI管理,而是在My Account中设置。自定义规则的数量取决于你的方案:

  • Free:最多3条自定义规则
  • Build-a-Plan:最多10条自定义规则
  • Pro:最多1000条自定义规则

故障排查

出现问题时,CLI会把错误输出到终端,并返回退出码1而不是0,这样脚本就能区分成功与失败。下面是几条比较常见的提示:

Aborting: app did not start in time

CLI无法启动它所依赖的后台服务。稍等片刻后再运行一次命令。如果问题反复出现,请检查windscribe-helper服务是否正在运行。

Aborting: IPC communication error

命令执行到一半时,CLI与后台服务之间的连接断开了。这通常是暂时性的,重新运行一次命令即可。在VPN开启时刚修改防火墙或LAN设置后也可能出现,稍等一会儿再试。

Firewall set to always on

防火墙处于Always On模式,无法从CLI关闭。该模式在桌面应用中设置,所以如果需要关闭,只能在那里更改。在无头机器上,除非之前在装有图形界面应用的系统上设置过这个偏好,否则一般不会遇到。

WireGuard adapter setup failed

这通常说明网络适配器的设置出了问题。在你排查原因期间,切换到UDP或TCP等其他协议往往就能连上:

windscribe-cli connect best udp

如果以上情况都不符合,请把调试日志发给我们的支持团队,让他们看看:

windscribe-cli logs send

获取帮助

要查看CLI支持的全部命令以及每条命令的简短说明,请运行:

windscribe-cli --help

如果需要分步教程和常见问题的解答,接下来可以看看我们的知识库:windscribe.com/knowledge-base。

卸载

如果需要卸载CLI应用,请使用你所在发行版的包管理器。软件包名为windscribe-cli。

Debian/Ubuntu

删除软件包:

sudo apt remove windscribe-cli

如果还想清除系统配置,请改用purge:

sudo apt purge windscribe-cli

其他发行版

在Fedora/CentOS、Arch或openSUSE上,请用包管理器删除windscribe-cli软件包,例如dnf remove、pacman -R或zypper remove。

你的个人设置保存在包管理器不会触碰的独立配置目录中。如果也想一并删除,请删掉这个目录:

rm -r ~/.config/Windscribe

常见问题

无头服务器需要哪个Windscribe应用?

openclose
请使用仅含CLI的Linux版本。图形界面应用需要桌面环境,因此无法在仅有终端或无头的机器上运行。CLI版本的下载链接以_cli结尾,它的输出始终发送到终端。

Free方案能使用CLI吗?

openclose
可以。Free账户每月包含2 GB流量,确认邮箱地址后可增加到每月10 GB,并且能连接免费位置。CLI在免费方案和付费方案上的表现是一样的。静态IP和IP轮换等少数功能需要付费方案。

是否每条命令都要用sudo运行?

openclose
不需要。请以普通用户身份运行windscribe-cli命令。唯一需要sudo的步骤是安装时的软件包安装。

我应该使用哪种协议?

openclose
WireGuard是不错的默认选择,并且支持后量子加密。如果你所在的网络会屏蔽或限速VPN,Stealth和WStunnel就是为突破这类限制设计的,只是速度通常会慢一些。如果需要,也可以使用UDP或TCP模式的OpenVPN。你可以用windscribe-cli ports列出某个协议提供的选项。

为什么windscribe-cli locations没有任何输出?

openclose
在仅含CLI的版本中,locations会按预期输出到终端。如果返回为空,那你多半运行的是图形界面桌面应用,在那里locations命令会在应用窗口中打开列表,而不是终端。无头机器上请安装仅含CLI的版本。

如果账户启用了双因素认证,该怎么登录?

openclose
运行windscribe-cli login,输入用户名和密码。如果启用了双因素认证,之后会提示你输入验证码。如果需要CAPTCHA,仅含CLI的版本会在终端里用ASCII字符画渲染出来,这样你不用浏览器也能完成验证。

如何让Windscribe在开机时自动连接?

openclose
如前所述,在配置文件中加入Autoconnect=true,即可让VPN在服务启动时自动连接。在从不进行交互式登录的无头机器上,你还需要让服务在你未登录时也能运行。请为你的用户启用lingering:
loginctl enable-linger <username>

可以从CLI管理R.O.B.E.R.T.、流媒体或端口转发吗?

openclose
不行。这些都在网站的My Account面板中处理,而不是命令行。解锁流媒体、静态IP管理和下载手动配置文件同样如此。CLI涵盖的是连接、协议、防火墙、DNS、分割隧道和代理共享。

防火墙挡住了我的SSH连接,该怎么重新连上?

openclose
防火墙开启且VPN未连接时,所有非VPN流量都会被阻断,其中可能包括你用来管理这台机器的SSH会话。如果你是通过本地网络连接的,请在配置文件中设置AllowLANTraffic=true,这样即使防火墙处于开启状态,本地流量也会被放行。如果你已经被挡在外面,就需要通过控制台或物理访问来运行windscribe-cli firewall off。为避免这种情况,请在开启防火墙之前就设置好AllowLANTraffic,而不要在会话进行中修改。
联系我们