SirTunnel进阶玩法:自定义域名与多隧道管理技巧
SirTunnel作为一款轻量级自托管隧道工具,仅需Caddy、OpenSSH和50行Python代码即可实现ngrok的核心功能。本文将分享自定义域名配置与多隧道管理的实用技巧,帮助你更高效地使用这款极简工具。## 为什么需要自定义域名?默认情况下,SirTunnel可能使用随机生成的子域名或IP地址访问服务。通过自定义域名,你可以获得:- 更专业的访问地址(如`app.yourdom
SirTunnel进阶玩法:自定义域名与多隧道管理技巧
SirTunnel作为一款轻量级自托管隧道工具,仅需Caddy、OpenSSH和50行Python代码即可实现ngrok的核心功能。本文将分享自定义域名配置与多隧道管理的实用技巧,帮助你更高效地使用这款极简工具。
为什么需要自定义域名?
默认情况下,SirTunnel可能使用随机生成的子域名或IP地址访问服务。通过自定义域名,你可以获得:
- 更专业的访问地址(如
app.yourdomain.com而非随机字符串) - 更好的品牌一致性
- 便于记忆和分享的链接
自定义域名配置步骤
1. 准备工作
确保你已完成:
- 拥有一个域名(如
yourdomain.com) - 将域名的A记录指向你的SirTunnel服务器IP
- 安装并运行SirTunnel服务(通过
./run_server.sh启动)
2. 修改Caddy配置文件
Caddy是SirTunnel使用的Web服务器,负责处理HTTP请求和SSL证书。编辑配置文件:
{
"apps": {
"http": {
"servers": {
"sirtunnel": {
"listen": [":443"],
"routes": [
{
"match": [{"host": ["app.yourdomain.com"]}],
"handle": [{"handler": "reverse_proxy", "upstreams": [{"dial": "localhost:3000"}]}]
}
]
}
}
}
}
}
3. 创建带自定义域名的隧道
使用create_tunnel_example.sh脚本创建隧道时,指定你的自定义域名:
./create_tunnel_example.sh app.yourdomain.com 8080 3000
这个命令的含义是:
- 将本地3000端口的服务
- 通过服务器的8080端口
- 映射到
app.yourdomain.com域名
多隧道管理技巧
同时运行多个隧道
SirTunnel支持同时创建多个隧道,只需为每个隧道指定不同的端口和域名:
# 隧道1:Web应用
./create_tunnel_example.sh web.yourdomain.com 8080 3000 &
# 隧道2:API服务
./create_tunnel_example.sh api.yourdomain.com 8081 4000 &
隧道自动启动
为了避免每次重启服务器都手动启动隧道,可以将隧道命令添加到启动脚本或使用进程管理工具如systemd。
隧道状态监控
使用ps命令查看当前运行的隧道进程:
ps aux | grep ssh
常见问题解决
域名无法访问
- 检查域名DNS记录是否正确解析到服务器IP
- 确认Caddy配置中的域名与实际域名匹配
- 检查服务器防火墙是否开放443端口
隧道连接断开
- 检查本地服务是否正常运行
- 确认服务器端SirTunnel服务是否正在运行(
./run_server.sh) - 尝试重新创建隧道连接
总结
通过自定义域名和多隧道管理,SirTunnel可以满足更复杂的使用场景,同时保持其轻量级和易用性的特点。无论是开发测试、演示展示还是小型服务部署,SirTunnel都能提供简单而强大的隧道解决方案。
要开始使用SirTunnel,只需克隆仓库并按照说明安装:
git clone https://gitcode.com/gh_mirrors/si/SirTunnel
cd SirTunnel
./install.sh
通过这些进阶技巧,你可以充分发挥SirTunnel的潜力,打造属于自己的高效隧道服务。
更多推荐



所有评论(0)