前言
最近将nezha后端的地址全部换了个域名,命名更加合理了。
但是问题来了,10多台服务器不同的系统需要一个一个去替换api地址,还是有点麻烦的。
所以今天记录一下配置修改过程,以便后续查看。
Linux agent修改
nezha-agent在Linux中大部分以服务形式运行,因此下面的教程适用于这种情形。
使用如下步骤:
首先,修改之前,先确定你的nezha agent采用systemd方式运行。
BASH可以看到确实nezha agent注册了服务,记下地址
/etc/systemd/system/nezha-agent.service
。修改之前先停止服务
sudo systemctl stop nezha-agent.service
可以选择使用
nano /etc/systemd/system/nezha-agent.service
自行修改里面的配置内容。如果你跟博主一样也只是修改个api地址,可以使用如下命令将旧的服务地址进行替换:
sudo sed -i 's/abc\.abc\.com/cde.cde.com/g' /etc/systemd/system/nezha-agent.service
(假设你的旧api地址为abc.abc.com
,新的地址为cde.cde.com
,注意原地址在命令中要以\
转义.
号)重新加载并重启服务
sudo systemctl daemon-reload&&sudo systemctl enable nezha-agent.service&&sudo systemctl start nezha-agent.service
观察nezha dashboard是否成功接收nezha agent的连接。
Windows agent修改
windows中的nezha agent大部分也是注册成了系统中的服务运行,如下所示:

然后,具体的配置形式是记录在了注册表中,所以我们需要修改注册表。
使用如下步骤:
使用 管理员权限 打开
PowerShell
。修改之前,需要先停止当前nezha agent服务,使用
net stop nezha-agent
。使用
reg query "HKLM\SYSTEM\CurrentControlSet\Services\nezha-agent" /v ImagePath
命令,查询当前nezha agent的信息,并记录下来。比如:
POWERSHELL记下
C:\nezha\nezha-agent.exe -s abc.abc.com:443 -p WhP3TPnXZd484Eajv9 --tls
,然后根据需要修改需要的部分,比如博主将api地址修改为cde.cde.com
,即:C:\nezha\nezha-agent.exe -s cde.cde.com:443 -p WhP3TPnXZd484Eajv9 --tls
使用
reg add
替换注册表的目标项,reg add "HKLM\SYSTEM\CurrentControlSet\Services\nezha-agent" /v ImagePath /t REG_EXPAND_SZ /d "上一步记下的部分" /f
。比如:reg add "HKLM\SYSTEM\CurrentControlSet\Services\nezha-agent" /v ImagePath /t REG_EXPAND_SZ /d "C:\nezha\nezha-agent.exe -s cde.cde.com:443 -p WhP3TPnXZd484Eajv9 --tls" /f
重启服务,使用
net start nezha-agent
。观察nezha dashboard是否成功接收nezha agent的连接。
特别篇:修改Serv00的nezha agent(使用vfhky大佬的保活脚本)
喜欢折腾Serv00主机的朋友,并且使用 vfhky/serv00_ct8_nezha 大佬的保活脚本的,可以看这篇进行修改。
Serv00是基于FreeBSD系统,vfhky大佬的脚本事实上将nezha agent以nohup
方式进行运行。
我们可以通过ps aux | grep nezha
查看到该进程,然后配置是保存在/home/你的用户id/nezha_app/agent/nezha-agent.sh
中。
使用如下步骤进行配置的修改:
登录Serv00的ssh,先使用
ps aux | grep nezha
,找到进程的pid。比如:
BASH记下pid
27074
,然后使用kill 27074
,或kill -9 27074
杀掉该进程。然后再次使用ps aux | grep nezha
检查进程是否还存在。可以使用
nano ~/nezha_app/agent/nezha-agent.sh
直接修改里面的配置文件。如果你只是更改api地址,可以使用该命令进行替换:sed -i '' 's/abc\.abc\.com/cde.cde.com/g' ~/nezha_app/agent/nezha-agent.sh
(注意这里有-i ''
,跟前面的教程不太一样)替换完成后,等待保活进程自动唤起nezha agent即可(顺带也是测试了一下保活服务是否正常执行了hhh)。