Перейти к основному содержимому

Использование панели администратора ONLYOFFICE Docs

Обзор​

Начиная с версии 9.1, панель администратора ONLYOFFICE (ONLYOFFICE Admin Panel) предоставляет защищенный веб-интерфейс для управления конфигурацией сервера и мониторинга. В этом руководстве описано, как настроить и использовать систему аутентификации.

Первоначальная настройка​

По умолчанию панель администратора отключена. Чтобы запустить ее, следуйте инструкциям на странице http://example.com/welcome.

example.com — это имя сервера, на котором установлен ONLYOFFICE Docs.

Первый запуск​

При первом запуске панели администратора необходимо выполнить первоначальную настройку:

  1. Откройте веб-интерфейс панели администратора.

    На странице http://example.com/welcome нажмите Admin Panel. В появившемся диалоговом окне нажмите Open Admin Panel.

  2. Создайте первого администратора.

    Сервер автоматически определяет, что пароль администратора не задан. Открывается страница с командами для создания первого администратора. Первого администратора можно создать только с хоста.

    Панель администратора — создание первого администратора

    Используйте команду, соответствующую вашей установке:

    Linux:

    sudo documentserver-admin create-admin

    Docker:

    docker exec -it <container> documentserver-admin create-admin

    Замените <container> идентификатором или именем контейнера. Чтобы узнать его, выполните команду docker ps.

    Kubernetes:

    kubectl exec -it <pod> -- documentserver-admin create-admin

    Замените <pod> именем пода. Чтобы узнать его, выполните команду kubectl get pods.

    Windows:

    "%ProgramFiles%\ONLYOFFICE\DocumentServer\bin\documentserver-admin.bat" create-admin

    Следуйте подсказкам командной строки, чтобы задать пароль администратора.

  3. Перезагрузите страницу и войдите.

    Перезагрузите страницу панели администратора, введите созданный пароль и нажмите Login.

    Панель мониторинга панели администратора после успешной настройки

    Будет создан файл runtime.json, содержащий настройки, измененные в панели администратора. Он имеет приоритет над другими файлами конфигурации, такими как local.json, default.json, production.json и т. д.

    Файл runtime.json находится здесь:

    • Для Linux — /var/www/onlyoffice/Data/runtime.json

    • Для Docker — /var/www/onlyoffice/Data/runtime.json (сначала войдите в контейнер ONLYOFFICE Docs с помощью команды docker exec -it <containerid> bash)

    • Для Windows — %ProgramData%/ONLYOFFICE/Data/runtime.json

      По умолчанию ProgramData в Windows Server — скрытая папка. Чтобы увидеть ее, включите отображение скрытых элементов в параметрах проводника.

Примечания по безопасности​

  • Первого администратора можно создать только с хоста с помощью команды documentserver-admin create-admin.
  • Пароль администратора хранится в виде passwordHash в файле runtime.json.
  • Пароли не передаются и не записываются в журналы — хранятся только защищенные хеши.

Обычный вход​

После завершения первоначальной настройки:

  1. Перейдите по адресу http://example.com/admin.

  2. Введите пароль администратора.

  3. Нажмите Login.

    Обычная страница входа в панель администратора

  4. Сеанс действует в течение 1 часа.

Сведения о сеансе​

  • Для сеансов используются защищенные файлы cookie с флагом HTTP-only.
  • Сеансы автоматически завершаются после 1 часа бездействия.
  • Для защиты от CSRF-атак применяется SameSite=Strict.

Изменение пароля​

Чтобы изменить пароль администратора:

  1. Войдите в панель администратора.
  2. Перейдите на страницу Change Password.
  3. Введите текущий пароль.
  4. Введите новый пароль.
  5. Подтвердите новый пароль.
  6. Нажмите Save Changes.

Панель администратора — страница Change Password

После изменения пароля сеанс остается активным.

Сведения о хеше пароля​

  • Алгоритм: 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 or newer - ✓ Use openssl kdf command
# OpenSSL 1.x - ✓ Use openssl keyutl command

Добавьте полученный хеш в файл runtime.json:

{
"adminPanel": {
"passwordHash": "$pbkdf2-sha256$600000$..."
}
}

Сброс и восстановление пароля​

Если вы знаете текущий пароль, воспользуйтесь страницей Change Password в панели администратора.

