停用 Collabora 程式碼更新檢查和不必要的連接

若要阻止 Collabora Online Development Edition (CODE) 進行排程版本檢查,請將 `set`fetch_update_check和0` allow_update_popupset`設為 `true` false。對於不得存取未經批准的外部服務的部署,還應停用未使用的集成,並在網路邊界強制執行出站允許清單;僅隱藏更新通知並不能阻止網路流量。

了解您正在停用哪些功能

截至 2026 年 10 月,Collabora 的coolwsd.xml.in文檔中記錄了 10 小時的更新檢查間隔以及單獨的更新通知控制。但文件中並未提供一個名為「停用遙測」的通用開關。更新請求、可選的雲端輔助編輯、本機診斷日誌以及與文件儲存伺服器的必要 WOPI 連線是不同的概念。將它們視為單一設定可能會導致連線保持活動狀態或中斷文件編輯。

這些說明主要適用於獨立的collabora/codeDocker 部署。軟體包安裝使用相同的配置概念,但通常需要編輯/etc/coolwsd/coolwsd.xml並重新啟動coolwsd服務。由其他產品管理的內建 CODE 安裝可能會重新產生啟動選項;請在管理產品中變更這些選項,而不是修補臨時檔案。

1. 確定運轉設定並保留回滾功能

首先確定您的 CODE 服務是透過 Docker Compose、docker run命令列或原生軟體包配置的。對於 Docker,請檢查容器及其當前環境,但不要公開輸出結果,因為環境變數可能包含憑證:

docker ps --format 'table {{.Names}}	{{.Image}}'
docker inspect --format '{{range .Config.Env}}{{println .}}{{end}}' code

請替換code為您的實際容器名稱。在更改部署文件或現有coolwsd.xml文件之前,請務必儲存安全副本。如果您的 Compose 設定中已包含 TLS 終止、WOPI 主機允許或驗證參數,請保留這些值。

2. 停用定期更新連接

對於 Docker Compose

extra_params將這些選項新增至CODE 服務代碼區塊下的現有值environment。這只是一個片段,並非完整的 Compose 檔:

services:
  code:
    environment:
      extra_params: >-
        --o:fetch_update_check=0
        --o:allow_update_popup=false

將這兩個標誌與現有標誌合併,而不是覆蓋它們。然後,僅使用您的實際 Compose 服務名稱extra_params重新建立 CODE 服務。在部署中,重新建立容器時,請在環境變數中包含相同的選項。docker compose up -d --no-deps --force-recreate codedocker runextra_params

Linux 軟體套件

編輯/etc/coolwsd/coolwsd.xml。找到現有元素並更改其值,同時保留其原始屬性:

<fetch_update_check>0</fetch_update_check>
<allow_update_popup>false</allow_update_popup>

如果現有元素包含屬性,請保留這些屬性,僅變更文字值。重新啟動前,請檢查檔案是否為有效的 XML 檔案;例如,xmllint --noout /etc/coolwsd/coolwsd.xml如果xmllint已安裝,請使用下列命令。重啟時請使用以下命令sudo systemctl restart coolwsd。

重要提示: allow_update_popup=false此設定會抑制編輯器的更新通知;它本身並非出口控制措施。此fetch_update_check=0設定針對的是計劃檢查。您的組織仍需透過正常的維護流程追蹤安全性更新。

3. 關閉可聯絡其他主機商的選用服務

檢查遠端整合的活動配置。在目前的上游配置中,遠端 LanguageTool 或 Duden 校對預設為停用狀態,伺服器範圍的 AI 和 DeepL 開關也預設為停用狀態。管理員或整合可能已啟用這些開關。如果您的 CODE 版本中包含這些選項,並且您不需要它們,請保持停用狀態:

--o:languagetool.enabled=false
--o:ai.enabled=false
--o:deepl.enabled=false

僅包含已安裝版本支援的選項,並將它們合併到現有配置中,而不是建立第二個衝突的值。同樣的效果也可以在原生 XML 安裝的對應 `<configuration> `、`<configuration>` 和 `<configuration>`部分extra_params設定。<languagetool><ai><deepl>

remote_config.remote_url在清除遠端設定 URL 之前,請先進行檢查remote_font_config.url。空的遠端設定 URL 會避免取得可選的設定;遠端字體 URL 可能合法地指向您自己的 Nextcloud 安裝。刪除字型 URL 可能會影響文件排版,因此如果字型服務已獲批准且為必需,請保留它。此外,請根據部署需求,檢查任何已設定的監控 WebSocket 位址和其他插件,例如引用管理器。

日誌記錄是獨立的隱私問題,並非外部遙測的證據。請查看[此處應插入相關文件],logging.docstats如果您希望限制診斷中的本機識別碼。請保留足夠的安全性和維運日誌以進行故障排查;更改日誌詳細程度不會阻止出站套接字。logging.userstatslogging.anonymize.anonymize_user_data

4. 在不違反 WOPI 的前提下限制出站流量

僅更改配置無法保證完全避免意外的出站連線。請將 CODE 置於防火牆或出口代理程式之後,並允許部署所需的特定目標和連接埠。通常這意味著需要存取已批准的 WOPI 儲存主機、您實際使用的任何內部字體或身分服務,以及必要的內部 DNS 等基礎架構。阻止 CODE 工作負載存取其他網路目標,包括未經批准的更新端點。

