使用 ONLYOFFICE 文档的管理面板
概述
从 9.1 版本开始,ONLYOFFICE 管理面板提供了一个安全的 Web 界面,用于管理服务器配置和监控。本指南说明了如何设置和使用认证系统。
初始设置
默认情况下,管理面板是禁用的。请按照 http://example.com/welcome 页面上的说明启动它。
example.com 是安装了 ONLYOFFICE 文档的服务器的名称。
首次安装
当您首次启动管理面板时,需要进行初始设置:
-
启动管理面板服务器。
- 服务器会自动检测到未配置管理员密码。
- 将生成一个引导代码并显示在服务器日志中。
-
找到您的引导代码。
在服务器日志中查找类似以下的消息:
AdminPanel SETUP REQUIRED | Bootstrap code: ELAA8ZOCRUTX | Expires: 2025-10-01T20:50:00.000Z | Open: http://example.com/admin引导代码是一个简短的 12 个字符的代码(字母和数字)。
此代码仅在 1 小时内有效。
管理面板的日志可以在以下位置找到:
- 对于 Linux -
/var/log/onlyoffice/documentserver/adminpanel/out.log - 对于 Docker -
/var/log/onlyoffice/documentserver/adminpanel/out.log(首先,使用docker exec -it <containerid> bash命令进入 ONLYOFFICE 文档容器) - 对于 Windows -
%ProgramFiles%\ONLYOFFICE\DocumentServer\Log\adminpanel\AdminPanel_<date>.out.log
您也可以使用一些命令在不打开日志的情况下找到引导代码。例如,在 Linux 上,执行以下命令:
sudo grep -R "Bootstrap code" /var/log/onlyoffice/documentserver -n对于 Docker 版本,请在 ONLYOFFICE 文档容器内运行此命令。
在 Windows 上,您可以使用以下命令:
Get-ChildItem -Path "C:\Program Files\ONLYOFFICE\DocumentServer\Log\adminpanel" -Recurse | Select-String -Pattern "Bootstrap code" - 对于 Linux -
-
打开管理面板 Web 界面。
导航到
http://example.com/admin— 将出现设置页面。
-
完成设置。
- 输入来自服务器日志的引导代码。
- 创建您的管理员密码。
- 点击设置。
- 您将自动登录。
将创建
runtime.json文件,其中将包含管理面板中修改的设置。该文件优先于其他配置文件,如 local.json、default.json、production.json 等。runtime.json文件可以在以下位置找到:- 对于 Linux -
/var/www/onlyoffice/Data/runtime.json - 对于 Docker -
/var/www/onlyoffice/Data/runtime.json(首先,使用docker exec -it <containerid> bash命令进入 ONLYOFFICE 文档容器) -
对于 Windows -
%ProgramData%/ONLYOFFICE/Data/runtime.json默认情况下,
ProgramData是 Windows Server 中的一个隐藏文件夹,您可以在文件资源管理器选项中启用显示隐藏项目来查看它。
安全注意事项
- 引导代码仅存储在内存中,并在日志中显示一次。
- 代码仅在设置密码之前有效(通过
runtime.json中的passwordHash检查)。 - 设置后,所有引导代码在所有节点上都将失效。
- 在集群中,代码在共享相同
ADMINPANEL_BOOTSTRAP_SECRET的所有节点上有效。 - 不会传输或记录任何密码 — 仅存储安全的哈希值。
常规登录
初始设置完成后:
- 导航到
http://example.com/admin。 - 输入您的管理员密码。
-
点击登录。
- 您的会话有效期为 1 小时。
会话详情
- 会话使用安全的仅限 HTTP 的 Cookie。
- 它们会在 1 小时不活动后自动过期。
- 应用了
SameSite=Strict保护以防止 CSRF 攻击。
更改密码
要更改您的管理员密码:
- 登录管理面板。
- 转到更改密码页面。
- 输入您当前的密码。
- 输入您的新密码。
- 确认更改。
- 更改密码后,您的会话保持活动状态。
密码哈希详情
- 算法:PBKDF2-SHA256(600,000 次迭代,OWASP 2023)。
- 跨平台:哈希值可以通过 Python 或 Node.js 生成。
在外部生成密码哈希
OpenSSL 3.0+(推荐 - MCF 格式):
PASSWORD="YourPassword"; I=600000; S=$(openssl rand -base64 16 | tr -d '\n'); H=$(openssl kdf -binary -keylen 32 -kdfopt digest:SHA256 -kdfopt pass:UTF8:"$PASSWORD" -kdfopt salt:base64:"$S" -kdfopt iter:$I PBKDF2 | base64 | tr -d '\n'); echo "\$pbkdf2-sha256\$$I\$$S\$$H"
Node.js:
node -e "const crypto=require('crypto');const p=process.argv[1];const s=crypto.randomBytes(16);const sb=s.toString('base64').replace(/\+/g,'.').replace(/=/g,'');crypto.pbkdf2(p,s,600000,32,'sha256',(e,k)=>{const h=k.toString('base64').replace(/\+/g,'.').replace(/=/g,'');console.log('\$pbkdf2-sha256\$600000\$'+sb+'\$'+h)})" "YourPassword"
检查 OpenSSL 版本:
openssl version
# OpenSSL 3.0.0 或更新版本 - ✅ 使用 openssl kdf 命令
# OpenSSL 1.x - ✅ 使用 openssl keyutl 命令
将生成的哈希添加到 runtime.json 文件中:
{
"adminPanel": {
"passwordHash": "$pbkdf2-sha256$600000$..."
}
}
密码重置 / 恢复
如果您忘记了管理员密码,请从 runtime.json 中删除 passwordHash 条目:
{
"adminPanel": {
}
}
将生成一个新的引导代码。请再次按照初始设置流程操作。
故障排除
找不到引导代码
问题:服务器已启动,但看不到引导代码。
解决方案:
- 检查服务器日志中是否有“Bootstrap code”消息。
- 如果代码已过期,请刷新管理面板页面以生成新代码。
设置
ONLYOFFICE 管理面板的设置页面提供了一套工具,用于监控服务器配置、管理证书、自定义字体等。以下是对本节功能的简要说明。
配置
使用此选项卡,您可以:
- 查看服务器配置。此处显示最终配置,所有参数通过所有配置文件重新定义。敏感参数(密码、密钥、秘密)显示为已编辑。
- 复制配置文件的内容。
- 将所有配置设置重置为默认值。此操作无法撤销。
许可证
使用此选项卡,您可以上传产品许可证并查看许可证信息:
- 构建:类型(企业版、开发者版)、模式(试用、生产)、发布日期。
- 许可证:开始日期、许可证有效截止日期。
- 编辑器和实时查看器的连接限制。
点击立即购买按钮以购买许可证。您将被重定向到 ONLYOFFICE 官方网站的相应页面。
要上传许可证:
- 点击浏览按钮选择许可证文件。
- 点击应用许可证按钮。
PDF 签名
使用此选项卡,您可以添加 PKCS#12(.p12/.pfx)证书,用于签署提交的 PDF 表单。当点击完成并提交按钮提交时,填写的 PDF 表单将被签名。
要使用现有文件(私钥和 .crt / .pem 证书)创建 .p12/.pfx 证书,您可以从命令行使用 openssl:
openssl pkcs12 -export -out certificate.pfx -inkey privatekey.key -in certificate.crt
要从头创建证书:
-
生成私钥:
openssl genrsa -out privatekey.key 2048 -
创建证书签名请求(CSR):
openssl req -new -key privatekey.key -out request.csr -
生成自签名证书:
openssl x509 -req -days 365 -in request.csr -signkey privatekey.key -out certificate.crt -
创建 PKCS#12 文件:
openssl pkcs12 -export -out certificate.pfx -inkey privatekey.key -in certificate.crt
获得 .p12/.pfx 证书后,您可以将其上传到管理面板中的“证书文件”字段。如果证书受密码保护,请在“证书密码”字段中输入您的密码。然后保存设置。
HTTPS / SSL
使用此选项卡,您可以从 letsencrypt.org 服务安装新的 CA 签名证书,以启用安全的 HTTPS 协议。
- 在域名字段中指定您的域名。
- 在电子邮件字段中指定您的电子邮件地址。
- 点击安装证书按钮。
字体
使用此选项卡,您可以添加新的自定义字体:
- 点击浏览按钮选择字体文件,或将其拖放到此处。
- 点击生成按钮。
管理您添加的自定义字体:
- 按名称筛选所有字体以找到所需的字体。
- 勾选“仅显示自定义”选项,以便在列表中仅显示自定义字体。
- 勾选“标记所有自定义字体以删除”选项,然后点击生成按钮以删除所选的自定义字体。
关闭
使用此选项卡,您可以在因应用程序更新或服务器重启等原因需要停止 ONLYOFFICE 文档时,强制断开 ONLYOFFICE 文档用户的连接,以避免数据丢失。
- 点击关闭按钮以阻止新的编辑器连接并关闭现有会话。当以这种方式停止服务器时,用户将正确断开与编辑器的连接,并且他们的更改将被保存。
- 点击恢复按钮使服务器恢复正常模式,并允许新的编辑器连接。