首页 > 其他分享 >cloudflare tunnel 折腾小记

cloudflare tunnel 折腾小记

时间:2023-01-07 00:55:32浏览次数:56  
标签:false service tunnel xxx cc cloudflare cloudflared 小记

cloudflare 账号注册

https://www.cloudflare-cn.com/products/tunnel/

域名准备和配置

有两种方式:

  1. 在 cloudflare 自己购买域名, 比较贵
  2. 在其他平台的域名, 通过配置解析域名规则, 这样可以托管在 cloudflare

以阿里云为, 在域名管理页面, 选择对应的域名,配置解析服务器为:

adaline.ns.cloudflare.com
nero.ns.cloudflare.com

cloudflare 配置

基本配置

  1. 本机下载和配置 cloudflare 工具 , 以 linux 为例子
# 直接将可执行文件下载到 bin 目录
sudo curl -L 'https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64' -o /usr/bin/cloudflared
# 增加执行权限

sudo chmod +x /usr/bin/cloudflared
  1. 登录
cloudflared tunnel login
# 将出现的一长串 URL 拷贝到浏览器, 并选择对应的域名
  1. 创建隧道
# 创建一个隧道, 名为 fedora
cloudflared tunnel create fedora
# 此时会出现一个 UID,后续配置文件中会用到,也可以执行 `ls ~/.cloudflared/` 查看
  1. 绑定域名和隧道的对应关系, 可以一个隧道绑定多个域名
# 绑定域名, 一个隧道可以同时接管多个子域名, 将多个域名都路由指定的隧道
cloudflared tunnel route dns fedora blog.xxx.cc
cloudflared tunnel route dns fedora ssh.xxx.cc
cloudflared tunnel route dns fedora rdp.xxx.cc
cloudflared tunnel route dns fedora vscode.xxx.cc
  1. 编辑配置文件
    在 .cloudflared 目录下,新建 config.yaml 文件
tunnel: bd7782ba-1f06-4613-b395-cc6c0b237de2
credentials-file: /home/feng/.cloudflared/bd7782ba-1f06-4613-b395-cc6c0b237de2.json
protocol: h2mux
ingress:
  - hostname: vscode.xxx.cc
    service: http://localhost:8080
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - hostname: blog.xxx.cc
    service: http://localhost:8081
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - hostname: fleet.xxx.cc
    service: http://localhost:8082
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - hostname: clash.xxx.cc
    service: http://localhost:7890
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - hostname: ssh.xxx.cc
    service: tcp://localhost:22
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - hostname: vnc.xxx.cc
    service: rdp://localhost:3389
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - service: http_status:404

SSH 登录配置

  1. 配置 ssh 的端口映射,url 改成 tcp 即可, 端口默认是 22
  - hostname: ssh.xxx.cc
    service: tcp://localhost:22
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  1. 客户端需要 cloudflared 工具配合使用.

修改 ~/.ssh/config 文件

Host ssh.xxx.cc
ProxyCommand /usr/local/bin/cloudflared access ssh --hostname %h
  1. 正常使用 ssh 命令登录即可
ssh [email protected]

RDP 远程控制配置

  1. 配置 RDP 的端口映射, url 前缀改为 rdp, 默认端口是 3389
  - hostname: vnc.xxx.cc
    service: rdp://localhost:3389
    originRequest:
       disableChunkedEncoding: false
       noTLSVerify: false
  - service: http_status:404
  1. 使用 cloudflared 进行端口映射,将服务端的 3389 映射到本机的 3389 端口
cloudflared access rdp --hostname vnc.xxx.cc --url rdp://localhost:3389
  1. 使用 RDP 连接工具, 地址写为 localhost 即可

cloudflared 服务化配置

  1. 使用 cloudflared 创建服务
sudo cloudflared service install

安装完成之后,则可以使用 systemctl 命令进行服务控制

  1. 设置自启动
sudo systemctl enable cloudflared
  1. 查看服务状态
sudo systemctl status cloudflared
  1. 修改服务配置
    当注册为服务之后,相应的配置会 copy 到 /etc/cloudflared/config.yml, 如有后续的相关修改,直接修改这个文件即可。
sudo vim /etc/cloudflared/config.yml

标签:false,service,tunnel,xxx,cc,cloudflare,cloudflared,小记
From: https://www.cnblogs.com/0x12345678/p/17032013.html

相关文章

  • <<Redis 核心技术与实战>> 小记随笔 —— 有一亿个keys要统计,应该用哪种集合?
    聚合统计应用场景统计手机App每天的新增用户数和第二天的留存用户数解决方案由于Set类型可以实现并集、交集、差集等能力。所以设计一个Set存所有的用户Id,并且......
  • <<Redis 核心技术与实战>> 小记随笔 —— GEO
    应用场景用于描述LBS(Location-BasedService)的数据结构,能够存储对象的经纬度信息,并且可以进行指定经纬度点指定距离范围内的查询、排序等能力。类型介绍是一种自定......
  • Day2 Java基础小记
    Java基础小记Java特性和优势简单性面向对象可移植性性高性能分布式动态性多线程安全性健壮性Java为什么能够成功?Java三大版本JavaSE:标准版(桌面程序,控......
  • @NonNull 注解小记——非空判断的触发时机区别
    背景@NonNull:关于这个注解,lombok的一个注解,可以加在方法-入参,或构造函数上。本以为加了这个参数,会自动判断(编译阶段)会判断,但发现并不是这个意思。因为在编译的时候,传......
  • 耳分解小记
    在有向(强)连通图中,定义“耳”为一条简单路径/一个简单环\(a_1\toa_2\to\cdots\toa_k\),使得删去所有这些边之后不影响除了\(a_2,a_3,\dots,a_{k-1}\)的点的(强)连通性。......
  • Webpack3.x升级至 4.x 小记
    Webpack3.x升级至4.x小记 近期项目部署遇到点问题,需要升级webpack版本,特此整理一小记,记录升级过程中的依赖包及报错处理。本次升级的依赖包及对应版本对照表:np......
  • nginx使用小记
    中文wiki社区:http://wiki.codemongers.com/NginxChs一.nginx安装1.下载nginx:http://sysoev.ru/nginx/download.html(官方下载页面)wgethttp://sysoev.ru/nginx/nginx......
  • Mysql常见注意事项小记
    Mysql常见注意事项小记1.排序问题正常如果按照某字段升序排列,空值会排到有值的前面;如果逆序排序空值排在最后。有时候我们需要该字段为空的行数据要排到最......
  • 【学习小记】狄利克雷卷积+杜教筛
    Preface这东西分明就是玄学暴力用来求简单的数论函数的前缀和,像φ,μ这类的东西当然,约数和,约数个数之类的也是可以的Text数论函数是指定义域是整数,陪域是复数的函数Dirich......
  • 【学习小记】狄利克雷卷积+杜教筛
    Preface这东西分明就是玄学暴力用来求简单的数论函数的前缀和,像φ,μ这类的东西当然,约数和,约数个数之类的也是可以的Text数论函数是指定义域是整数,陪域是复数的函数Dirich......