跳转到内容
搜索文档

创建本地管理的 Tunnel

最后更新 查看 MarkdownAgent 设置

按照此逐步指南操作,使用 CLI 启动并运行您的第一个 Tunnel。

前提条件

在开始之前,请确保您已:

1. 下载并安装 cloudflared

  1. 在您的机器上下载 cloudflared。访问下载页面以找到适用于您操作系统的正确包。

  2. 将可执行文件重命名为 cloudflared.exe

  3. 在 PowerShell 中,将目录切换到您的 Downloads 文件夹并运行 .\cloudflared.exe --version。它应该会输出 cloudflared 的版本。请注意,如果您没有重命名,cloudflared.exe 可能是 cloudflared-windows-amd64.execloudflared-windows-386.exe

    PS C:\Users\Administrator\Downloads\cloudflared-stable-windows-amd64> .\cloudflared.exe --version

下载并安装 cloudflared

brew install cloudflared

或者,您也可以直接下载最新的 Darwin amd64 版本

Debian 和 Ubuntu APT

使用 apt 包管理器在兼容的机器上安装 cloudflared

  1. 添加 Cloudflare 的软件包签名密钥:
sudo mkdir -p --mode=0755 /usr/share/keyrings
curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null
  1. 将 Cloudflare 的 apt 仓库添加到您的 apt 仓库列表:
echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main" | sudo tee /etc/apt/sources.list.d/cloudflared.list
  1. 更新仓库并安装 cloudflared:
sudo apt-get update && sudo apt-get install cloudflared

RHEL RPM

使用 rpm 包管理器在兼容的机器上安装 cloudflared

  1. 添加 Cloudflare 的软件源:

    curl -fsSl https://pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo
  2. 更新软件源并安装 cloudflared:

    sudo yum update && sudo yum install cloudflared

Arch Linux

cloudflared 位于 Arch Linux 的 community 软件源中。 使用 pacman 在兼容的机器上安装 cloudflared

pacman -Syu cloudflared

其他

或者,您可以将 cloudflared 二进制文件或 Linux 软件包下载到您的机器并手动安装。访问下载页面以找到适用于您操作系统的正确包。

要从源代码构建最新版本的 cloudflared

git clone https://github.com/cloudflare/cloudflared.git
cd cloudflared
make cloudflared
go install github.com/cloudflare/cloudflared/cmd/cloudflared

根据您安装 cloudflared 的位置,您也可以将其移动到已知路径。

mv /root/cloudflared/cloudflared /usr/bin/cloudflared

2. 身份验证 cloudflared

cloudflared tunnel login

运行此命令将:

3. 创建 Tunnel 并为其命名

cloudflared tunnel create <NAME>

运行此命令将:

  • 通过在您提供的名称与您的 Tunnel 的 UUID 之间建立持久关系来创建 Tunnel。此时,Tunnel 内尚无活动连接。
  • 默认 cloudflared 目录中生成一个 Tunnel 凭据文件
  • 创建 .cfargotunnel.com 的子域。

在命令的输出中,记下 Tunnel 的 UUID 以及指向您 Tunnel 凭据文件的路径。

通过运行以下命令确认 Tunnel 已成功创建:

cloudflared tunnel list

4. 创建配置文件

  1. 在您的 .cloudflared 目录中,使用任何文本编辑器创建一个 config.yml 文件。该文件将配置 Tunnel,以将流量从给定的源站路由到您选择的主机名。

  2. 将以下字段添加到文件中:

    如果您正在连接已发布的应用程序
    url: http://localhost:8000
    tunnel: <Tunnel-UUID>
    credentials-file: /root/.cloudflared/<Tunnel-UUID>.json
    如果您正在连接私有网络
    tunnel: <Tunnel-UUID>
    credentials-file: /root/.cloudflared/<Tunnel-UUID>.json
    warp-routing:
      enabled: true
  3. 通过运行以下命令确认配置文件已成功创建:

    cat config.yml

5. 开始路由流量

1. 要通过 Tunnel 路由已发布的应用程序

cloudflared tunnel route dns <UUID or NAME> <hostname>

此命令将创建一个指向 <UUID>.cfargotunnel.comCNAME 记录。

2. 如果您正在连接私有网络,请通过 Tunnel 路由私有 IP 地址或 CIDR:

cloudflared tunnel route ip add <IP/CIDR> <UUID or NAME>

3. 确认路由已成功建立:

cloudflared tunnel route ip show

6. 运行 Tunnel

运行 Tunnel 以将传入流量从 Tunnel 代理到在您源站上本地运行的任意数量的服务。

cloudflared tunnel run <UUID or NAME>

如果您的配置文件有自定义名称或不在 .cloudflared 目录中,请添加 --config 标志并指定路径。

cloudflared tunnel --config /path/your-config-file.yml run <UUID or NAME>

7. 检查 Tunnel

要获取有关您刚刚创建的 Tunnel 的信息,请运行:

cloudflared tunnel info <UUID or NAME>

这篇文档对您有帮助吗?