# Guardian

> Self-hosted Plex access control: approve or block devices, enforce schedules and IP rules, limit concurrent streams, and auto-terminate violating sessions.

- **Category:** Media Server
- **Licence:** Other
- **Latest version:** v2.1.0
- **Open source:** source_available
- **Languages:** Typescript
- **Platforms:** Docker Compose, Unraid, Build from Source
- **Tags:** Monitoring, Nestjs, Parental Control, Homelab, Plex, Media Player, Access Control, Typescript, Next.js, Docker, Self Hosted, Plexmediaserver, Plex Server

## Description

Guardian sits in front of Plex Media Server and enforces access policies. It repeatedly queries the Plex sessions endpoint, checks every active stream against rules you define per user or per device, and ends any that don't comply. You can allow, deny, or quarantine devices; set a global default with per-user exceptions; build allowlists using CIDR notation for both IPv4 and IPv6; schedule weekly access windows; and hand out temporary passes that expire. Concurrent-stream ceilings can be applied globally or per user, with an option to exempt temporary passes. The dashboard streams live data from Plex and Plexamp, showing device fingerprints, playback quality, progress bars, and a searchable history. Alerts are delivered through SMTP, Apprise (which covers over a hundred targets), or in-app notices for events like new device appearances, blocks, location shifts, and user notes. Admin utilities include configuration backup and restore, automatic pruning of stale devices, and command-line helpers for resetting passwords or clearing captcha lockouts. A separate portal lets each Plex user view their own devices, the rules affecting them, and annotate rejected devices. Deployment options are Docker Compose (UI on port 3000) or a Node.js development stack; persistence is a single SQLite file. The license is PolyForm Noncommercial 1.0.0 — source-available but restricted to non-commercial use. The original author is looking for someone to take over maintenance.

## Links

- [Homepage](https://github.com/HydroshieldMKII/Guardian)
- [Docker](hydroshieldmkii/guardian)
- [GitHub Discussions](https://github.com/HydroshieldMKII/Guardian/discussions)
- [GitHub Repository](https://github.com/HydroshieldMKII/Guardian)
- [GitHub Issues](https://github.com/HydroshieldMKII/Guardian/issues)

---
Source: https://selfhost.directory/project/guardian