跳转到正文

检查服务器安全更新

SetFN 更新包含 SetFN 服务器程序及其内置库的安全修复。运行 SetFN 的操作系统,以及 SetFN 在文档预览、转换、文字识别(OCR)时调用的外部程序,需要由服务器运维人员自行更新。

本文档基于 KISA Boho Nara(보호나라)安全公告和主要漏洞(CVE)的检查结果,介绍运维人员需要确认的项目和命令。示例以 Ubuntu 24.04 LTS 为准。


开始之前

  • 需要使用具有 sudo 权限的账户连接到服务器。
  • 内核更新后需要重新启动服务器才会生效。请在用户较少的时间段操作。

更新操作系统软件包

  1. 在终端中刷新软件包列表并安装安全更新。
    sudo apt update
    sudo apt upgrade
    
  2. 确认是否需要重新启动。如果该文件存在,则需要重新启动。
    ls /var/run/reboot-required
    
  3. 重新启动后,确认 SetFN 是否正常运行。

以下组件是 2025 年以后 KISA 建议进行安全更新的项目。它们会随上述命令一起更新。

组件确认命令需要更新的原因
Linux 内核uname -r多次公告了权限提升、内存损坏漏洞。
sudosudo --version存在本地用户可以获取管理员权限的漏洞(CVE-2025-32463)。
OpenSSLopenssl version公告了 LibreOffice 等外部程序所使用的加密库的漏洞。
snapdsnap version公告了权限提升漏洞。

确认文档处理程序

SetFN 在对用户上传的文件进行预览、转换、文字识别时使用以下程序。这些程序会直接读取来自外部的文件,因此不要推迟安全更新。

程序确认命令用途
libvipsvips --version图像预览和格式转换
LibreOfficelibreoffice --versionOffice 文档预览和 PDF 转换
Popplerpdftoppm -vPDF 文本提取和页面图像转换
MuPDFmutool -vPDF 页面图像转换的辅助(建议不要安装)
Tesseracttesseract --version文字识别(OCR)
Pandocpandoc --version文档格式转换
FFmpegffmpeg -version视频缩略图

通过 Ubuntu Pro 获取 universe 软件包的安全修复

在 Ubuntu 24.04 中,LibreOffice、Poppler、libheif 是 main 仓库的软件包,可以通过 sudo apt upgrade 安装安全修复。libvips、Tesseract、MuPDF、Pandoc、ImageMagick、FFmpeg 是 universe 仓库的软件包。这些软件包在 2025 年以后公开的严重程度为高(High)及以上的漏洞修复,仅通过 Ubuntu Pro 的 esm-apps 提供。

如果使用这些程序,请把服务器连接到 Ubuntu Pro。

  1. 在 Ubuntu Pro 获取令牌。
  2. 在服务器上执行以下命令。
    sudo pro attach <令牌>
    sudo pro enable esm-apps
    sudo apt update
    sudo apt upgrade
    
  3. 确认 pro status 中 esm-apps 显示为 enabled。

减少不需要的文档处理程序

  • MuPDF(mupdf-tools):如果已安装 Poppler(poppler-utils),SetFN 不会使用 MuPDF。MuPDF 存在 Ubuntu 24.04 中尚未修复的漏洞(CVE-2026-3308),因此建议不要安装。如果已经安装,可以用 sudo apt remove mupdf-tools 移除。
  • ImageMagick、FFmpeg:未安装时,SetFN 只是不使用相应的转换和视频缩略图功能。如果不使用,请不要安装。
  • FFmpeg 8.x:如果是自行构建或从单独的仓库安装的,请更新到 8.0.3 或 8.1.2 及以上版本(CVE-2026-8461)。

LibreOffice 的 Java 使用

LibreOffice 公告了一个漏洞(CVE-2026-63277):文档中的外部数据连接可能加载远程 Java 驱动程序,而 Ubuntu 24.04 软件包尚未包含修复(2026-10-23 确认)。SetFN 在转换文档时每次都会创建新的 LibreOffice 配置文件,并在该配置文件中禁用宏和外部链接更新。从 2026-10-23 检查中修复的下一次更新开始,还会在同一配置文件中禁用 Java。如果没有其他用途需要 Java,可以从服务器中移除 Java 运行时,进一步降低风险。

使用 Docker 运行时的确认事项

如果使用 Docker 运行 SetFN,请确认是否为以下版本及以上。

组件确认命令推荐版本
Docker Enginedocker version29.3.1 及以上(CVE-2026-34040)
Docker Composedocker compose version2.40.2 及以上(CVE-2025-62725)
Docker DesktopDocker Desktop 的 About 界面4.44.3 及以上(CVE-2025-9074)

使用反向代理时的确认事项

如果在 SetFN 前面放置 nginx 等反向代理来处理 HTTPS,反向代理也属于安全更新对象。

  • nginx 开源版建议使用 1.30.4 或 1.31.3 及以上版本。发行版软件包会通过发行版的安全更新获得修复内容。
  • 公告了一种让开启 HTTP/2 的 Web 服务器使用过多内存的攻击(CVE-2026-49975)。请应用所使用的 Web 服务器的修复版本。
  • 如果使用公认证书运行 HTTPS,请在反向代理上开启 HSTS(Strict-Transport-Security)标头。为避免使用自签名证书的内网安装无法访问,SetFN 服务器本身不发送 HSTS。

使用本地 AI(Ollama)时的确认事项

如果在与 SetFN 相同的服务器上用 Ollama 运行本地 AI 模型,请确认以下事项。

  1. 用 ollama --version 确认版本,并更新到 0.17.1 及以上(CVE-2026-7482)。
  2. 确认 Ollama API 没有对外开放。如果只在与 SetFN 相同的服务器上使用,请不要把 OLLAMA_HOST 设置为 0.0.0.0。
  3. 如果需要从其他服务器连接 Ollama,请用防火墙只允许 SetFN 服务器的地址。

备份管理员两步验证密钥

使用管理员两步验证的服务器会把保护认证信息的加密密钥保存在配置文件夹的 secrets/admin-mfa/ 中。备份或迁移服务器时,请一并复制此文件夹。如果恢复后的服务器没有此密钥,所有管理员的两步验证都会验证失败,需要用 user mfa reset 命令逐个重置管理员的两步验证后重新设置。详情请参阅设置管理员两步验证。

使用外部 AI 集成时的确认事项

如果外部 AI 集成(AP 桥接)调用 SetFN 的 /api/ai-proxy,请在 SetFN 服务器和集成程序两侧把相同的 SETFN_AI_PROXY_TOKEN 值设置为环境变量。从 2026-10-23 安全检查之后的版本起,没有令牌时仅凭从同一服务器发送的请求无法使用此路径。

注意事项

  • 直接影响 SetFN 的安全问题会通过 SetFN 更新修复。SetFN 也请保持最新版本。
  • 各公告是否与 SetFN 相关以及检查状态,可以在主要漏洞检查状态中查看。
  • 把管理员页面的访问限制为特定 IP,可以进一步降低外部攻击风险。请参考 IP 访问限制。

相关文档