配置参考¶
配置三级覆盖:默认值 ← 配置文件 config.toml ← 环境变量 UNIDNS_*。
配置文件路径可用 UNIDNS_CONFIG 指定(默认 ./config.toml);文件不存在时
首次启动会自动生成带注释的示例配置。
配置项¶
| 配置项 | 环境变量 | 默认值 | 说明 |
|---|---|---|---|
listen |
UNIDNS_LISTEN |
0.0.0.0:18686 |
HTTP 监听地址 |
data_dir |
UNIDNS_DATA_DIR |
./data |
数据目录:SQLite 数据库、secret.key、示例配置 |
sync_interval_minutes |
UNIDNS_SYNC_INTERVAL |
0 |
定时全量同步间隔(分钟);0 停用自动同步,大于 0 至少 30(1–29 视为停用) |
admin_password |
UNIDNS_ADMIN_PASSWORD |
无 | 预置管理员口令,仅首次创建口令时生效 |
master_key |
UNIDNS_MASTER_KEY |
自动生成 | 凭据加密主密钥,64 位 hex(32 字节) |
| — | UNIDNS_CONFIG |
./config.toml |
配置文件路径(仅环境变量) |
示例¶
# HTTP 监听地址
listen = "0.0.0.0:18686"
# 数据目录(SQLite 数据库与 secret.key 存放位置)
data_dir = "./data"
# 定时全量同步间隔(分钟);0 表示停用自动同步,启用时至少 30 分钟
sync_interval_minutes = 0
# 预置管理员口令(仅首次创建口令时生效;也可用环境变量 UNIDNS_ADMIN_PASSWORD)
#admin_password = "change-me"
# 凭据加密主密钥(64 位 hex,表示 32 字节;缺省时自动生成并保存到 <data_dir>/secret.key)
#master_key = "0000000000000000000000000000000000000000000000000000000000000000"
主密钥(master_key)¶
平台凭据以 AES-256-GCM 加密落库,加密密钥来源优先级:
UNIDNS_MASTER_KEY环境变量(64 位 hex);<data_dir>/secret.key文件——不存在时自动生成(权限 0600)。
备份
secret.key 丢失后已保存的平台凭据不可恢复(密文无法解密),
只能删除账户重新录入。请把 secret.key 与 unidns.db 一起备份。
同步设置(运行期)¶
定时同步的启停与间隔也可在界面「同步设置」里调整(存 settings 表):
环境变量/配置文件的值是初始默认,界面修改后以数据库中的值为准。
域名级同步开关同样在界面操作,关闭的域名不参与同步,其本地备注不回写平台。