Repolode
PatchMon

PatchMon/PatchMon

自托管的 Linux 服务器集群补丁与运维平台,采用仅出站的代理并支持审批后执行补丁。

可替代:LandscapeAnsible Automation Platform

Star
3,484
Fork
196
未关闭 Issue
29
最近提交
16小时前

这是什么?

PatchMon 是面向运维团队的补丁与服务器管理平台,适用于管理大量 Linux 主机的场景。每台服务器上运行一个轻量的 Go 代理,将软件包状态、软件源和系统信息上报到中央服务器,管理员可以在一个 Web 界面中查看整个集群的过期软件包和存在漏洞的软件。

补丁流程分为验证和执行两步:先在目标主机上进行 dry-run,预览实际的软件包变更,再由审批人确认,之后立即或按计划执行。执行过程的 stdout 和 stderr 通过 WebSocket 实时推送到浏览器,每次运行的退出码、耗时和审批人都会保存在可搜索的历史记录中。合规检查基于 OpenSCAP CIS Benchmark 和 Docker Bench for Security。

代理通过 HTTPS 和 WSS 主动向服务器发起连接,被监控主机无需开放入站端口。服务端是嵌入 React 界面的单个 Go 二进制文件,依赖 PostgreSQL 和 Redis,可使用 Docker 或 Proxmox LXC 部署。

核心功能

  • 01补丁执行前通过 dry-run 预览主机上的软件包变更。
  • 02审批流程,每台主机保留执行记录与审批人。
  • 03浏览器中实时查看补丁输出,并可中途停止执行。
  • 04统一查看主机、已装软件包、软件源和 Docker 容器的清单。
  • 05通过 OpenSCAP 和 Docker Bench for Security 进行 CIS 合规扫描。
  • 06支持 OIDC 单点登录、角色权限控制和带 Swagger 文档的 REST API。

适用场景

  • 统一管理 Ubuntu、Debian、RHEL 或 CentOS 服务器集群的安全更新。
  • 在生产环境执行补丁前,要求变更审批并保留审计记录。
  • 跟踪 Linux 与 Docker 主机的 CIS 基准合规情况。
  • 在不允许入站连接的网络环境中自建补丁管理面板。

快速上手

  1. 1

    创建一个空的项目目录

    mkdir patchmon && cd patchmon
  2. 2

    运行 README 中的官方设置脚本,生成环境变量文件和密钥

  3. 3

    使用 Docker Compose 启动容器,然后打开 http://localhost:3000

    docker compose up -d

使用前须知

  • 服务端依赖 PostgreSQL 17 和 Redis 7,自托管时组件较多。
  • 采用 AGPL v3 许可证,这是一种 copyleft 许可证,若以网络服务形式提供修改后的版本,需要公开源代码。
  • 部分功能(如 AI 终端助手)需要外部服务商的付费 API 密钥。

收录于专题

标签

常见问题

PatchMon 是什么?
自托管的 Linux 服务器集群补丁与运维平台,采用仅出站的代理并支持审批后执行补丁。 PatchMon 是面向运维团队的补丁与服务器管理平台,适用于管理大量 Linux 主机的场景。每台服务器上运行一个轻量的 Go 代理,将软件包状态、软件源和系统信息上报到中央服务器,管理员可以在一个 Web 界面中查看整个集群的过期软件包和存在漏洞的软件。
PatchMon 可以免费使用吗?用的什么许可证?
PatchMon 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
PatchMon 还在维护吗?
活跃维护中。PatchMon 最近一次提交是在 2026年10月23日。
PatchMon 适合用来做什么?
统一管理 Ubuntu、Debian、RHEL 或 CentOS 服务器集群的安全更新。 在生产环境执行补丁前,要求变更审批并保留审计记录。 跟踪 Linux 与 Docker 主机的 CIS 基准合规情况。 在不允许入站连接的网络环境中自建补丁管理面板。
PatchMon 怎么安装和运行?
创建一个空的项目目录: mkdir patchmon && cd patchmon 运行 README 中的官方设置脚本,生成环境变量文件和密钥 使用 Docker Compose 启动容器,然后打开 http://localhost:3000: docker compose up -d
在哪里获取 PatchMon?
源代码和安装说明在 GitHub 上:https://github.com/PatchMon/PatchMon

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目