最近新装了哪吒监控V1,想通过cloudflare来配置,在网上找到了一篇教程,很详细,一次就成功了,所以转发在自己博客上留存记录,以便后续重新安装及维护。
原文地址:https://www.uinsat.org/2737
安装 Dashboard
准备工作
哪吒监控面板 V1 安装教程官方文档地址:https://nezha.wiki/guide/dashboard.html
面板机搭建
安装好宝塔的小鸡一台,安装更新索引、升级所有包(自动确认)、安装几个软件包(自动确认)
apt update && apt upgrade -y && apt install wget curl sudo unzip git -y
安装宝塔
curl -sSL https://www.aapanel.com/script/install_6.0_en.sh -o install_6.0_en.sh && bash install_6.0_en.sh aapanel
安装docker
(如果这步没安装,后面执行宝塔安装脚本的时候也会自动安装)
curl -fsSL https://get.docker.com | bash -s docker
安装 Dashboard
在面板服务器中,运行以下安装脚本:
curl -L https://raw.githubusercontent.com/nezhahq/scripts/refs/heads/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
如果你的服务器位于中国大陆,可以使用镜像:
curl -L https://gitee.com/naibahq/scripts/raw/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
安装方式根据个人喜好选择,这里我选docker。接着在菜单选择选项1,安装面板端。
看到提示就安装好了👌
反向代理设置
在宝塔面板新创建一个反代项目信息如图
打开配置文件菜单,在最后面填上以下代码,然后点保存:(如果在安装哪吒监控时,你自定义了端口,把下面代码中的8008改为你自定义的端口)
# upstream 配置 upstream dashboard { keepalive 512; server 127.0.0.1:8008; }
然后点击上图中添加的反向代理目录中的配置文件,将里面的内容全选删除,并替换为以下代码,然后点保存:(如果在安装哪吒监控时,你自定义了端口,把下面代码中的8008改为你自定义的端口)
location ^~ / { proxy_pass http://127.0.0.1:8008; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header nz-realip $http_cf_connecting_ip; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; proxy_read_timeout 3600s; proxy_send_timeout 3600s; proxy_buffer_size 128k; proxy_buffers 4 128k; proxy_busy_buffers_size 256k; proxy_max_temp_file_size 0; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; proxy_ssl_server_name off; proxy_ssl_name $proxy_host; add_header Strict-Transport-Security "max-age=31536000"; } underscores_in_headers on; set_real_ip_from 0.0.0.0/0; # CDN 回源 IP 地址段 real_ip_header CF-Connecting-IP; # CDN 私有 header,此处为 CloudFlare 默认 # gRPC 服务 location ^~ /proto.NezhaService/ { grpc_set_header Host $host; grpc_set_header nz-realip $http_CF_Connecting_IP; grpc_read_timeout 600s; grpc_send_timeout 600s; grpc_socket_keepalive on; client_max_body_size 10m; grpc_buffer_size 4m; grpc_pass grpc://dashboard; } # WebSocket 服务 location ~* ^/api/v1/ws/(server|terminal|file)(.*)$ { proxy_set_header Host $host; proxy_set_header nz-realip $http_cf_connecting_ip; proxy_set_header Origin https://$host; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 3600s; proxy_send_timeout 3600s; proxy_pass http://127.0.0.1:8008; }
然后开启ssl。至此,所有配置完成,你可以直接访问 你的域名 来打开面板,进入后台点击服务器 —— 安装命令 —— Linux 复制 agent 命令开始添加你要受控小鸡了。
登录面板
登录到 Dashboard 配置界面
后台管理界面的路径为 http://dashboard.example.com/dashboard,后续操作可以自己探索下。
哪吒面板设置
到这里,你就能用域名访问你的面板了。先记得改密码,然后设置,因为面板和 agent 都开启了 CF CDN,我们需要在面板系统设置里面的真实 IP 请求头填写
CF-Connecting-IP
,后台的登录 IP 以及其它地方才能正常显示真实 IP。
添加服务监控
上海电信 sh.telecom.818198.xyz:80
上海移动 sh.mobile.818198.xyz:80
广东移动 gz.mobile.818198.xyz:80
广州电信 gz.telecom.818198.xyz:80
添加节点
直接在后台——服务器———安装命令选对应的机器。然后到节点机器上粘贴就行。
国内安装Agent
github raw资源加速 http://raw.githubusercontent.com换成http://raw.gitmirror.com GitHub文件加速 在源网址前加上https://hub.gitmirror.com/
curl -L https://hub.gitmirror.com/https://raw.githubusercontent.com/nezhahq/scripts/main/agent/install.sh -o agent.sh && chmod +x agent.sh && env NZ_SERVER=域名:443 NZ_TLS=true NZ_CLIENT_SECRET=[替换成你的token] ./agent.sh
中国大陆服务器客户端agent安装命令
curl -L https://gitee.com/naibahq/scripts/raw/main/agent/install.sh -o nezha.sh && chmod +x nezha.sh && env NZ_SERVER=domian.com:8008 NZ_TLS=false NZ_CLIENT_SECRET=[替换成你的token] ./nezha.sh
这里补充一个小机器,可以加入机器的到期时间和价格等,防止忘记续费。(官方教程:https://nezha.wiki/guide/servers.html)
{
"billingDataMod": {
"startDate": "2024-12-08T12:58:17.636Z",
"endDate": "2024-12-08T12:58:17.636Z",
"autoRenewal": "1",
"cycle": "Year",
"amount": "200EUR"
},
"planDataMod": {
"bandwidth": "30Mbps",
"trafficVol": "1TB/Month",
"trafficType": "2",
"IPv4": "1",
"IPv6": "1",
"networkRoute": "4837",
"extra": "Einstein"
}
}
配置字段说明
账单信息 billingDataMod:
startDate:账单起始日期(ISO 时间格式)。
endDate:账单结束日期(ISO 时间格式)。
autoRenewal:自动续费状态,1 表示启用。
cycle:账单周期(如 月、年)。
amount:账单金额及货币单位。
流量和网络配置 planDataMod:
bandwidth:服务器带宽信息。
trafficVol:流量配额及周期。
trafficType:流量类型,1 表示入站,2 表示双向。
IPv4 / IPv6:支持的 IPv4 或 IPv6 地址数量。
networkRoute:网络路由信息(如 AS4837)。
extra:额外备注字段,可用于填写其他信息。
关闭命令执行
如果是已完成部署的,修改配置文件/opt/nezha/agent/config-xxxxx.yml。也可通过nezha哪吒探针Agent端安装时默认就关闭Agent端的命令执行,具体如下:
常规部署命令
curl -L https://raw.githubusercontent.com/nezhahq/scripts/main/agent/install.sh -o agent.sh && chmod +x agent.sh && env NZ_SERVER=mjj.com:8008 NZ_TLS=false NZ_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxx ./agent.sh
加入env变量 NZ_DISABLE_COMMAND_EXECUTE=true
即可部署时自动关闭命令执行
curl -L https://raw.githubusercontent.com/nezhahq/scripts/main/agent/install.sh -o agent.sh && chmod +x agent.sh && env env NZ_DISABLE_COMMAND_EXECUTE=true NZ_SERVER=mjj.com:8008 NZ_TLS=false NZ_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxx ./agent.sh
如果你也像我一样用不到NAT,也可以同时关闭掉
curl -L https://raw.githubusercontent.com/nezhahq/scripts/main/agent/install.sh -o agent.sh && chmod +x agent.sh && env NZ_DISABLE_COMMAND_EXECUTE=true NZ_DISABLE_NAT=true NZ_SERVER=mjj.com:8008 NZ_TLS=false NZ_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxx ./agent.sh
老节点搬家
官方文档:https://nezha.wiki/guide/q5.html
停止面板服务
在旧服务器中运行一键脚本,选择 停止面板。进
bash nezha.sh
备份数据
打包旧服务器中的 /opt/nezha 文件夹,并将其复制到新服务器相同位置。
恢复数据
在新服务器中解压 /opt/nezha 文件夹至相同路径。
启动面板服务
在新服务器中运行一键脚本,选择 启动面板。
卸载哪吒
停止并卸载服务:
cd /opt/nezha/agent/ ./nezha-agent service uninstall
删除 Agent 文件夹:
rm -rf /opt/nezha/agent/
评论前必须登录!
注册