Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/content/ai.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@
curl -fsSL https://raw.githubusercontent.com/monitor-probe/monitor/main/install-hub.sh -o install-hub.sh
chmod +x install-hub.sh
sudo ./install-hub.sh --yes
装完从日志里取出一次性应急密码给我:
journalctl -u monitor-hub | grep Emergency
装完输出里「密码」那一行就是应急密码,原样给我。
只有首次安装才有这一行。输出是「升级完成」说明这台机器之前装过 hub,不要重置密码,告诉我即可。
确认服务在跑:systemctl status monitor-hub

### 第三步:配反向代理
Expand Down
19 changes: 17 additions & 2 deletions src/content/config/auth.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -39,13 +39,28 @@ Client Secret 只能写不能读:面板可以设置它,但读不回来,只

## 应急密码

首次启动时 hub 生成一个 24 字符的随机密码打印到日志,只打印这一次:
首次启动时 hub 生成一个 24 字符的随机密码。一键脚本装完直接显示在终端里;其余部署方式打印在 hub 的
标准输出,容器在容器日志里,自己写的 systemd 单元在 journal 里:

```bash
journalctl -u monitor-hub | grep Emergency # 二进制部署
docker logs monitor | grep Emergency # 容器部署
journalctl -u <单元名> | grep Emergency # 自己写的 systemd 单元
```

### 重置应急密码

忘了或没记下来就重置一个。旧密码立即失效,所有登录会话被登出,hub 不用重启。提示 `unknown argument`
说明版本太旧,先升级:

```bash
sudo ./install-hub.sh --reset-password # 一键脚本
docker exec monitor /monitor-hub --db /data/monitor.db --reset-password # 容器部署
monitor-hub --db <数据库路径> --reset-password # 手工部署
```

新密码只打印在执行这条命令的终端里。数据库文件必须已经存在,路径写错时直接报错,不会新建空库。
容器部署重置之后,`docker logs` 里那条首次启动的密码就作废了。

### 登录限流

同一来源地址 15 分钟内 5 次失败即锁死,成功登录清零。
Expand Down
6 changes: 6 additions & 0 deletions src/content/install/docker.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@ docker run -d --name monitor -p 127.0.0.1:28080:28080 \
docker logs monitor | grep Emergency
```

忘了就重置一个,提示 `unknown argument` 就先换新镜像。重置后日志里那条首次启动的密码作废,以这条命令的输出为准:

```bash
docker exec monitor /monitor-hub --db /data/monitor.db --reset-password
```

## compose

```yaml
Expand Down
6 changes: 4 additions & 2 deletions src/content/install/hub.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## 一键脚本

安装命令在[快速开始](/install/quick-start)。脚本核对 release 的 `sha256sums.txt` 之后才把二进制放进
`/opt/monitor`,建一个 `monitor` 系统用户,写一个加固过的 systemd 单元,最后打印三种反向代理的配法。
`/opt/monitor`,建一个 `monitor` 系统用户,写一个加固过的 systemd 单元,最后给出[反向代理](/install/reverse-proxy)文档的地址。

重跑一次就是升级:校验通过才替换,起不来自动回滚到上一版,没写的参数沿用上次的,
所以升级不会把端口和 `--site` 冲掉。
Expand All @@ -14,6 +14,7 @@
| `--site <url>` | 一般不用填,见下面「什么时候需要 `--site`」 |
| `--uninstall` | 卸载,数据保留在 `/opt/monitor/data` |
| `--purge` | 卸载并删除数据库 |
| `--reset-password` | 重置应急密码,登出所有会话 |
| `--yes` / `-y` | 跳过确认 |
| `--help` / `-h` | 用法 |

Expand All @@ -39,7 +40,7 @@
```bash
systemctl status monitor-hub
journalctl -u monitor-hub -f
journalctl -u monitor-hub | grep Emergency # 找回首次启动打印的应急密码
sudo ./install-hub.sh --reset-password # 忘了应急密码时重置
```

## 不用脚本
Expand All @@ -56,6 +57,7 @@ monitor-hub # 监听 [::]:28080,数据库 ./monitor.db
| `--db` | `monitor.db` | SQLite 路径 |
| `--site` | 空 | 对外地址,只有个别反代场景需要 |
| `--themes` | 数据库同级的 `themes/` | 外部主题目录 |
| `--reset-password` | | 重置应急密码并打印出来,然后退出。数据库必须已存在 |

Linux 上一个 v6 socket 通过 v4-mapped 地址同时收两族,双栈机器不用配任何东西;内核禁用了 IPv6 或者
`bindv6only=1` 时自动退回 `0.0.0.0:28080`。
Expand Down
9 changes: 5 additions & 4 deletions src/content/install/quick-start.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ chmod +x install-hub.sh
sudo ./install-hub.sh
```

有终端时脚本给出一个菜单(安装 / 升级、卸载、状态、日志);`curl ... | sh` 读不到回答,直接按默认值安装。
有终端时脚本给出一个菜单(安装 / 升级、卸载、状态、日志、重置密码);`curl ... | sh` 读不到回答,直接按默认值安装。
参数与目录结构见[安装 hub](/install/hub)。

### 方式 2:Docker
Expand All @@ -24,11 +24,12 @@ docker run -d --name monitor -p 127.0.0.1:28080:28080 \

### 取应急密码

装完打印一次性的应急密码,记下来。事后也能找回:
一键脚本装完直接显示应急密码,Docker 的在 `docker logs monitor | grep Emergency` 里,记下来。
忘了就重置一个:

```bash
journalctl -u monitor-hub | grep Emergency # 一键脚本
docker logs monitor | grep Emergency # Docker
sudo ./install-hub.sh --reset-password # 一键脚本
docker exec monitor /monitor-hub --db /data/monitor.db --reset-password # Docker
```

<Note warn>
Expand Down
7 changes: 4 additions & 3 deletions src/content/reference/faq.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,12 @@
## 应急密码丢了

```bash
journalctl -u monitor-hub | grep Emergency # 二进制部署
docker logs monitor | grep Emergency # 容器部署
sudo ./install-hub.sh --reset-password # 一键脚本
docker exec monitor /monitor-hub --db /data/monitor.db --reset-password # 容器部署
```

它只在首次启动时打印一次,但日志里一直在。
生成一个新密码,旧的立即失效,已登录的会话全部登出。提示 `unknown argument`
的,一键脚本先重跑安装器升级,容器先换新镜像。

## 节点一直不上线

Expand Down
2 changes: 1 addition & 1 deletion src/nav.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export const nav: Section[] = [
{
title: "配置",
items: [
{ path: "/config/auth", label: "登录与安全", desc: "应急密码与 GitHub 单点登录的配置,以及登录不通时的排查路径。", keywords: "github oauth sso 登录 密码 应急 白名单 callback" },
{ path: "/config/auth", label: "登录与安全", desc: "应急密码与 GitHub 单点登录的配置,以及登录不通时的排查路径。", keywords: "github oauth sso 登录 密码 应急 重置 白名单 callback" },
{ path: "/config/notify", label: "通知", desc: "Telegram 与 Webhook 推送掉线、流量、到期和登录,以及常见服务的请求体写法。", keywords: "通知 告警 telegram tg bot webhook discord slack 钉钉 企业微信 飞书 bark ntfy gotify 离线 掉线 到期" },
{ path: "/config/traffic", label: "流量统计", desc: "三个流量数字的算法、周期与配额口径,以及和商家对不上的原因。", keywords: "流量 traffic 重置日 月流量 计费 sum max 上行 下行 配额" },
],
Expand Down