Если вы забыли пароль администратора, выполните на сервере следующую команду:

Linux:

sudo documentserver-admin reset-admin-password

Docker:

docker exec -it <container> documentserver-admin reset-admin-password

Замените <container> идентификатором или именем контейнера. Чтобы узнать его, выполните команду docker ps.

Kubernetes:

kubectl exec -it <pod> -- documentserver-admin reset-admin-password

Замените <pod> именем пода. Чтобы узнать его, выполните команду kubectl get pods.

Windows:

"%ProgramFiles%\ONLYOFFICE\DocumentServer\bin\documentserver-admin.bat" reset-admin-password

Следуйте подсказкам командной строки, чтобы задать новый пароль администратора.

Устранение неполадок​

Панель администратора еще не настроена​

Проблема: на странице панели администратора по-прежнему указано, что учетной записи администратора нет.

Решения:

  • Создайте первого администратора с хоста с помощью команды documentserver-admin create-admin.
  • В Docker выполните команду внутри контейнера ONLYOFFICE Docs: docker exec -it <container> documentserver-admin create-admin. Замените <container> идентификатором или именем контейнера из вывода docker ps.
  • После завершения работы команды перезагрузите страницу панели администратора и войдите с созданным паролем.

Настройки​

Страница Settings панели администратора ONLYOFFICE предоставляет набор инструментов для мониторинга конфигурации сервера, управления сертификатами, пользовательскими шрифтами и т. д. Ниже кратко описаны возможности этого раздела.

Панель администратора — страница Settings

Конфигурация​

На этой вкладке можно:

  • Просмотреть конфигурацию сервера. Здесь отображается итоговая конфигурация со всеми параметрами, переопределенными во всех файлах конфигурации. Конфиденциальные параметры (пароли, ключи, секреты) отображаются как REDACTED.
  • Скопировать содержимое файла конфигурации.
  • Сбросить все параметры конфигурации до значений по умолчанию. Это действие нельзя отменить.

Лицензия​

На этой вкладке можно загрузить лицензию на продукт и просмотреть сведения о лицензии:

  • Сборка: тип (Enterprise Edition, Developer Edition), режим (пробный, рабочий), дата выпуска.
  • Лицензия: дата начала действия и дата, до которой действует лицензия.
  • Лимит подключений для редакторов и Live Viewer.

Нажмите кнопку Buy Now, чтобы приобрести лицензию. Вы будете перенаправлены на соответствующую страницу официального сайта ONLYOFFICE.

Чтобы загрузить лицензию:

  1. Нажмите кнопку Browse, чтобы выбрать файл лицензии.
  2. Нажмите кнопку Apply License.

Подписание PDF​

На этой вкладке можно добавить сертификат PKCS#12 (.p12/.pfx) для подписания отправляемых PDF-форм. Заполненные PDF-формы будут подписываться при отправке с помощью кнопки Заполнить и отправить.

Чтобы создать сертификат .p12/.pfx из существующих файлов (закрытого ключа и сертификата .crt / .pem), можно воспользоваться openssl из командной строки:

openssl pkcs12 -export -out certificate.pfx -inkey privatekey.key -in certificate.crt

Чтобы создать сертификат с нуля:

  1. Сгенерируйте закрытый ключ:

    openssl genrsa -out privatekey.key 2048
  2. Создайте запрос на подписание сертификата (CSR):

    openssl req -new -key privatekey.key -out request.csr
  3. Сгенерируйте самоподписанный сертификат:

    openssl x509 -req -days 365 -in request.csr -signkey privatekey.key -out certificate.crt
  4. Создайте файл PKCS#12:

    openssl pkcs12 -export -out certificate.pfx -inkey privatekey.key -in certificate.crt

Получив сертификат .p12/.pfx, загрузите его в поле Certificate File в панели администратора. Если сертификат защищен паролем, введите пароль в поле Certificate Passphrase. Затем сохраните настройки.

HTTPS / SSL​

На этой вкладке можно установить новый сертификат, подписанный центром сертификации, от сервиса letsencrypt.org, чтобы включить защищенный протокол HTTPS.

примечание