請勿盲目停用網路連線或將 Docker 網路設定為internal: true:根據您的架構,這可能會導致 CODE 無法連接到其 WOPI 伺服器,或導致所需的整合無法正常運作。此外,請記住,使用者的瀏覽器會載入編輯器資源,並可能獨立於 CODE 伺服器發出請求;伺服器防火牆規則無法控制瀏覽器。

對於使用 iptables 後端的 Docker Engine 安裝,Docker 文件中DOCKER-USER明確指出,管理員轉送規則應放在鏈中。而對於使用 nftables 後端的 Docker Engine,則需要單獨實作一個基礎鏈,而不是假設DOCKER-USER它已經存在。針對實際的橋接器或容器網路、IPv4 和 IPv6、DNS、連線狀態以及合法的 WOPI 流量設計規則;貼上通用規則可能會導致離線編輯。在實施策略之前,DROP請務必參考Docker 的 iptables 指南和nftables 指南。

5. 驗證變更,包括實際網路活動

重新啟動或重建容器後,檢查啟動日誌是否有設定錯誤,並透過正常的儲存整合測試開啟、編輯和儲存文件的功能。編輯器回應正常並不能證明所有未經批准的請求都已停止。請檢查運行中的啟動參數,然後在啟動和編輯文件期間,查看防火牆、出口代理或容器網路中的 DNS 日誌和出站連線日誌。

docker logs --since 10m code
# Check configured flags without exposing unrelated environment secrets:
docker inspect --format '{{range .Config.Env}}{{println .}}{{end}}' code | grep '^extra_params='

在本機安裝中,請使用sudo journalctl -u coolwsd --since '10 minutes ago'並檢查本機 XML 檔案。對於瀏覽器端,請開啟瀏覽器的開發者工具,並在開啟文件時查看「網頁」標籤。區分發送到您自己的 CODE 和 WOPI 主機的請求與發送到第三方目標的請求。

成功標準: CODE 能夠正常載入和儲存文件;更新檢查選項設定為零;可選的雲端整合保持停用狀態,除非明確批准;且網路監控在觀察期內僅顯示允許的目標位址。如果在過濾流量後文件載入失敗,請暫時對照已核准的 WOPI 和基礎架構清單檢查被拒絕的目標位址,而不是停用 TLS 憑證驗證或開放不受限制的出站流量。

主要參考資料: Collabora維護的伺服器設定範本、Nextcloud All-in-One CODE 容器配置以及官方 CODE Docker 映像描述。這些文件記錄了相關的設定和部署模式;但它們並不能取代對您特定安裝的網路審計。

留下評論

使用正確的 WOPI URL 將 Seafile 和 Collabora 連接起來

使用正確的 WOPI URL 將 Seafile 和 Collabora 連接起來

透過為您的部署配置 Collabora 的發現 URL、HTTPS 和 WOPI 存取權限,在 Seafile 中啟用安全性文件編輯。

恢復 Collabora 和桌面應用程式之間的複製和貼上功能

恢復 Collabora 和桌面應用程式之間的複製和貼上功能

測試系統剪貼簿,調整瀏覽器權限,並確定嵌入式 Collabora 整合何時需要更改 iframe 策略。

在 Collabora CODE Docker 中提供自訂字體

在 Collabora CODE Docker 中提供自訂字體

將字體檔案掛載到 Docker 和 Collabora 的系統範本中,以便自訂字體出現在編輯器中並在文件中正確渲染。

恢復 Collabora CODE 設定而不遺失部署更改

恢復 Collabora CODE 設定而不遺失部署更改

備份 coolwsd.xml 及其部署來源,安全地恢復它們,並在使用者返回編輯之前驗證程式碼。

透過匹配主機來源來修復 CODE 的 WOPI 主機檢查

透過匹配主機來源來修復 CODE 的 WOPI 主機檢查

在程式碼中允許確切的 Nextcloud 或其他 WOPI 來源,然後驗證活動主機允許列表,並將其與 Nextcloud 的來源 IP 限制區分開來。

解決 Collabora 的“好吧,這太尷尬了”錯誤

解決 Collabora 的“好吧,這太尷尬了”錯誤

追蹤 Collabora 的瀏覽器、WOPI 和 WebSocket 連接,找出文件無法開啟的原因,然後套用與您的 Nextcloud 設定相符的修復程式。

在 Kubernetes 節點上執行 Collabora Online

在 Kubernetes 節點上執行 Collabora Online

使用 Helm 部署 Collabora CODE 副本,透過 WOPI 親和性將每個文件保持在一個 pod 中,並驗證入口、節點放置和 Nextcloud 編輯。

透過代理程式恢復 Collabora 的 WebSocket 連接

透過代理程式恢復 Collabora 的 WebSocket 連接

從瀏覽器到 coolwsd 追蹤失敗的套接字握手,然後將反向代理路由與您的 Collabora 版本進行匹配,包括 CODE 26.04 Apache 變更。

透過檢查金鑰、發現和 URL 來修復 WOPI 驗證錯誤

透過檢查金鑰、發現和 URL 來修復 WOPI 驗證錯誤

追蹤 Collabora WOPI 證明失敗的原因,例如金鑰不匹配、發現資料過時、時脈漂移或代理 URL 變更——而不會削弱驗證。

修正 Collabora Online 字體大小下拉選單顯示錯誤的問題

修正 Collabora Online 字體大小下拉選單顯示錯誤的問題

重置瀏覽器縮放,測試乾淨的會話,並確定何時格式錯誤的選單大小需要 Collabora 伺服器更新。