一、域名解析
面板域名以nezha.tongzx.cn为例
1、Cloudflare中添加A记录nezha.tongzx.cn指向Dashboard 服务器 IP,开启小黄云。
2、tongx.cn域名设置页面——网络,选择开启WebSockets 和 gRPC
3、SSL/TLS模式选择完全/完全(严格)
二、哪吒面板搭建
在面板服务器中,运行以下安装脚本:
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 安装为例,安装过程按提示输入以下信息:
请输入站点标题: 自定义你的站点标题(自行设置)。
请输入暴露端口: 公开访问端口(可直接默认 8008,回车就行)。(如果不需要ip+端口直接访问,端口开不开无所谓)
请指定安装命令中预设的 nezha-agent 连接地址:Agent对接地址【域名/IP:端口】:nezha.tongzx.cn:443
是否希望通过 TLS 连接 agent : Agent 通信使用 TLS 连接:y
请指定后台语言: 选择语言偏好。
安装完后,可以先用你的 ip:8008 就能访问了。如果没问题,我就进行下一步
三、反代设置
1、创建一个网站(添加PHP站点,纯静态)
2、打开配置文件菜单,在最下方添加以下代码,然后点保存:(如果在安装哪吒监控时,你自定义了端口,把下面代码中的8008改为你自定义的端口)
注意:如果这段代码加不上去,可以再改成dashbord_v2,应该就OK了,这样访问的时候,只能nezha.yongzx.cn/dashboard/login,直接访问https://nezha.a.com/dashboard可能会报错。
# upstream 配置
upstream dashboard {
keepalive 512;
server 127.0.0.1:8008;
}3、打开反向代理 —— 添加反向代理,127.0.0.1:8008,保存。
4、 然后点击上图中添加的反向代理目录中的配置文件,将里面的内容全选删除,并替换为第二段代码,然后点保存:(如果在安装哪吒监控时,你自定义了端口,把下面代码中的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;
}5、然后申请证书,HTTPS访问。
注意:证书一定申请,不申请可能会出现报错或者服务器不上线等问题。
四、哪吒面板设置
基本设置
1、登录到 Dashboard 配置界面https://nezha.a.com/dashboard, 初始用户名、密码均为admin,登录后立即进入管理页面点击头像 ——> 个人信息 ——> 更新个人资料修改用户名和密码。
2、点击头像 ——> 系统设置,填写站点名称、设置语言,Agent对接地址【域名/IP:端口】填写nezha.tongzx.cn:443,勾选Agent 使用 TLS 连接,点击确认即可。
关于被控端网页SSH
禁用:
sed -i 's/disable_command_execute: false/disable_command_execute: true/' /opt/nezha/agent/config.yml && systemctl restart nezha-agent
开启:
sed -i 's/disable_command_execute: true/disable_command_execute: false/' /opt/nezha/agent/config.yml && systemctl restart nezha-agent添加 telegram 通知
通知页面点击“+”,创建通知,名称自定,URL填写
https://api.telegram.org/bot<token>/sendMessage?chat_id=<用户ID>&text= #NEZHA #1、将你的机器人 和 <用户ID> 替换为实际值
2、分组——通知,页面点击“+”,编辑通知分组,名称自定,通知勾选提前创建的 telegram 通知,确认即可。
卸载
1、面板端
curl -L https://raw.githubusercontent.com/nezhahq/scripts/refs/heads/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh2、监控端
./agent.sh uninstall
rm -rf /opt/nezha/agent/
五、哪吒面板修改密码后网页显示错误信息处理方法:
1、在你当前这个报错的页面上,按下键盘上的 F12(或者鼠标右键点击「检查」)打开开发者工具。
2、在开发者工具顶部的菜单栏里,找到 「应用程序」(英文版叫 Application,如果是火狐浏览器叫 存储 / Storage)。
3、在左侧菜单里找到:
Cookie -> 点击下面的 https://vps.atm1.pp.ua -> 在右侧看有没有内容,直接右键全部删除(Clear)。
本地存储空间 / Local Storage -> 点击你的域名 -> 把右侧弹出的所有 Token 键值对全部右键清空(Clear)。
4、清空完成后,直接关闭整个浏览器窗口。
5、去服务器终端执行以下命令:
nginx -s reload
systemctl restart nginx6、重新打开一个全新的、绝对干净的无痕/隐私窗口打开网站。