懒猫微服实战入门(十三):懒猫穿透不只图形化,纯命令行服务器也可以

需要解析 heiyu.space 这个域名就得安装客户端,突然发现懒猫微服的客户端都是图形化界面。对于服务器环境,特别是没有图形界面的服务器,我们需要纯命令行解决方案。

随着公网 IPv4 地址即将枯竭,许多云厂商的学生机也不再提供公网 IP,这迫使开发者寻找异地组网方案。虽然 Tailscale 是一个可选方案,但作为懒猫微服用户,我更希望利用懒猫自带的组网功能实现这一需求。

在 VIP 群咨询后,获得了服务端组网工具:
https://gitee.com/lazycatcloud/hclient-cli

和花生壳的 CLI 类似,但是比花生壳省心多了。(这里不再过多吐槽花生壳系列了)

安装与配置

1. 下载与初始运行

1
2
chmod +x ./hclient-cli-$arch # 首次启动需要添加可执行权限
./hclient-cli-$arch

初始运行会提示:
当前为非 tun 模式,仅支持通过 http 代理访问微服或其他设备资源

然后就会提示当前为非 tun 模式,仅支持通过 http 代理访问微服或其他设备资源,也就是说现在是单项的组网,这肯定不是我的要求,然后 GPT O3 给了我一个答案。

2. 启用 TUN 模式

1
sudo ./hclient-cli-$arch -tun true

再启动之后,就没有那个 TUN 模式的提示了。如下

hclient-cli启动界面

3. 常用命令

然后需要使用命令添加,bname 是机器的名字,uid 和 password 是用户名和密码,这样就保证了全球唯一性质,执行完第一步的时候已有的客户端会弹出验证码,执行完第二步就会消失。

1187b6cb50dd4eab5c211f927f5bbbd6

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 添加微服
curl -X POST 'http://127.0.0.1:7777/add_box?bname=%s&uid=%s&password=%s'

# 设置TFA Code(两步验证码)
curl -X POST 'http://127.0.0.1:7777/add_tfa?bname=%s&tfa=%s'

# 列举微服
curl 'http://127.0.0.1:7777/box_list'

# 删除微服
curl -X DELETE 'http://127.0.0.1:7777/del_box?bname=%s'

# 查看当前客户端信息
curl 'http://127.0.0.1:7777/client_info'

懒猫微服设备监控中可以看到加入的设备。

设备监控界面

2. 访问验证

一开始去访问我写的面食比例计算机,发现了重定向了,才想到懒猫默认给所有的应用加了一个认证。

1
2
3
4
<a
href="https://micro.heiyu.space/sys/login?redirect=https%3A%2F%2Fflour-calc.name.heiyu.space%2F"
>Temporary Redirect</a
>.

认证界面

3. 双向访问测试

商店里的 elasticsearch 放行了所有路由,这样我们在终端和 SDK 就不再需要走那个 web 的验证了,不然只能在请求头里面硬塞 cookie,但是如果是多层认证就非常的难搞。从图片中可以看到,我们从云服务器可以成功访问到家里的懒猫微服了。这个代表从云服务回到家里时没有问题的。
云服务器访问家庭网络

4. SSH 访问测试

其实更多的时候我们的异地组网是为了能够在没有公网 IP 的情况下访问节点,查一下监控设备中的域名,然后 ssh 访问进去,发现基本没什么问题。所以就能够双向访问了,这样我们组网的目的就达到了。
SSH连接成功

总结

通过懒猫微服的 CLI 工具,我们成功实现了:

  1. 无图形界面服务器的穿透接入
  2. 双向网络访问

77dea8a6a38817c503c379dd946fc9e4.png

懒猫微服实战入门(十三):懒猫穿透不只图形化,纯命令行服务器也可以

https://xu-hardy.github.io/懒猫微服实战入门(十三):懒猫穿透不只图形化,纯命令行服务器也可以/

作者

Xu

发布于

2025-07-02

更新于

2025-07-01

许可协议

评论