📦 Astrill Watchdog — Astrill VPN 看门狗

v2.0.0

监控 Ubuntu Linux 上的 Astrill VPN(deb GUI 包),通过 tun 接口和 ping 检测连接断开,然后自动重启 Astrill 进程以恢复连接。

0· 419·1 当前·1 累计
littlejakub 头像by @littlejakub (LittleJakub)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/3/7
0
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
high confidence
脚本和 SKILL.md 与所述目的内部一致:一个用户级看门狗,监控 tun0 并通过杀死并重新启动已安装的 Astrill 二进制文件来重启它;它不请求凭据或外部安装。
评估建议
这个技能似乎完全按照其宣传的那样工作:它安装一个 systemd 用户单元和一个看门狗脚本,该脚本会定期检查 tun0 和 ping,并在需要时杀死并重新启动位于 /usr/local/Astrill/astrill 的 Astrill GUI 二进制文件。安装前:(1) 验证您信任 /usr/local/Astrill/astrill 处的 Astrill 二进制文件(看门狗会自动重新启动该路径下的任何可执行文件);(2) 确认您想要一个在登录时启用的服务,可以杀死并重启 Astrill 进程;(3) 本地查看包含的脚本(它们很小且可读)并备份任何重要配置;(4) 确保您有 systemd 用户会话并更喜欢用户级服务。如果其中任何一项是问题(例如,您不想要自动重新启动或不信任已安装的 Astrill 二进制文件),请不要启用该服务。...
详细分析 ▾
用途与能力
名称/描述与文件和说明一致:代码检查 tun0、ping 主机、pkill/pgrep Astrill 二进制文件路径并重新启动它。它需要 Astrill 二进制文件和 systemd 用户会话——这是此功能的预期要求。
指令范围
SKILL.md 和脚本将操作限制在用户级路径(~/.config、~/.local/state)和 systemd 用户单元内。运行时行为(杀死/重启 Astrill、写入日志、使用 DISPLAY/DBUS/WAYLAND)与其声称的目标一致。没有读取不相关系统文件、泄露数据、联系外部端点或访问密钥的说明。
安装机制
没有远程下载或包安装;setup.sh 包含在内,将脚本复制到用户配置中并写入 systemd 用户单元。本地安装,无需 sudo,使用标准的用户配置/状态路径。
凭证需求
该技能不请求环境变量或凭据。它转发桌面相关的环境变量(DISPLAY、DBUS_SESSION_BUS_ADDRESS、WAYLAND_DISPLAY)以重新启动 Astrill,这对于从服务上下文重启 GUI/Wayland 应用程序是合理的。
持久化与权限
该技能启用 systemd 用户服务(登录时启动),仅写入用户配置/状态;不需要 always:true,不修改系统范围配置,也不请求提升权限。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv2.0.02026/3/1

**重大更新:简化并优化了 Astrill VPN 看门狗,更新了重启机制。** - 完整进程重启现在使用 `pkill astrill` 和 `setsid /autostart` 以实现可靠的恢复和 GUI 兼容性。 - 只有一种重连方法:杀死整个 Astrill 进程树并使用正确的桌面会话变量重新启动。 - 安装和使用说明已简化;只需运行 `setup.sh`(无需 sudo),包含 systemd 用户服务。 - 配置现在集中在 `astrill-watchdog.sh` 顶部,带有清晰的注释,方便调整关键选项。 - 所有相关的路径、文件和命令都已明确列出,以便于透明度和故障排除。 - 移除了 README.md;文档现在直接包含在 SKILL.md 中。

无害

安装命令

点击复制
官方npx clawhub@latest install astrill-watchdog
镜像加速npx clawhub@latest install astrill-watchdog --registry https://cn.longxiaskill.com

技能文档

监控 Ubuntu Linux 上的 Astrill VPN(deb GUI 包),并在 StealthVPN 隧道断开时自动重启。

功能说明

每 30 秒检查 tun0 + ping。失败时,执行完整的 Astrill 重启:

  • pkill astrill 杀死进程树(子进程 asproxy/asovpnc 由父进程杀死——无需 sudo)
  • setsid /autostart 使用完整的桌面环境(DISPLAYDBUSWAYLAND_DISPLAY)重新启动 Astrill,以便它可以从 systemd 服务上下文初始化其 GUI/Wayland 堆栈
  • Astrill 自动连接到上次使用的服务器

重启失败时:记录 CRITICAL 块,下一周期继续检查。永不退出。

环境要求

  • Ubuntu Linux,Astrill deb GUI 包(/usr/local/Astrill/astrill
  • pingippgreppkillsetsid(Ubuntu 默认)
  • 活动的桌面会话(DISPLAY/DBUS/WAYLAND)——Astrill 重新启动需要

安装

bash setup.sh

无需 sudo。安装看门狗,创建 systemd 用户单元,并启动服务。登录时自动启用。

使用方法

astrill-watchdog.sh start # 启动看门狗(systemd 登录时也会执行)
astrill-watchdog.sh stop # 停止看门狗
astrill-watchdog.sh status # 健康摘要 + 最近 20 行日志
astrill-watchdog.sh once # 单次健康检查 + 必要时重启,然后退出

文件说明

路径用途
~/.config/astrill-watchdog/astrill-watchdog.sh看门狗脚本
~/.config/systemd/user/astrill-watchdog.serviceSystemd 用户单元
~/.local/state/astrill-watchdog/watchdog.log日志文件(5000 行轮转)
~/.local/state/astrill-watchdog/watchdog.pidPID 文件

配置

编辑 astrill-watchdog.sh 顶部的配置块:

CHECK_INTERVAL=30 # 健康检查之间的秒数
RECONNECT_WAIT=60 # 重启后等待健康检查的秒数
PING_HOST="8.8.8.8"
PING_COUNT=3
PING_TIMEOUT=3
LOG_MAX_LINES=5000

编辑后重启:systemctl --user restart astrill-watchdog.service

诊断

# 实时日志
tail -f ~/.local/state/astrill-watchdog/watchdog.log

# Systemd 日志 journalctl --user -u astrill-watchdog.service -n 30

# 完整状态摘要 astrill-watchdog.sh status

数据来源ClawHub ↗ · 中文优化:龙虾技能库