6 min read

在 Linux 上配置 Cloudflare WARP 并注册 Zero Trust

在 Linux 上配置 Cloudflare WARP 并注册 Zero Trust
Photo by Alina Grubnyak / Unsplash

Cloudflare WARP 是一个很好的工具,可以加密你的流量、隐藏你的IP和加速你的访问。

出于安全考虑,当我们利用 VPS 进行科学上网时,可以在 VPS 上安装 WARP,并且将科学上网的流量通过 WARP 网络再进入互联网。

普通的 WARP 是免费的,如果我们有更高的要求,需要更好的性能,就可以使用 WARP+ 或者 Zero Trust。WARP+ 针对个人用户,需要付费订阅才能使用,每个付费密钥只能在5台设备上使用;Zero Trust 针对团队用户,免费计划支持最多50台设备同时连接。

安装Cloudflare WARP

首先,我们需要在服务器上安装 WARP。根据你的 Linux 发行版,安装步骤可能略有不同。这里我以 Ubuntu/Debian 为例:

1.安装必需的软件包

先安装 curl 和 gpg:

apt update
apt install curl
sudo apt update
apt install gpg -y

2. 添加 Cloudflare 的 GPG 密钥

这一步是为了确保我们从 Cloudflare 下载的包是可信的:

curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | sudo gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg

3. 添加 Cloudflare 的软件源

将 Cloudflare 的软件源添加到系统中:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflare-client.list

4. 安装 WARP 客户端

更新软件源并安装 Cloudflare WARP:

sudo apt update
sudo apt install cloudflare-warp

注意事项

  • 确保你有 root 权限或 sudo 权限
  • 如果遇到 GPG 错误,可以尝试重新添加密钥
  • 安装过程中如果遇到网络问题,建议检查你的网络连接并重试

安装完成后,你就可以开始配置 WARP 了。

提示:可以用以下命令检查 WARP 是否安装成功:

warp-cli --version

如果显示版本号,就说明安装成功了!

使用普通 WARP

如果对性能要求不高,那么使用普通 WARP 就可以了。

1.激活 WARP

warp-cli registration new

2.更改代理模式

将 WARP 的模式设置为代理模式,要不然 SSH 连接会断。

warp-cli mode proxy

3.连接到WARP

warp-cli connect

4.查看连接状态

warp-cli status

如果显示 Status update: Connected,就表示已经连接上 WARP 网络了。

升级到 WARP+ 或加入 Zero Trust

这里我们有两个选择:WARP+ 或 Zero Trust。

方案一:升级到 WARP+

如果你想使用 WARP+,需要有 WARP+ License Key。根据下面步骤来。

1.激活 WARP+

使用下面的命令激活:

warp-cli registration license YOUR-LICENSE-KEY

2.更改代理模式

将 WARP 的模式设置为代理模式,要不然 SSH 连接会断。

warp-cli mode proxy

3.连接到WARP

warp-cli connect

4.查看连接状态

warp-cli status

如果显示 Status update: Connected,就表示已经连接上 WARP 网络了。

方案二:加入 Zero Trust 组织

如果你想使用 Zero Trust,需要先在 Cloudflare Zero Trust 控制台获得团队域名(https://YOUR_TEAM_NAME.cloudflareaccess.com),并且设置好验证方式。

接下来我们来配置 Zero Trust,这个过程需要先创建一个专门的用户,然后进行注册。

1. 创建专用用户

首先创建一个新用户来运行 WARP(建议不要用 root 用户):

# 创建新用户(把 username 替换成你想要的用户名)
adduser username

在提示输入密码时,请设置一个安全的密码,比如:your-secure-password-here

2. 给新用户添加 sudo 权限

# 将用户加入 sudo 组
usermod -aG sudo username

3. 切换到新用户

# 切换到新创建的用户
su - username

4. 注册 Zero Trust

# 注册新的 Zero Trust 设备
# 替换下面的YOUR_TEAM_NAME:你的团队名称
warp-cli registration new YOUR_TEAM_NAME

这时WARP会让你去https://YOUR_TEAM_NAME.cloudflareaccess.com/warp进行验证。

5.激活 Zero Trust

https://YOUR_TEAM_NAME.cloudflareaccess.com/warp复制到浏览器打开,是下面的界面:

在这里根据 Cloudflare Zero Trust 控制台的设置进行验证
输入一次性验证码
验证成功的界面
查看验证成功的界面的网页源代码,将途中红色框起来的部分复制出来
复制到这里为止

接着使用以下代码进行激活:

#将warp-cli registration token后面的部分替换成上面复制出来的内容
warp-cli registration token com.cloudflare.warp://YOUR_TEAM_NAME.cloudflareaccess.com/auth?token=eyJhbGciOiJSUzI......

6.连接到 WARP

warp-cli connect

7.查看连接状态

warp-cli status

如果显示 Status update: Connected,就表示已经连接上 WARP 网络了。

注意事项

  • Zero Trust 团队用户无法自行更改WARP模式,需要管理员去 Cloudflare Zero Trust 控制台进行统一设置。在 Settings-WARP Client-Device settings-Profile settings-Configure settings-Service mode 中设置成 Proxy mode。
  • 使用 token 进行激活时,尽量快一点,因为时间久了,token会失效。

配置流量转发

在配置好 WARP 之后,我们来设置 Xray 的流量转发。WARP 在本地会开启一个 SOCKS5 代理(默认端口是 40000),我们可以利用这个代理来转发流量。

基础配置示例

在 Xray 的配置文件中,添加以下 outbound 配置:

{
  "outbounds": [
    {
      "tag": "warp_proxy",
      "protocol": "socks",
      "settings": {
        "servers": [
          {
            "address": "127.0.0.1",
            "port": 40000
          }
        ]
      }
    }
  ]
}

注意事项

  • 目前发现 Hysteria2 协议与 WARP 转发存在兼容性问题,可能导致连接失败。
  • 使用 WARP 转发前,请确保 WARP 已经正常连接(可用 warp-cli status 检查)。

配置验证

可以通过访问 https://www.cloudflare.com/cdn-cgi/trace 来验证转发是否生效。如果打开的页面中显示:① warp=off,表示转发没有成功;② warp=on,表示转发到了普通 WARP;③ warp=plus,表示转发到了 WARP+ 或者 Zero Trust。