返回排行榜

PatchMon/PatchMon

JavaScriptpatchmon.net

Linux Patch Management & Automation Platform

aptapt-getcentosdebiandnfdockerlinuxredhatubuntuupdatesyumcis-benchmark
Star 增长趋势
Star
3.1k
Forks
159
周增长
Issues
235
1k2k3k
25年9月25年12月26年4月26年7月
制品库npmnpm install patchmon
README

PatchMon

Enterprise-grade Linux patch & server management platform

Website Cloud Discord GitHub Roadmap Documentation

Latest Release Stars License AI-DECLARATION: assist


What is PatchMon?

PatchMon is an enterprise-grade platform that gives operations teams a single pane of glass to monitor, patch and secure their Linux fleet, with FreeBSD and Windows agent support.

A lightweight agent communicates outbound-only to the PatchMon server on your schedule - no inbound ports required on monitored hosts - delivering real-time visibility into package health, compliance posture and system status across environments of any scale.

Dashboard Screenshot


Why PatchMon?

  • Outbound-only agents - no inbound firewall changes, no SSH or WinRM exposure, no VPN required.
  • Single binary, bundled UI - one Go binary with the React frontend embedded. One container, no Node runtime at deploy time.
  • Open source, with a managed cloud - AGPL v3 licensed, free to self-host. Production hosting available at patchmon.net/cloud.
  • Multi-OS by design - Linux (apt, dnf, yum, apk, pacman), FreeBSD (pkg) and Windows, handled by the same agent and control plane.

Quick Start

Docker is the fastest way to try PatchMon:

mkdir patchmon && cd patchmon
bash -c "$(curl -fsSL https://raw.githubusercontent.com/PatchMon/PatchMon/refs/heads/main/docker/setup-env.sh)"
docker compose up -d

Open http://localhost:3000, create an admin user, add a host in the UI and copy the generated install command onto the target server.

Full deployment options (Docker manual, Proxmox LXC, PatchMon Cloud) are in the Deployment section.


Features at a Glance

Patch Management

The core of PatchMon - orchestrate updates across your fleet with validation, approval and live visibility.

Capability What It Does
Dry-Run Validation Preview the exact package transaction on a host before anything touches production. Every run captures the full plan so you know what would change.
Approve & Execute One-click approval turns a validated dry-run into a real patch run, with a per-host audit trail of who approved what and when.
Scheduled Patching Patch policies decide when updates apply - immediate, maintenance window or delayed rollout. Approve now, execute later.
Live Patch Streaming Watch patch execution in real time from the browser. Agent stdout/stderr is streamed over WebSocket, with the ability to stop a run mid-flight.
Selective Patching Target specific packages, security-only updates or a full upgrade. Works across apt, dnf, yum, apk, pacman and FreeBSD pkg.
Patch History & Audit Full searchable history of every run - exit code, duration, packages touched, approver and host.

Patching Screenshot

Visibility & Inventory

Capability What It Does
Personalised Dashboard Per-user, drag-and-reorder overview cards showing fleet health, outdated packages, host status and patching activity at a glance.
Host Inventory Browse every enrolled server with OS, uptime, kernel, last check-in and group membership.
Package Inventory View every installed package across your fleet, filter to outdated or vulnerable ones, and see exactly which hosts need attention.
Repository Tracking Every APT / YUM / DNF / APK / pacman repository configured on each host, in one place.
Docker Monitoring Automatic discovery of containers, images, volumes and networks with real-time status pushed over WebSocket.

Security & Compliance

Capability What It Does
Compliance Scanning Run OpenSCAP CIS Benchmarks and Docker Bench for Security. Track compliance scores over time with rule-level results and remediation guidance.
Alerting Host-down, pending server updates and agent-update alerts. Filter by severity, type and status; assign to team members.
Outbound-Only Agent No inbound ports on monitored hosts. Agent initiates all traffic, with IP allow-lists for enrolment tokens and rate limiting on every endpoint.
RBAC Multi-user accounts with fully customisable roles and granular permissions - every team member sees only what they need.
OIDC Single Sign-On Authenticate with Authentik, Keycloak, Okta or any OIDC provider. Supports auto user provisioning, group-to-role mapping and SSO-only enforcement.

