Network tunnel with clouflarered and github-action。
Use github action and argo tunnel to create temporary network tunnel.
Prerequisites
- 能连上 Cloudflare 的电脑或 VPS(用于申请 Argo Tunnel 密钥)
- 绑定到 Cloudflare 的域名(受 API 限制,不可用 .cf, .ga, .gq, .ml, or .tk 结尾的域名)
- 域名的 SSL 模式设置为
Full 完全
Usage
1. 生成 Argo Tunnel 密钥
以任意 Linux 环境运行以下指令,首先下载 cloudflared
wget https://github.com/cloudflare/cloudflared/releases/download/2021.5.10/cloudflared-linux-amd64 -O /usr/local/bin/cloudflared && chmod +x /usr/local/bin/cloudflared
接着生成密钥
cloudflared tunnel login
用浏览器打开给出的网址,登入你的 Cloudflare 帐户,授权一个区域使用 Argo Tunnel。成功后会在你的 Linux 环境生成一个~/.cloudflared
目录。保存 ~/.cloudflared/cert.pem
的内容,后面会用到。
2. 取得 CF Global API Key
建立一个 CF 的 API Token,权限设置为 DNS: Edit; Zone: Read。 由于需要删除 DNS 纪录的权限,目前只能用 Global API Key。
3. Fork 本项目并添加以下的 Secret
Name | Value | Source | Example |
---|---|---|---|
CF_API_KEY | CF API Key | 2 取得 CF API Key | 8f32f6daf2964cf6aa2d6077a3dd1308 |
CF_API_EMAIL | CF Email | 2. 取得 CF API Key | abc@example.com |
ARGO_TUNNEL_DOMAIN | 隧道主域名 | 1. 生成密钥 | example.com |
ARGO_TUNNEL_TOKEN | 隧道密钥 | 1. 生成密钥 | content of ~/.cloudflared/cert.pem |
ARGO_TUNNEL_HOSTNAME | 隧道域名 | 1. 生成密钥 | tunnel.example.com |
XRAY_VLESS_UUID | xray 的 uuid | 自定义 | 8f32f6da-f296-4cf6-aa2d-6077a3dd1308 |
XRAY_VLESS_WSPATH | xray 的 path | 自定义 | /myargo |
设置路径:Repo 页面 → Settings → Secret → New Repository secrets
4. 连接到 Github Action 容器
使用支持 ws 的 VLESS 客户端,以如下配置进行连接
地址: Argo 隧道域名 or CF 自选 IP
端口: 2083
协议: VLESS
UUID: 你设定的值
传输方式: ws
host: Argo 隧道域名
path: 你设定的值
Future works
- Authenticate argo tunnel and generate
cert.pem
on the air - Support grpc
- Gugugu
Note
FAIR USE ONLY. DO NOT ABUSE THIS PROJECT WITH ILLEGAL PURPOSE OR ANYTHING DISOBEYING TOS OF GITHUB OR CLOUDFLARE. THE AUTHOR OF THIS REPOSITORY GIVE NO WARRANTY FOR ANY RESULT CAUSING BY ABUSE.
本项目仅供学习 Cloudflare Argo Tunnel 与 Github Action 的操作与运行原理,所生成的隧道默认运行 1 小时且仅能手动触发,若有持续使用的需求请自行修改触发条件。
from https://github.com/phlinhng/argo-xray
-----------------------------------------------------
CloudFlare Argo Tunnel 一键管理脚本
argo-script
CloudFlare Argo Tunnel 一键管理脚本
wget -N --no-check-certificate https://raw.githubusercontent.com/Misaka-blog/argo-script/main/argo.sh && bash argo.sh
from https://github.com/Misaka-blog/argo-script
No comments:
Post a Comment