剪藏#剪藏#计算机低手

内网穿透系列十:高性能内网穿透工具 rathole,支持Docker一键部署

2025 年 8 月 2 日1 分钟
分享Twitter / XTelegram微博
内网穿透系列十:高性能内网穿透工具 rathole,支持Docker一键部署 封面

Notion image

一、简介

二、安装与使用(Docker方式)

1. 服务端安装

  • • 创建配置文件 docker-compose.yml,内容如下:
JAVASCRIPT
version: '3'

services:
  rathole:
    image: rapiz1/rathole
    volumes:
      - "./config.toml:/app/config.toml"
    command: --server /app/config.toml
    network_mode: host
    privileged: true
    restart: always
  • • 相同目录下创建服务端 config.toml 配置文件,内容如下:
JAVASCRIPT
# 服务端配置config.toml
[server]
bind_addr = "0.0.0.0:1443" # `1443` 配置了服务端监听客户端连接的端口

# 更多传输方式参考:https://github.com/rathole-org/rathole/blob/main/docs/transport.md 
[server.transport] # 要和客户端保持一致 `[client.transport]`
type = "noise"  # 可选:["tcp", "tls", "noise", ...],noise这种方式可以无需手动设置自签证书即可实现流量数据加密

[server.transport.noise]
pattern = "Noise_XX_25519_ChaChaPoly_BLAKE2s"

[server.services.portainer] #这里的portainer是自定义的服务名称
token = "test1234" # 用于验证的 token,可以设置更加复杂的
bind_addr = "0.0.0.0:9000" # 这个地址是服务端暴露的的服务端口:ip+端口,启动后这个地址作为穿透内网服务的入口

[server.services.mysql] #这里的mysql是自定义的服务名称
token = "test1234"
bind_addr = "0.0.0.0:3306"
  • • 服务器端一键启动
JAVASCRIPT
docker-compose up -d

2. 客户端安装

  • • 同样在客户机上创建配置文件 docker-compose.yml,内容如下:
JAVASCRIPT
version: '3'

services:
  rathole:
    image: rapiz1/rathole
    volumes:
      - "./config.toml:/app/config.toml"
    command: --client /app/config.toml
    restart: always
  • • 同样在相同目录下创建客户端 config.toml 配置文件,内容如下:
JAVASCRIPT
[client]
remote_addr = "ip_or_domain:1443" # 服务器的地址。端口必须与 `server.bind_addr` 中的端口相同。

[client.transport] # 客户端传输协议配置
type = "noise" # 传输协议类型,必须与服务端一致

# 传输协议配置,也跟服务端保持一致
[client.transport.noise]
pattern = "Noise_XX_25519_ChaChaPoly_BLAKE2s"

[client.services.portainer] #与服务端自定义的服务名称一致
token = "test1234" # 必须与服务器相同以通过验证
local_addr = "172.17.0.1:9000" # 需要被转发的服务的地址

[client.services.mysql]
token = "test1234"
local_addr = "172.17.0.1:3306"
  • • 客户端一键启动
JAVASCRIPT
docker-compose up -d

3. 访问内网穿透服务示例

三、总结

  • • 该工具可以作为frp、ngrok的开源替代品

  • • 没有提供免费的公网网络服务,需要自定在自己的公网服务器搭建

  • • 有一些需要高并发访问的服务、接口,可以选择 rathole 内网穿透方案

Notion image

推荐一下个人网站(本文内容如有错漏只会在个人博客更新):

Notion image

原文地址: https://mp.weixin.qq.com/s?__biz=MzU1NzA1MTMwMg==&mid=2247484609&idx=1&sn=a5a82e2cb4dccb9bdc79a0876f26c88d&chksm=fdcd57972490d1c9046de8c29239099a882b8f7ec5872149945ab964b47eee642eee2b3412b0&mpshare=1&scene=1&srcid=08027E7K4lj4vBdDyX5VaE43&sharer_shareinfo=cf477d4c6c4aaa9b2085948fe64930e2&sharer_shareinfo_first=cf477d4c6c4aaa9b2085948fe64930e2#rd

相关文章