Reporting & Alerts Screenshot

Notification Routing Screenshot

Access & Operations

Capability What It Does
Web SSH Terminal Browser-based SSH to any host directly from the UI. Direct or proxy mode (route through the agent, no SSH port exposure).
AI Terminal Assistant Built-in AI chat panel inside the SSH terminal for command suggestions, error diagnosis and context-aware help. Works with OpenRouter, Anthropic, OpenAI or Google Gemini.
Branding & Theming Upload custom logos and favicon, choose colour themes and toggle light / dark mode per user.

AI Terminal Assistant Screenshot

Platform

Capability What It Does
Integrations 33+ integrations including Proxmox LXC auto-enrolment, getHomepage, Ansible and more.
REST API Full /api/v1 with JWT authentication and interactive Swagger / OpenAPI docs at /api-docs.

Deployment Options

PatchMon Cloud

14-day trial at patchmon.net/pricing

Fully managed PatchMon hosting with zero infrastructure overhead. We handle provisioning, updates, backups and scaling so you can focus on your fleet instead of the tooling behind it.

Self-Hosted - Docker (Officially supported)

Docker is the preferred and supported self-hosted deployment. We use hardened images for security.

Automated setup from an empty directory. The setup script downloads docker-compose.yml and env.example, generates all required secrets, and walks you through URL and CORS_ORIGIN configuration interactively:

mkdir patchmon && cd patchmon
bash -c "$(curl -fsSL https://raw.githubusercontent.com/PatchMon/PatchMon/refs/heads/main/docker/setup-env.sh)"
docker compose up -d

Access the application at the URL you configured (default: http://localhost:3000).

Manual Docker setup: see Installing PatchMon Server on Docker.

Self-Hosted - Proxmox LXC

One-command LXC deployment via the Proxmox VE Helper-Scripts community script:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/patchmon.sh)"

Enrolling Hosts

Once the server is running:

  1. Log in to the UI and add a host under Hosts.
  2. PatchMon generates a one-line install command with a per-host API key.
  3. Paste the command on the target server (requires root/sudo) and the agent enrols itself.

Supported agent platforms: Linux (amd64, 386, arm64, arm), FreeBSD (amd64, 386, arm64, arm), Windows (amd64, 386, arm64).

Minimum Server Specs

Resource Requirement
CPU 2 vCPU
RAM 2 GB
Disk 15 GB

Architecture

Component Technology
Backend Go, sqlc, chi router
Frontend React + Vite, embedded in the patchmon-server binary
Database PostgreSQL 17
Queue Redis 7 (Asynq)
Agent Go binary - Linux, FreeBSD, Windows
flowchart LR
    A[Browser / Admin UI] -- HTTPS --> B[Your Reverse Proxy]
    B -- HTTP --> C[Backend - Go Binary]
    C -- TCP --> D[(PostgreSQL)]
    C -- TCP --> R[(Asynq + Redis)]
    E[Agents on your servers] -- HTTPS + WSS --> C

Agents initiate all communication. HTTPS carries reports and config; WSS (WebSocket over TLS) carries real-time events such as live patch streaming and Docker status. Ensure that Websockets is supported by your proxy when passing the traffic to PatchMon container :3000 or whichever port you decide to use.


Documentation

Full documentation at patchmon.net/docs.

Topic Link
Installing on Docker Docker install guide
Environment variables Env vars reference
Integration API Integration API docs
Proxmox LXC auto-enrolment Proxmox guide
getHomepage dashboard card getHomepage integration
Metrics collection Metrics info

Support

Community

Professional & Enterprise


Contributing

We welcome contributions from the community. See CONTRIBUTING.md for the full guide: code style, commit conventions, running tests, documentation workflow and the PR process.