Для успешной генерации сертификатов Let's Encrypt порты 80 и 443 должны быть открыты. A-запись в DNS должна указывать доменное имя на IP-адрес сервера, на котором установлен ONLYOFFICE Docs.

  1. Укажите доменное имя в поле Domain.
  2. Укажите адрес электронной почты в поле Email.
  3. Нажмите кнопку Install Certificate.

Шрифты​

На этой вкладке можно добавить новые пользовательские шрифты:

  1. Нажмите кнопку Browse, чтобы выбрать файлы шрифтов, или перетащите их сюда.
  2. Нажмите кнопку Generate.

Управление добавленными пользовательскими шрифтами:

  • Фильтруйте шрифты по имени, чтобы найти нужный.
  • Отметьте опцию Show custom only, чтобы отображать в списке только пользовательские шрифты.
  • Отметьте опцию Mark all custom for deletion и нажмите кнопку Generate, чтобы удалить выбранные пользовательские шрифты.

Сервисы​

На этой вкладке можно включить или отключить публичные конечные точки API для определенных сервисов.

примечание

При отключении сервиса его публичные запросы API сразу отклоняются с ошибкой HTTP 403. Интеграции, использующие отключенные конечные точки, перестанут работать, пока сервис не будет снова включен.

Панель администратора — вкладка Services

Доступны следующие опции:

  • Conversion public API. Включение или отключение конечных точек конвертации. Отключение может нарушить работу коннекторов, использующих сервис конвертации. На конвертацию, запускаемую из редакторов, это не влияет.
  • Document Builder public API. Включение или отключение конечных точек генерации документов.
  • AI features. Включение или отключение ИИ-инструментов (AI Tools) в редакторах и конечной точки /ai-proxy. При отключении AI Tools удаляется из списка плагинов, передаваемого редакторам, а запросы к /ai-proxy отклоняются.

Завершение работы​

На этой вкладке можно принудительно отключить пользователей ONLYOFFICE Docs, чтобы избежать потери данных, когда нужно остановить ONLYOFFICE Docs, например, для обновления приложения или перезагрузки сервера.

  1. Нажмите кнопку Shutdown, чтобы заблокировать новые подключения к редакторам и закрыть существующие сеансы. При такой остановке сервера пользователи будут корректно отключены от редакторов, а их изменения будут сохранены.
  2. Нажмите кнопку Resume, чтобы вернуть сервер в обычный режим и разрешить новые подключения к редакторам.

Дополнительные параметры​

На этой вкладке можно настроить дополнительные параметры безопасности и сборки документов.

примечание

Отключение проверки делает сервер уязвимым для атак типа «человек посередине». Используйте его только как временное решение при интеграции с сервисами, у которых самоподписанные или иные недоверенные сертификаты. Включите проверку снова после установки надлежащих сертификатов.

Панель администратора — вкладка Advanced

Доступны следующие опции:

  • Verify TLS/SSL certificates (rejectUnauthorized). Проверка удаленных сертификатов для исходящих HTTPS-запросов.
  • Verify downloaded file integrity (checksumVerification). Проверка скачанного содержимого по заголовкам целостности.
  • Assemble document in original format (assemblyFormatAsOrigin). Сохранение исходного формата документа при окончательной сборке.

IP-фильтрация​

Страница IP Filtering позволяет указать, к каким хостам этот сервер может обращаться. Добавьте правило с именем хоста, чтобы разрешить серверу обращаться к нему. Универсальное правило * соответствует любому хосту.

Опция Require trusted WOPI hosts определяет, достаточно ли универсального правила *, чтобы хост считался доверенным. Если она включена (по умолчанию), учитывается только правило, в котором хост указан явно, — универсальное правило не учитывается.

Правила проверяются сверху вниз, применяется первое подходящее правило. Добавьте правило для хоста вашего хранилища WOPI выше универсального правила *.

Панель администратора — страница IP Filtering

Сетевые запросы​

Вкладка Network Requests определяет, какие клиенты могут обращаться к этому серверу и как фильтруются исходящие подключения.

Панель администратора — вкладка Network Requests

Доступны следующие опции:

  • Use IP filtering for requests. Применение IP-правил к входящим запросам. Если опция отключена, адреса клиентов не проверяются; исходящие запросы к WOPI по-прежнему разрешаются по тем же правилам.
  • Allow Private IP Addresses. Разрешение исходящих запросов к частным диапазонам адресов и loopback. Это не делает хост WOPI доверенным.
  • Allow Meta IP Addresses. Разрешение исходящих запросов к 0.0.0.0 и ::. Адреса облачных метаданных и link-local-адреса для WOPI остаются заблокированными.

