Nginx

ONLYOFFICE - JWS 密碼不起作用(可以在沒有的情況下連接)

  • April 29, 2019

我在 Ubuntu Server 18.04 LTS 上的 nginx 上的 https:// vhost 下執行ONLYOFFICE 文件伺服器。它可以在 onlyoffice.example.com 上訪問,我在 nextcloud.example.com 也有一個Nextcloud實例,它與之集成。

為了防止未經授權訪問我的伺服器,我曾經在我的/etc/onlyoffice/documentserver/default.json文件中有一個 JWT 身份驗證密鑰,用於、browser和字元串。更新到 version 後,我不得不將我的文件重置為預設值(來自 GitHub 儲存庫),因為 ONLYOFFICE 由於某種原因(?)無法正常工作,然後我正確設置了我的 PostgreSQL DB 密碼以及四個密鑰字元串(全部相等)上面提到。inbox``outbox``session``5.2.0``default.json

true我還確保為所有三個選項(browserinbox)設置了密鑰身份驗證outbox

然後我跑了:

#: supervisorctl restart all
#: systemctl restart nginx

並成功重啟了我的網路伺服器和 ONLYOFFICE。

當我進入 Nextcloud ONLYOFFICE 設置時,沒有輸入任何密鑰,我的實例執行良好。相反,如果我指定任何密鑰(包括正確的密鑰),它會給我以下錯誤

嘗試連接時出錯(文件服務中發生錯誤:下載要轉換的文件文件時出錯。)

毫無價值,這種方式根本沒有安全性,任何人都可以在他們的系統上免費使用我的 ONLYOFFICE 文件伺服器。

這是我文件的相關部分(從第 132 行開始)的螢幕截圖/etc/onlyoffice/documentserver/default.json(紅色 X 所在的位置,我在 Snipping Tool 中覆蓋了我的密鑰以保護隱私)。

/etc/onlyoffice/documentserver/default.json 文件在 VIM 中打開

經過額外的測試,我試圖故意將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 行長的文件,而default.json.

我正確配置了我的local.json文件,最後 Nextcloud 給了我一個令牌錯誤。我在 Nextcloud ONLYOFFICE 設置中更新了密鑰資訊,現在 JWS 身份驗證工作正常!

TL;博士

ONLYOFFICE 版本的一個記錄不佳的更改5.2.0在於配置文件不再存在/etc/onlyoffice/documentserver/default.json,而是現在/etc/onlyoffice/documentserver/local.json。因此,要修改 ONLYOFFICE 配置,現在要編輯的文件是/etc/onlyoffice/documentserver/local.json.

引用自:https://serverfault.com/questions/933247