Quick summary:

  • Follow existing patterns and the Biome / golangci-lint configurations.
  • Use conventional commit messages (feat:, fix:, docs:, etc.).
  • Add tests for new features and ensure the full suite passes.
  • Update documentation alongside code changes.

Good first issues are labelled in the issue tracker.


Roadmap

Track upcoming features and progress on the PatchMon Roadmap.


PatchMon PRO - Enterprise & Vendor Support

PatchMon is trusted by teams managing production infrastructure worldwide. We offer global vendor support and enterprise solutions tailored to your organisation's requirements.

Offering Details
PatchMon Cloud Fully managed hosting - we handle infrastructure, updates, backups and scaling for you.
Global Vendor Support Dedicated technical support available worldwide with SLA-backed response times.
Custom Integrations Bespoke API endpoints, third-party connectors and tailored dashboards built to your specification.
On-Premises / Air-Gapped Deploy in your own data centre or isolated environment with full support.
White-Label Solutions Brand PatchMon as your own with custom logos, domains and theming, plus multi-context deployment options.
Training & Onboarding Comprehensive team training and onboarding programmes for your organisation.
Consulting Architecture review, deployment planning and migration assistance from the team that builds PatchMon.

Contact us at support@patchmon.net for enterprise and vendor support enquiries.


License

AGPL v3 - see LICENSE for details.


Made with ❤️ by the PatchMon Team

This project represents hundreds of hours of development work. If PatchMon has saved you time or helped secure your infrastructure, a coffee would genuinely mean the world.

Buy Me A Coffee

⭐ If you find PatchMon useful, please star this repo - it helps others discover the project!

Website Cloud Discord GitHub Documentation

相关仓库
CyberMonitor/APT_CyberCriminal_Campagin_Collections

APT & CyberCriminal Campaign Collection

YARAapt
4.1k969
blackorbird/APT_REPORT

Interesting APT Report Collection And Some Special IOCs

PythonPyPIaptcybersecurity
x.com/blackorbird
3.1k575
aptly-dev/aptly

aptly - Debian repository management tool

GoGo ModulesMIT Licensegodebian
aptly.info
2.9k418
north2016/T-MVP

Android AOP Architecture by Apt, AspectJ, Javassisit, based on Realm+Databinding+MVP+Retrofit+Rxjava2

JavaMavenaopaop-architecture
2.7k624
aptnotes/data

APTnotes data

aptmalware
1.8k292
wimpysworld/deb-get

apt-get for .debs published via GitHub or direct download 📦

ShellMIT Licenseaptapt-get
1.7k171
zbrateam/Zebra

🦓 A Useful Package Manager for iOS

SwiftGNU General Public License v3.0jailbreakios
getzbra.com
1.3k203
alvin-tosh/Malware-Exhibit

🚀🚀 This is a 🎇🔥 REAL WORLD🔥 🎇 Malware Collection I have Compiled & analysed by researchers🔥 to understand more about Malware threats😈, analysis and mitigation🧐.

AssemblyMIT Licensecryptographycybersecurity
1.2k196
S3N4T0R-0X0/APTs-Adversary-Simulation

This repository contains detailed adversary simulation APT campaigns targeting various critical sectors. Each simulation includes custom tools, C2 servers, backdoors, exploitation techniques, stagers, bootloaders, and other malicious artifacts that mirror those used in real world attacks .

C++Otheradversary-simulationadversarial-attacks
1.1k186
UCodeUStory/S-MVP

🔥🔥优化版MVP,使用注解泛型简化代码编写,使用模块化协议方便维护,APT过程使用注解解析器利用JavaPoet🌝完成重复模块的编写,利用ASpect+GradlePlugin 完成横向AOP编程+Javassist动态字节码注入+Tinker实现热修复+Retrofit实现优雅网络操作+RxJava轻松玩转数据处理

JavaMavenMIT Licensemvpjavassist
1.1k125