Настройки WOPI​

Страница WOPI Settings позволяет настроить поддержку WOPI для редактирования документов, включая доверенные хосты WOPI, параметры совместимости для интеграций с SharePoint, поведение блокировки документов и управление ключами шифрования.

Чтобы полностью включить или отключить поддержку WOPI, используйте переключатель WOPI в верхней части страницы.

Панель администратора — страница WOPI Settings

Доверенные хосты WOPI​

В этом разделе можно определить, к каким хостам хранилищ документов этот сервер может обращаться. Список доверенных хостов управляется на странице IP Filtering, а не на странице WOPI Settings.

Опция Require trusted WOPI hosts определяет, достаточно ли универсального правила * на странице IP Filtering, чтобы хост считался доверенным. Если она включена (по умолчанию), учитывается только правило, в котором хост указан явно, — универсальное правило не учитывается. Правила IP-фильтрации всегда применяются к запросам к WOPI; эта опция не отключает такую фильтрацию.

Если доверенные хосты WOPI не настроены, отображается предупреждение, и документы нельзя открыть, пока вы не добавите правило с именем хоста вашего хранилища.

Панель администратора — страница Trusted WOPI Hosts

Чтобы добавить хост WOPI в список разрешенных:

  1. На странице WOPI Settings откройте раздел Trusted WOPI Hosts. В предупреждении нажмите ссылку IP Filtering.
  2. На странице IP Filtering добавьте правило с именем хоста вашего хранилища WOPI. После сохранения правила этот хост становится доверенным для WOPI.
примечание

Если опция Require trusted WOPI hosts включена, универсальное правило * на странице IP Filtering не делает хост доверенным. Добавьте правило, в котором хост хранилища указан явно.

Совместимость​

В этом разделе настраиваются параметры обнаружения WOPI (discovery) и совместимости запросов для интеграций с SharePoint и другими WOPI-совместимыми хранилищами.

WOPI Zone

Задает зону обнаружения, которую объявляет ONLYOFFICE Docs. Это значение должно совпадать с зоной, настроенной на стороне SharePoint с помощью команды PowerShell Set-SPWOPIZone. Доступные значения:

  • external-https
  • external-http (по умолчанию)
  • internal-https
  • internal-http

Чтобы проверить текущую зону на стороне SharePoint, используйте следующую команду PowerShell:

Get-SPWOPIZone

Чтобы изменить зону на стороне SharePoint, используйте следующую команду PowerShell:

Set-SPWOPIZone -Zone "external-http"

Send Authorization Header

Если опция включена, к запросам WOPI добавляется заголовок Authorization: Bearer <access_token>. Согласно спецификации WOPI он необязателен, но требуется для некоторых конфигураций SharePoint:

  • SharePoint Subscription Edition: эту опцию необходимо включить. Без заголовка Authorization возникает ошибка Invalid access token, и редактирование документа завершается неудачей.
  • SharePoint 2019: эта опция необязательна. Подключение работает с токеном, переданным в URI, но включение заголовка не вызывает проблем.

Опция соответствует параметру конфигурации wopi.sendAuthorizationHeader (по умолчанию false).

Настройки блокировки​

В этом разделе настраивается интервал обновления блокировки документов для сеансов WOPI.

Refresh Lock Interval

Задает, как часто обновляются блокировки документов. Используйте формат <number><unit>, где единица измерения — s (секунды), m (минуты) или h (часы). Примеры: 10m, 1h, 30s. Значение по умолчанию — 10m.

Управление ключами​

В этом разделе можно выполнить ротацию ключей шифрования WOPI. В поле Current Public Key отображается активный открытый ключ, используемый для аутентификации запросов WOPI.

Чтобы выполнить ротацию ключей, установите флажок Rotate Keys и нажмите Save Changes. Текущие ключи будут перемещены в «Old», и будут сгенерированы новые ключи.

примечание

Не выполняйте ротацию ключей чаще одного раза в 24 часа. Хранилище может не успеть обновить ключи, что может привести к ошибкам аутентификации.