parent
54ff2467eb
commit
0b492ad7a5
@ -173,6 +173,7 @@ function getGuideSidebarZhCN() {
|
|||||||
{ text: '服务', link: '/guide/services.html' },
|
{ text: '服务', link: '/guide/services.html' },
|
||||||
{ text: '任务', link: '/guide/tasks.html' },
|
{ text: '任务', link: '/guide/tasks.html' },
|
||||||
{ text: '告警', link: '/guide/notifications.html' },
|
{ text: '告警', link: '/guide/notifications.html' },
|
||||||
|
{ text: 'DDNS', link: '/guide/ddns.html' },
|
||||||
{ text: '内网穿透', link: '/guide/nat.html' },
|
{ text: '内网穿透', link: '/guide/nat.html' },
|
||||||
{ text: '设置', link: '/guide/settings.html' },
|
{ text: '设置', link: '/guide/settings.html' },
|
||||||
{ text: 'API', link: '/guide/api.html' }
|
{ text: 'API', link: '/guide/api.html' }
|
||||||
@ -250,6 +251,7 @@ function getGuideSidebarEnUS() {
|
|||||||
{ text: 'Services', link: '/en_US/guide/services.html' },
|
{ text: 'Services', link: '/en_US/guide/services.html' },
|
||||||
{ text: 'Tasks', link: '/en_US/guide/tasks.html' },
|
{ text: 'Tasks', link: '/en_US/guide/tasks.html' },
|
||||||
{ text: 'Notifications', link: '/en_US/guide/notifications.html' },
|
{ text: 'Notifications', link: '/en_US/guide/notifications.html' },
|
||||||
|
{ text: 'DDNS', link: '/en_US/guide/ddns.html' },
|
||||||
{ text: 'NAT traversal', link: '/en_US/guide/nat.html' },
|
{ text: 'NAT traversal', link: '/en_US/guide/nat.html' },
|
||||||
{ text: 'Settings', link: '/en_US/guide/settings.html' },
|
{ text: 'Settings', link: '/en_US/guide/settings.html' },
|
||||||
{ text: 'API', link: '/en_US/guide/api.html' }
|
{ text: 'API', link: '/en_US/guide/api.html' }
|
||||||
|
77
docs/en_US/guide/ddns.md
Normal file
77
docs/en_US/guide/ddns.md
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
---
|
||||||
|
outline: deep
|
||||||
|
---
|
||||||
|
|
||||||
|
# DDNS
|
||||||
|
|
||||||
|
The DDNS functionality is designed for servers with dynamic IP addresses. When the Agent server reports a new IP (every 10 minutes), Dashboard will automatically update the DNS record based on the configuration.
|
||||||
|
|
||||||
|
### Why should I use Nezha's DDNS functionality?
|
||||||
|
|
||||||
|
- Convenient centralized management of DDNS settings, instead of deploying a DDNS service on every server.
|
||||||
|
- Your confidential information is only stored on the Dashboard server, preventing leaks.
|
||||||
|
|
||||||
|
### Configuration
|
||||||
|
|
||||||
|
You can directly add DDNS configurations in the Dashboard management page.
|
||||||
|
|
||||||
|
1. Click on the "Dynamic DNS" option in the menu bar to enter the configuration page.
|
||||||
|
2. Click the "New Profile" button and fill in the required information in the pop-up window. Option details:
|
||||||
|
- **Name**: The name of the configuration.
|
||||||
|
- **DDNS Provider**: The type of provider, determining the method used to update DNS records.
|
||||||
|
- **Domains (separate with comma)**: The domain(s), if you enter multiple domains, they should be separated by commas. IDNs (Internationalized Domain Names) are supported.
|
||||||
|
- **Maximum retry attempts**: The number of attempts for updating DDNS, default is 3, and the range is between 1 and 10.
|
||||||
|
- **DDNS Credential 1** and **DDNS Credential 2** are optional. Typically, at least one needs to be provided. The [table](#provider-list) below lists the options for all providers.
|
||||||
|
3. If using the `webhook` provider, the corresponding options need to be filled out as required. For detailed instructions, see [Webhook Configuration](#webhook-configuration).
|
||||||
|
4. You need to check at least one of **IPv4 Enabled** and **IPv6 Enabled**; otherwise, no update operations will be performed.
|
||||||
|
5. After adding a new configuration, you also need to modify the server settings to activate DDNS. Server-related options include:
|
||||||
|
- **Enable DDNS**: Enable DDNS functionality for this server.
|
||||||
|
- **DDNS Profiles**: The list of DDNS configuration IDs to use, searchable by configuration name.
|
||||||
|
|
||||||
|
## Webhook Configuration
|
||||||
|
|
||||||
|
Webhook requires manually constructing HTTP requests, suitable for using other provider services when operations are simple.
|
||||||
|
|
||||||
|
Webhook option descriptions:
|
||||||
|
- **Webhook URL**: The URL for the HTTP request, where parameters can use placeholders.
|
||||||
|
- **Webhook Request Method**: The HTTP request method. Supported methods include `GET`, `POST`, `PATCH`, `DELETE`, and `PUT`.
|
||||||
|
- **Webhook Request Type**: The format of the HTTP request body, either `JSON` or `Form`.
|
||||||
|
- **Webhook Request Headers**: HTTP request headers, filled in JSON format, but nesting is not supported.
|
||||||
|
- **Webhook Request Body**: The HTTP request body. It won't be used for `GET` and `DELETE`. If you need to use a nested format, you must choose `JSON` as the request type.
|
||||||
|
|
||||||
|
Supported Webhook placeholders:
|
||||||
|
- `#ip#`: Host IP.
|
||||||
|
- `#domain#`: DDNS domain. Each request is made separately for each domain, so this value will be a single domain string.
|
||||||
|
- `#type#`: IP type, either `"ipv4"` or `"ipv6"`.
|
||||||
|
- `#record#`: Record type, either `"A"` or `"AAAA"`.
|
||||||
|
- `#access_id#`: DDNS Credential 1.
|
||||||
|
- `#access_secret#`: DDNS Credential 2.
|
||||||
|
|
||||||
|
### Oray Webhook Example
|
||||||
|
<details>
|
||||||
|
<summary>Click to expand/collapse</summary>
|
||||||
|
|
||||||
|
- URL:`http://ddns.oray.com/ph/update?hostname=#domain#&myip=#ip#`
|
||||||
|
- Request Method: `GET`
|
||||||
|
- Request Header:`{"Authorization": "Basic pass"}`, replace `pass` with the Base64-encoded userpass (e.g., `user:pass` becomes `dXNlcjpwYXNzCg==`).
|
||||||
|
- Oray only supports A records, so only enable IPv4. Other Webhook options are not required.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
## Provider List
|
||||||
|
|
||||||
|
| Provider | Credential 1 (ID) | Credential 2 (Secret) |
|
||||||
|
| ------------ | ----------- | --------------- |
|
||||||
|
| `dummy` | ❌️ | ❌️ |
|
||||||
|
| `webhook` | Optional | Optional |
|
||||||
|
| `cloudflare` | ❌️ | ✅ |
|
||||||
|
| `tencentcloud`| ✅ | ✅ |
|
||||||
|
|
||||||
|
## Viewing Logs
|
||||||
|
|
||||||
|
In the Dashboard logs, you can see the relevant logs for the DDNS functionality. When configured correctly, there will be corresponding log entries when updating DNS records.
|
||||||
|
|
||||||
|
```shell
|
||||||
|
dashboard_1 | 2024/03/16 23:16:25 NEZHA>> 正在尝试更新域名(ddns.example.com)DDNS(1/3)
|
||||||
|
dashboard_1 | 2024/03/16 23:16:28 NEZHA>> 尝试更新域名(ddns.example.com)DDNS成功
|
||||||
|
```
|
@ -31,7 +31,9 @@ The forced update will not work if `disable-force-update` is enabled.
|
|||||||
* Enable DDNS: When true, if the server IP changes, the Dashboard will automatically update the DNS records.
|
* Enable DDNS: When true, if the server IP changes, the Dashboard will automatically update the DNS records.
|
||||||
* DDNS Domain: The DDNS domain configured for this server.
|
* DDNS Domain: The DDNS domain configured for this server.
|
||||||
* Secret: The secret/key used for configuring the Agent, which is used to verify communication between the Agent and the Dashboard.
|
* Secret: The secret/key used for configuring the Agent, which is used to verify communication between the Agent and the Dashboard.
|
||||||
* One-Click Install: Click the corresponding system button to copy the command and execute it on the server for a one-click installation.
|
* Note: Server notes, visible only after verification.
|
||||||
|
* Public Note: Server public notes, visible on the frontend. You can customize frontend theme based on this field; see [Public Note Example](#public-note-example) for details.
|
||||||
|
* Installation commands: Click the corresponding system button to copy the command and execute it on the server for an instant installation.
|
||||||
* Management: Connects to WebShell, modifies server configuration, or deletes the server.
|
* Management: Connects to WebShell, modifies server configuration, or deletes the server.
|
||||||
|
|
||||||
## WebSSH Terminal
|
## WebSSH Terminal
|
||||||
@ -44,114 +46,11 @@ If the connection fails, refer to [Real-Time Channel Disconnection/Online Termin
|
|||||||
|
|
||||||
Added in Dashboard v0.19.1 / Agent v0.19.0. A pseudo file manager embedded in WebShell, supports file download/upload, directory navigation and copying current path. Access it by clicking the blue button in the bottom-right corner of the WebShell.
|
Added in Dashboard v0.19.1 / Agent v0.19.0. A pseudo file manager embedded in WebShell, supports file download/upload, directory navigation and copying current path. Access it by clicking the blue button in the bottom-right corner of the WebShell.
|
||||||
|
|
||||||
## DDNS Functionality
|
## Public Note Example
|
||||||
|
|
||||||
The DDNS functionality is suitable for servers with dynamic IPs. When the Agent reports a new IP (every 10 minutes), the Dashboard will automatically update the DNS records based on the configuration.
|
### ServerStatus Theme Agent Billing Information Display
|
||||||
|
<details>
|
||||||
|
<summary>Click to expand/collapse</summary>
|
||||||
|
|
||||||
### Why Use Nezha Monitoring's DDNS Functionality?
|
See https://github.com/naiba/nezha/pull/425.
|
||||||
|
</details>
|
||||||
- Centralized management of DDNS settings instead of deploying a DDNS service on each server.
|
|
||||||
- Confidential information is only stored on the Dashboard server, preventing leakage.
|
|
||||||
|
|
||||||
### Configuration Instructions
|
|
||||||
|
|
||||||
You can choose to use profiles or not; If no profile is set, all Agent servers will use the same configuration to update DDNS. If profiles are used, each server can have a specific configuration for updating DDNS, providing greater flexibility.
|
|
||||||
|
|
||||||
#### Without Profiles
|
|
||||||
::: warning
|
|
||||||
This configuration is deprecated and will be removed in a future release. Please switch to using profiles instead.
|
|
||||||
:::
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
DDNS:
|
|
||||||
Enable: true
|
|
||||||
Provider: "webhook"
|
|
||||||
AccessID: ""
|
|
||||||
AccessSecret: ""
|
|
||||||
WebhookMethod: ""
|
|
||||||
WebhookURL: ""
|
|
||||||
WebhookRequestBody: ""
|
|
||||||
WebhookHeaders: ""
|
|
||||||
MaxRetries: 3
|
|
||||||
Profiles: null
|
|
||||||
```
|
|
||||||
|
|
||||||
- `Enable`: Boolean value to enable or disable the DDNS functionality.
|
|
||||||
- `Provider`: The name of the DDNS provider; currently supports `webhook`, `cloudflare`, and `tencentcloud`.
|
|
||||||
- `AccessID`: Token ID for the DDNS provider; only applicable to the `tencentcloud` provider.
|
|
||||||
- `AccessSecret`: Token Secret for the DDNS provider; only applicable to the `cloudflare` and `tencentcloud` providers.
|
|
||||||
- `WebhookMethod`: The request method for the webhook, such as `GET` or `POST`; only applicable to the `webhook` provider.
|
|
||||||
- `WebhookURL`: The request URL for the webhook; only applicable to the `webhook` provider.
|
|
||||||
- `WebhookRequestBody`: The request body for the webhook; only applicable to the `webhook` provider.
|
|
||||||
- `WebhookHeaders`: The request headers for the webhook; only applicable to the `webhook` provider.
|
|
||||||
- `MaxRetries`: The number of retry attempts when a request fails.
|
|
||||||
- `Profiles`: Multi-configuration settings; ignored in single configuration settings.
|
|
||||||
|
|
||||||
The `WebhookURL`, `WebhookRequestBody`, and `WebhookHeaders` can include the following placeholders:
|
|
||||||
|
|
||||||
- `{ip}`: The current IP of the server.
|
|
||||||
- `{domain}`: The DDNS domain. If used with `WebhookURL`, only query values will be replaced.
|
|
||||||
- `{type}`: The IP type, either "ipv4" or "ipv6".
|
|
||||||
- `{access_id}`: Credential 1.
|
|
||||||
- `{access_secret}`: Credential 2.
|
|
||||||
|
|
||||||
Example Configuration:
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
WebhookHeaders: |
|
|
||||||
a:{access_id}
|
|
||||||
b:{access_secret}
|
|
||||||
WebhookRequestBody: '{"domain": "{domain}", "ip": "{ip}", "type": "{type}"}'
|
|
||||||
```
|
|
||||||
|
|
||||||
#### With Profiles
|
|
||||||
|
|
||||||
When using profiles, leave the `DDNS.Provider` value empty. If `DDNS.Provider` is not empty, this configuration will be ignored.
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
DDNS:
|
|
||||||
Enable: true
|
|
||||||
MaxRetries: 3
|
|
||||||
Profiles:
|
|
||||||
example:
|
|
||||||
Provider: ""
|
|
||||||
AccessID: ""
|
|
||||||
AccessSecret: ""
|
|
||||||
WebhookMethod: ""
|
|
||||||
WebhookURL: ""
|
|
||||||
WebhookRequestBody: ""
|
|
||||||
WebhookHeaders: ""
|
|
||||||
```
|
|
||||||
|
|
||||||
- `Profiles`: Profile field.
|
|
||||||
- `example`: Can be replaced with any string as the DDNS configuration name.
|
|
||||||
|
|
||||||
Other options can be referenced from the [Without Profiles](#Without-Profiles) section.
|
|
||||||
|
|
||||||
#### Dashboard Configuration
|
|
||||||
|
|
||||||
After modifying the configuration file, you also need to modify the server settings in the Dashboard for the DDNS to take effect.
|
|
||||||
|
|
||||||
DDNS related options:
|
|
||||||
|
|
||||||
- `Enable DDNS`: Enable the DDNS functionality for this server.
|
|
||||||
- `Enable DDNS IPv4`: Enable IPv4 resolution when updating DDNS records.
|
|
||||||
- `Enable DDNS IPv6`: Enable IPv6 resolution when updating DDNS records.
|
|
||||||
- `DDNS Domain`: The domain the record points to.
|
|
||||||
- `DDNS Configuration`: The DDNS configuration name to use in multiple configurations.
|
|
||||||
|
|
||||||
::: warning
|
|
||||||
When you modify the configuration and save it in the Dashboard settings, it will populate the default configuration options in `config.yaml`, and all options in the DDNS field will be set with a default value (see [Without Profiles](#Without-Profiles)).
|
|
||||||
|
|
||||||
- If not using profiles, configure `DDNS.Provider` and ignore the `Profiles` options.
|
|
||||||
- To use profiles, leave `DDNS.Provider` empty. If `DDNS.Provider` is not empty, the `Profiles` field will be ignored.
|
|
||||||
:::
|
|
||||||
|
|
||||||
#### Viewing Logs
|
|
||||||
|
|
||||||
In the Dashboard logs, you can see the relevant logs for the DDNS functionality. When configured correctly, there will be corresponding log entries when updating DNS records.
|
|
||||||
|
|
||||||
```shell
|
|
||||||
dashboard_1 | 2024/03/16 23:16:25 NEZHA>> 正在尝试更新域名(ddns.example.com)DDNS(1/3) # Attempting to update domain (ddns.example.com) DDNS (1/3)
|
|
||||||
dashboard_1 | 2024/03/16 23:16:28 NEZHA>> 尝试更新域名(ddns.example.com)DDNS成功 # Successfully updated domain (ddns.example.com) DDNS
|
|
||||||
```
|
|
@ -15,8 +15,11 @@ You can customize the site title in this section.
|
|||||||
|
|
||||||
## Theme
|
## Theme
|
||||||
|
|
||||||
Select the theme for the homepage and admin panel here. If a theme that already exists is not in the options, update the Dashboard.
|
Select the theme for the frontend and dashboard here. If a theme that already exists is not in the options, update the Dashboard.
|
||||||
Before enabling the Custom theme, ensure you have installed the custom theme; otherwise, the Dashboard will not display correctly after enabling this option.
|
|
||||||
|
To use a custom frontend theme, you need to create a theme description file. For more information on custom themes, please refer to [Nezha Theme Development Environment](/en_US/developer/theme.html).
|
||||||
|
|
||||||
|
Before enabling the dashboard Custom theme, ensure you have installed the custom theme; otherwise, the Dashboard will not display correctly after enabling this option.
|
||||||
|
|
||||||
## Language
|
## Language
|
||||||
|
|
||||||
|
77
docs/guide/ddns.md
Normal file
77
docs/guide/ddns.md
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
---
|
||||||
|
outline: deep
|
||||||
|
---
|
||||||
|
|
||||||
|
# DDNS
|
||||||
|
|
||||||
|
DDNS 功能适用于使用动态 IP 的服务器,当 Agent 上报了一个新的 IP(10分钟一次),Dashboard 会根据配置自动更新 DNS 记录。
|
||||||
|
|
||||||
|
## 为什么我要使用哪吒监控的 DDNS 功能?
|
||||||
|
|
||||||
|
- 方便集中管理 DDNS 设置,而不是在每台服务器上都部署一个 DDNS 服务。
|
||||||
|
- 仅在面板服务器上保存您的机密信息,防止外泄。
|
||||||
|
|
||||||
|
## 配置说明
|
||||||
|
|
||||||
|
可以直接在 Dashboard 管理页面中添加 DDNS 配置。
|
||||||
|
|
||||||
|
1. 点击菜单栏中的“动态 DNS”选项,进入配置页面。
|
||||||
|
2. 点击“新配置”按钮,在弹出窗口中按需填写信息。选项说明:
|
||||||
|
- **名称**:配置名称。
|
||||||
|
- **DDNS供应商**:供应商类型,决定了使用何种方法更新 DNS 记录。
|
||||||
|
- **域名(逗号分隔)**:域名,如填写多个域名需要用 `,` 分隔。支持 IDN(国际化域名)。
|
||||||
|
- **最大重试次数**:DDNS 更新尝试次数,默认为 3,范围为 1 到 10 的整数。
|
||||||
|
- **DDNS 凭据 1** 以及 **DDNS 凭据 2** 为选填,通常需要至少填 1 个。下面的[表格](#供应商列表)列出了所有供应商的对应选项。
|
||||||
|
3. 如果使用 `webhook` 供应商,那么需要按需填写 Webhook 的对应选项。具体的说明请见 [Webhook 配置说明](#webhook-配置说明)。
|
||||||
|
4. 需要至少勾选 **启用DDNS IPv4** 和 **启用DDNS IPv6** 中的一个,否则不会进行任何更新操作。
|
||||||
|
5. 在添加了新的配置后,还需要修改服务器配置才能使 DDNS 生效。服务器相关选项说明:
|
||||||
|
- **启用 DDNS**:为此服务器启用 DDNS 功能。
|
||||||
|
- **DDNS 配置**:要使用的 DDNS 配置 ID 列表,可以根据配置名称进行搜索。
|
||||||
|
|
||||||
|
## Webhook 配置说明
|
||||||
|
|
||||||
|
Webhook 需要自行构建 HTTP 请求,适用于需要使用其它供应商的服务且操作较为简单的情况。
|
||||||
|
|
||||||
|
Webhook 相关选项说明:
|
||||||
|
- **Webhook 地址**:HTTP 请求 URL。其中只有参数可以使用占位符。
|
||||||
|
- **Webhook 请求方式**:HTTP 请求方式。支持 `GET`、`POST`、`PATCH`、`DELETE` 以及 `PUT`。
|
||||||
|
- **Webhook 请求类型**:HTTP 请求体格式,为 `JSON` 或者 `Form`。
|
||||||
|
- **Webhook 请求头**:HTTP 请求头,用 JSON 填写,注意不支持嵌套。
|
||||||
|
- **Webhook 请求体**:HTTP 请求体,`GET` 和 `DELETE` 不会使用。如需使用嵌套格式,必须选择 `JSON` 作为请求类型。
|
||||||
|
|
||||||
|
Webhook 支持的占位符:
|
||||||
|
- `#ip#`:主机 IP。
|
||||||
|
- `#domain#`:DDNS 域名。每个域名的请求是分别进行的,所以此项的值只会是单个域名字符串。
|
||||||
|
- `#type#`:IP 类型,值为 `"ipv4"` 或 `"ipv6"`。
|
||||||
|
- `#record#`:记录类型,值为 `"A"` 或 `"AAAA"`。
|
||||||
|
- `#access_id#`:DDNS 凭据 1。
|
||||||
|
- `#access_secret#`:DDNS 凭据 2。
|
||||||
|
|
||||||
|
### 花生壳 Webhook 示例
|
||||||
|
<details>
|
||||||
|
<summary>点击展开/收起</summary>
|
||||||
|
|
||||||
|
- URL:`http://ddns.oray.com/ph/update?hostname=#domain#&myip=#ip#`
|
||||||
|
- 请求方式: `GET`
|
||||||
|
- 请求头:`{"Authorization": "Basic pass"}`,把 `pass` 替换成你的用户名:密码的 Base64 编码(例如,`user:pass` 为 `dXNlcjpwYXNzCg==`)。
|
||||||
|
- 花生壳只支持 A 记录,所以只勾选启用 IPv4。其它 Webhook 选项不需要填。
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
## 供应商列表
|
||||||
|
|
||||||
|
| 供应商 | 凭据1(ID) | 凭据2(Secret) |
|
||||||
|
| ------------ | ----------- | --------------- |
|
||||||
|
| `dummy` | ❌️ | ❌️ |
|
||||||
|
| `webhook` | 可选 | 可选 |
|
||||||
|
| `cloudflare` | ❌️ | ✅ |
|
||||||
|
| `tencentcloud`| ✅ | ✅ |
|
||||||
|
|
||||||
|
## 查看日志
|
||||||
|
|
||||||
|
在 Dashboard 的日志中,可以看到 DDNS 功能的相关日志,配置正确时,更新 DNS 记录时会有相应的日志记录。
|
||||||
|
|
||||||
|
```shell
|
||||||
|
dashboard_1 | 2024/03/16 23:16:25 NEZHA>> 正在尝试更新域名(ddns.example.com)DDNS(1/3)
|
||||||
|
dashboard_1 | 2024/03/16 23:16:28 NEZHA>> 尝试更新域名(ddns.example.com)DDNS成功
|
||||||
|
```
|
@ -32,6 +32,8 @@ Agent 更新相关的参数是 [自定义 Agent 监控项目](/guide/q7.html)
|
|||||||
* DDNS 域名:为该服务器配置的 DDNS 域名。
|
* DDNS 域名:为该服务器配置的 DDNS 域名。
|
||||||
* 密钥:即 secret/key,配置 Agent 时会用到,用于验证 Agent 与 Dashboard 的通信。
|
* 密钥:即 secret/key,配置 Agent 时会用到,用于验证 Agent 与 Dashboard 的通信。
|
||||||
* 一键安装:点击相应的系统按钮,复制命令到服务器执行即可一键安装。
|
* 一键安装:点击相应的系统按钮,复制命令到服务器执行即可一键安装。
|
||||||
|
* 备注:服务器备注,仅验证后可见。
|
||||||
|
* 公开备注:服务器公开备注,前台可见。可以根据此字段做一些自定义,具体见[公开备注示例](#公开备注示例)。
|
||||||
* 管理:分别为连接 WebShell,修改服务器配置,删除服务器。
|
* 管理:分别为连接 WebShell,修改服务器配置,删除服务器。
|
||||||
|
|
||||||
## 在线终端
|
## 在线终端
|
||||||
@ -44,114 +46,85 @@ Linux 和 Windows 均可用,可使用 Ctrl+Shift+V 粘贴。
|
|||||||
|
|
||||||
Dashboard v0.19.1 / Agent v0.19.0 加入的新功能,是嵌入 WebShell 的一个伪文件管理器,提供文件下载和上传功能,也可以进行目录跳转或者复制路径。点击 WebShell 右下角的蓝色按钮就可以打开。
|
Dashboard v0.19.1 / Agent v0.19.0 加入的新功能,是嵌入 WebShell 的一个伪文件管理器,提供文件下载和上传功能,也可以进行目录跳转或者复制路径。点击 WebShell 右下角的蓝色按钮就可以打开。
|
||||||
|
|
||||||
## DDNS 功能
|
## 公开备注示例
|
||||||
|
|
||||||
DDNS 功能适用于使用动态 IP 的服务器,当 Agent 上报了一个新的 IP(10分钟一次),Dashboard 会根据配置自动更新 DNS 记录。
|
### ServerStatus主题agent账单信息展示
|
||||||
|
<details>
|
||||||
|
<summary>点击展开/收起</summary>
|
||||||
|
|
||||||
### 为什么我要使用哪吒监控的 DDNS 功能?
|
<strong>配置位置:后台-> 服务器 -> 编辑服务器 -> 公开备注</strong>
|
||||||
|
|
||||||
- 方便集中管理 DDNS 设置,而不是在每台服务器上都部署一个 DDNS 服务。
|
<strong>完整配置,包含过期时间和价格展示</strong>
|
||||||
- 仅在面板服务器上保存您的机密信息,防止外泄。
|
```json
|
||||||
|
{
|
||||||
### 配置说明
|
"billingDataMod": {
|
||||||
|
"startDate": "2024-10-01T00:00:00+08:00",
|
||||||
目前 DDNS 功能支持两种形式的配置:**单配置** 和 **多配置**。如使用 **单配置**,则所有 Agent 服务器都使用相同的信息更新 DDNS;如使用 **多配置**,则可为每台服务器指定一个配置更新 DDNS,灵活性更强。
|
"endDate": "2024-11-01T00:00:00+08:00",
|
||||||
|
"autoRenewal": "1",
|
||||||
#### 单配置
|
"cycle": "月",
|
||||||
::: warning
|
"amount": "$3.99"
|
||||||
此功能已废弃,并将在之后的版本中删除,请尽快迁移至 **多配置** 方式。
|
}
|
||||||
:::
|
}
|
||||||
|
|
||||||
```yaml
|
|
||||||
DDNS:
|
|
||||||
Enable: true
|
|
||||||
Provider: "webhook"
|
|
||||||
AccessID: ""
|
|
||||||
AccessSecret: ""
|
|
||||||
WebhookMethod: ""
|
|
||||||
WebhookURL: ""
|
|
||||||
WebhookRequestBody: ""
|
|
||||||
WebhookHeaders: ""
|
|
||||||
MaxRetries: 3
|
|
||||||
Profiles: null
|
|
||||||
```
|
```
|
||||||
|
|
||||||
- `Enable`:布尔值,选择是否开启 DDNS 功能。
|
<strong>单独配置过期时间</strong>
|
||||||
- `Provider`:DDNS 供应商的名称;目前支持 `webhook`、`cloudflare` 以及 `tencentcloud`。
|
```json
|
||||||
- `AccessID`:DDNS 供应商的令牌 ID;仅适用于供应商 `tencentcloud`。
|
{
|
||||||
- `AccessSecret`:DDNS 供应商的令牌 Secret;仅适用于供应商 `cloudflare` 及 `tencentcloud`。
|
"billingDataMod": {
|
||||||
- `WebhookMethod`:Webhook 的请求方法。例如 `GET`、`POST` 等;仅适用于供应商 `webhook`。
|
"startDate": "2024-10-01T00:00:00+08:00",
|
||||||
- `WebhookURL`:Webhook 的请求地址;仅适用于供应商 `webhook`。
|
"endDate": "2024-11-01T00:00:00+08:00",
|
||||||
- `WebhookRequestBody`:Webhook 的请求体;仅适用于供应商 `webhook`。
|
"autoRenewal": "1",
|
||||||
- `WebhookHeaders`:Webhook 的请求头;仅适用于供应商 `webhook`。
|
"cycle": "月"
|
||||||
- `MaxRetries`:当请求失败时,重试请求的次数。
|
}
|
||||||
- `Profiles`:多配置设定;在单配置设定中,此项忽略。
|
}
|
||||||
|
|
||||||
`WebhookURL`(仅对参数生效)、`WebhookRequestBody` 以及 `WebhookHeaders` 可以包含以下占位符:
|
|
||||||
|
|
||||||
- `{ip}`:主机当前 IP,开启 IPv4 则为 IPv4 地址,开启 IPv6 则为 IPv6 地址。
|
|
||||||
- `{domain}`:ddns 域名。
|
|
||||||
- `{type}`:IP 类型,可能为 "ipv4" 和 "ipv6"。
|
|
||||||
- `{access_id}`:凭据 1。
|
|
||||||
- `{access_secret}`:凭据 2。
|
|
||||||
|
|
||||||
配置示例:
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
WebhookHeaders: |
|
|
||||||
a:{access_id}
|
|
||||||
b:{access_secret}
|
|
||||||
WebhookRequestBody: '{"domain": "{domain}", "ip": "{ip}", "type": "{type}"}'
|
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 多配置
|
<strong>配置详细说明:</strong>
|
||||||
|
|
||||||
当使用 **多配置** 时,请将 `DDNS.Provider` 留空。如 `DDNS.Provider` 的值不为空,**多配置** 设定将被忽略。
|
<strong>startDate 账单开始时间</strong>
|
||||||
|
```
|
||||||
```yaml
|
格式如 2022-04-01T23:59:59+08:00
|
||||||
DDNS:
|
|
||||||
Enable: true
|
|
||||||
MaxRetries: 3
|
|
||||||
Profiles:
|
|
||||||
example:
|
|
||||||
Provider: ""
|
|
||||||
AccessID: ""
|
|
||||||
AccessSecret: ""
|
|
||||||
WebhookMethod: ""
|
|
||||||
WebhookURL: ""
|
|
||||||
WebhookRequestBody: ""
|
|
||||||
WebhookHeaders: ""
|
|
||||||
```
|
```
|
||||||
|
|
||||||
- `Profiles`:配置字段。
|
<strong>endDate 账单到期时间</strong>
|
||||||
- `example`:可替换为 DDNS 配置名,可填任意字符串。
|
```
|
||||||
|
格式如 2022-05-01T23:59:59+08:00
|
||||||
|
当以0000-00-00开头时,表示账单无期限,适用于永久免费的vps,如0000-00-00T23:59:59+08:00
|
||||||
|
```
|
||||||
|
|
||||||
其它选项请参考[单配置](#单配置)段。
|
<strong>Date格式说明</strong>
|
||||||
|
```
|
||||||
|
分3部分
|
||||||
|
1. 日期:2022-04-01
|
||||||
|
2. 时间:T23:59:59
|
||||||
|
3. 时区:+08:00
|
||||||
|
例如:
|
||||||
|
2024-10-01T23:59:59+05:00
|
||||||
|
2024-09-21T12:00:00-05:00
|
||||||
|
2024-03-15T23:59:59+00:00
|
||||||
|
```
|
||||||
|
|
||||||
#### Dashboard 配置
|
<strong>autoRenewal 自动续期</strong>
|
||||||
|
```
|
||||||
|
支持值
|
||||||
|
1:自动续期
|
||||||
|
0:不自动续期
|
||||||
|
当设置 "autoRenewal": 1 时,程序会根据当前时间自动判断,vps账单到期后无需手动更改startDate和endDate
|
||||||
|
```
|
||||||
|
|
||||||
修改配置文件后,还需要在 Dashboard 中修改服务器设置才能使 DDNS 生效。
|
<strong>amount 价格</strong>
|
||||||
|
```
|
||||||
|
格式如 $9.99 、€19.92 、¥199、19.99HKD、9.99USD、49.99CNY
|
||||||
|
如果vps是免费的,请设置为"0" , 如 "amount": "0", 前台展示为 FREE
|
||||||
|
如果vps是按量收费,请设置为"-1" , 如 "amount": "-1", 前台展示为PAYG
|
||||||
|
```
|
||||||
|
|
||||||
DDNS 相关选项说明:
|
<strong>cycle 付费周期</strong>
|
||||||
|
```
|
||||||
- `启用 DDNS`:为此服务器启用 DDNS 功能。
|
支持格式(英文大小写字母都支持,大小写字母混用也支持)
|
||||||
- `启用 DDNS IPv4`:更新 DDNS 记录时,启用 IPv4 解析。
|
1. 月、month、monthly、m、mo
|
||||||
- `启用 DDNS IPv6`:更新 DDNS 记录时,启用 IPv6 解析。
|
2. 季、quarterly、q
|
||||||
- `DDNS 域名`:记录指向的域名。
|
3. 半年、半、half、semi-annually、h
|
||||||
- `DDNS 配置`:在 **多配置** 情况下,要使用的 DDNS 配置名。
|
4. 年、year、annually、y、yr
|
||||||
|
```
|
||||||
::: warning
|
</details>
|
||||||
在 Dashboard 设置中修改配置并保存时,会在 `config.yaml` 中填入默认配置选项,此时 DDNS 段中会同时存在 **单配置** 和 **多配置** 字段。
|
|
||||||
|
|
||||||
- 如使用 **单配置**,请配置 `DDNS.Provider`,并忽略 `Profiles` 选项相关内容。
|
|
||||||
- 如使用 **多配置**,请将 `DDNS.Provider` 留空。如 `DDNS.Provider` 的值不为空,多配置设定将被忽略。
|
|
||||||
:::
|
|
||||||
|
|
||||||
#### 查看日志
|
|
||||||
|
|
||||||
在 Dashboard 的日志中,可以看到 DDNS 功能的相关日志,配置正确时,更新 DNS 记录时会有相应的日志记录。
|
|
||||||
|
|
||||||
```shell
|
|
||||||
dashboard_1 | 2024/03/16 23:16:25 NEZHA>> 正在尝试更新域名(ddns.example.com)DDNS(1/3)
|
|
||||||
dashboard_1 | 2024/03/16 23:16:28 NEZHA>> 尝试更新域名(ddns.example.com)DDNS成功
|
|
||||||
```
|
|
||||||
|
@ -15,8 +15,11 @@ outline: deep
|
|||||||
|
|
||||||
## 界面主题
|
## 界面主题
|
||||||
|
|
||||||
在这里选择主页和管理界面主题,如果选项中没有某个已存在的主题,请更新面板。
|
在这里选择主页和管理界面主题,如果选项中没有某个已存在的主题,请更新面板。
|
||||||
启用 Custom 主题前,你需要提前安装自定义主题,否则启用该项后,面板将无法正常显示。
|
|
||||||
|
使用自定义主页主题需要创建主题描述文件,关于自定义主题更多信息请参考[哪吒主题开发环境](/developer/theme.html)。
|
||||||
|
|
||||||
|
启用管理界面 Custom 主题前,你需要提前安装自定义主题,否则启用该项后,面板将无法正常显示。
|
||||||
|
|
||||||
## Language
|
## Language
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user