ONLYOFFICE - секрет JWS не работает (можно подключиться без)
Я использую сервер документов ONLYOFFICE под https:// vhost на nginx на сервере Ubuntu 18.04 LTS. Он доступен по адресу onlyoffice.example.com, и у меня также есть экземпляр Nextcloud по адресу nextcloud.example.com, с которым он интегрируется.
Чтобы предотвратить несанкционированный доступ к моему серверу, у меня внутри был ключ аутентификации JWT /etc/onlyoffice/documentserver/default.json
файл для browser
, inbox
, outbox
а также session
строки. После обновления до версии 5.2.0
Пришлось сбросить default.json
файл по умолчанию (из репозитория GitHub), так как ONLYOFFICE по какой-то причине не будет работать иначе (?), а затем я правильно установил свой пароль к базе данных PostgreSQL, а также четыре строки ключей (все одинаковые), упомянутые выше.
Я также гарантировал, что аутентификация по секретному ключу была установлена на true
для всех трех вариантов (browser
, inbox
а также outbox
).
Затем я побежал:
#: supervisorctl restart all
#: systemctl restart nginx
и успешно перезапустил мой веб-сервер и ONLYOFFICE.
Когда я вхожу в настройки Nextcloud ONLYOFFICE, без ввода ключа мой экземпляр работает отлично. Если вместо этого я укажу какой-либо секретный ключ (в том числе и правильный), он выдаст мне следующую ошибку
Ошибка при попытке подключения (ошибка возникла в службе документов: ошибка при загрузке файла документа для преобразования.)
Ничего не стоит, потому что в этом случае нет никакой безопасности, и любой может бесплатно использовать мой сервер документов ONLYOFFICE в своих системах.
Вот скриншот соответствующей части (начиная со строки 132) моего /etc/onlyoffice/documentserver/default.json
файл (где красный X, я закрыл свой секретный ключ в Snipping Tool для конфиденциальности).
2 ответа
После дополнительных тестов я попытался намеренно заменить пароль базы данных в default.json
файл с неправильным, и, к моему большому удивлению, ONLYOFFICE все еще работал! Я даже удалил важные записи, и ONLYOFFICE не бросил глаз.
Это означало, что ONLYOFFICE просматривал другой файл конфигурации. Я сделал:
root@server:/# ls /etc/onlyoffice/documentserver
и я обнаружил, что после обновления до 5.2
:
default.json development-mac.json log4js production-linux.json
default.json.dpkg-dist development-windows.json logrotate production-windows.json
default.json.old local.json nginx supervisor
Я проверил различные файлы конфигурации, и это выглядит как local.json
содержит мою правильную конфигурацию PostgreSQL, по умолчанию "secret
"ключи и минимальные параметры для включения / отключения их. Это файл длиной в 44 строки, против 241 строки в default.json
,
Я правильно настроил local.json
файл и, наконец, Nextcloud дал мне ошибку токена. Я обновил информацию секретного ключа в настройках Nextcloud ONLYOFFICE, и теперь аутентификация JWS работает правильно!
TL; DR
Плохо документированное изменение в версии ONLYOFFICE 5.2.0
состоит в файле конфигурации больше не /etc/onlyoffice/documentserver/default.json
, а сейчас скорее /etc/onlyoffice/documentserver/local.json
, Следовательно, чтобы изменить конфигурацию ONLYOFFICE, файл для редактирования сейчас /etc/onlyoffice/documentserver/local.json
,
Я пытался решить ту же проблему — у меня есть настройка контейнера докеров, поэтому, основываясь на отзывах, я смог найти свой токен согласно предоставленному снимку экрана, и вместо изменения любого файла я смог добавить токен в графический интерфейс. только под офисом, как показано на прикрепленном снимке экрана. Тогда OnlyOffice работал как положено.
надеюсь, это поможет