alpine系统搭建hy2节点

更新系统:apk update && apk upgrade

查看ip:curl ifconfig.me

alpine中安装hysteria2

wget -O hy2.sh https://raw.githubusercontent.com/zrlhk/alpine-hysteria2/main/hy2.sh  && sh hy2.sh

如果没有成功,可以重复执行,会覆盖密码

打开V2,选择服务器,选择添加hy2服务器

别名:随便
地址:2a01:4f9:6b:47e9::345             ipv6
端口:40443                            去配置文件:/etc/hysteria/config.yaml  查看
密码:5PK35VON4/KM64bxw8cEXtkt         去配置文件:/etc/hysteria/config.yaml  查看
混淆密码:空
跳跃端口范围   空

传输层安全  tls
SNI    bing.com
跳过证书验证   true      其他默认

在Alpine系统上完全卸载Hysteria2(hy2)的步骤如下:

1. 停止运行中的hy2服务

sudo rc-service hysteria stop

2. 禁用开机自启动

sudo rc-update del hysteria

3. 删除hy2服务文件

sudo rm /etc/init.d/hysteria

4. 删除hy2配置文件

sudo rm -rf /etc/hysteria/

5. 确认卸载完成

ps aux | grep hysteria

如果仅显示 grep hysteria,则表明系统中已无 Hysteria2 进程,卸载成功。

补充:hysteria进程保活

新建脚本 /usr/local/bin/hysteria-keepalive.sh:
内容:

sudo tee /usr/local/bin/hysteria-keepalive.sh > /dev/null << 'EOF'
#!/bin/sh
#
# 只要 hysteria 服务退出,就自动重启并记录日志
#

# 配置 hysteria 可执行文件路径(根据实际安装位置改)
HY_EXEC="/usr/local/bin/hysteria"
# 配置 hysteria 的 YAML 文件路径(根据实际位置改)
HY_CONF="/etc/hysteria/config.yaml"
# 日志文件路径,放在家目录更安全,避免权限问题
HY_LOG="$HOME/hysteria-restart.log"

# 无限循环
while true; do
  # 启动 hysteria 服务端
  $HY_EXEC server -c "$HY_CONF"
  # 将退出码和时间写进日志
  echo "[hysteria] 进程已退出 (退出码 $? ),$(date) 重新启动" >> "$HY_LOG"
  # 等待 1 秒 再重启
  sleep 1
done
EOF

# 赋可执行权限
sudo chmod +x /usr/local/bin/hysteria-keepalive.sh

2手动验证脚本没语法错误且能单独跑通:

sh /usr/local/bin/hysteria-keepalive.sh

3.用 nohup 把脚本丢到后台跑:
在终端里敲:nohup /usr/local/bin/hysteria-keepalive.sh > ~/hysteria-nohup.log 2>&1 &

4.验证后台进程是否正常运行:
查看父脚本本身:ps aux | grep "[h]ysteria-keepalive.sh"
应该能看到 … hysteria-keepalive.sh 这一行,说明脚本还在跑。

查看 Hysteria 服务端子进程:
ps aux | grep "[h]ysteria server"
如果看到类似 /usr/local/bin/hysteria server -c /etc/hysteria/config.yaml 的行,就说明它在跑。

查看日志文件:看重启记录
tail -n 20 ~/hysteria-restart.log
如果脚本刚启动不久,你可能暂时看不到日志(还没挂掉过);等你手动杀掉子进程再重启时,就会在这里看到新的一行 [hysteria] 进程已退出 (退出码…),日期 重新启动。

5.触发一次“手动杀进程”,测试保活效果
查看 Hysteria 服务端子进程:
输入 ps aux | grep "[h]ysteria server" 记住子进程的 PID
152676 root 17:52 /usr/local/bin/hysteria server --config /etc/hysteria/config.yaml

kill 152676
等 1~2 秒钟。再次:ps aux | grep "[h]ysteria server"
如果你看到一个新 PID,比如现在是 23480,就说明脚本侦测到 “原来 152676 挂了”,然后 1 秒后重新启动成 23480,完美保活。

版权声明:
作者:song
链接:https://apepine.com/archives/295
来源:猿猿松
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>