FREEDOM251

Freedom251 › Parental control apps

ScreenGuard

Free plan AndroidAPILinuxSelf-hostedWeb

Visit ScreenGuard Alternatives

ScreenGuard's own site

What ScreenGuard is

ScreenGuard is a free parental-control system for Linux that applies screen-time rules through a systemd agent. Administrators create profiles with daily limits and weekly schedules, then manage devices through a web interface, REST API, or companion Android app. When allowed time ends, the agent can lock graphical sessions; an optional mode preserves running applications and unsaved work. Users can receive warnings 15, 10, 5, and 1 minute before lockout, and administrators can send desktop messages. Devices may discover a local server using mDNS. ScreenGuard supports self-hosted LAN use that works offline, or the hosted cloud-account model described by the project. The agent reports machine and account identifiers, active-time totals, idle status, session counts, and daily usage, but not window titles, application names, keystrokes, screenshots, or file contents. Agents initiate connections, with TLS-protected WebSockets in cloud mode. Managed machines need Linux with systemd, x86_64 or aarch64, and a compatible graphical session manager. The server uses SQLite by default and can use PostgreSQL.

Who it suits

ScreenGuard suits administrators managing Linux machines who need scheduled limits, session lockouts, usage reporting, and either offline self-hosting or hosted management.

What it does well

  • Free and self-hostable
  • Supports daily limits and weekly schedules
  • Offers web, REST API, and Android management
  • Warns users before lockout
  • Does not report keystrokes or screenshots

What to know first

  • Managed machines require Linux with systemd
  • Requires a compatible graphical session manager
  • Cloud endpoint and enrollment flow may change
  • Agent reports identifiers and usage totals

Verdict

ScreenGuard provides Linux-focused parental controls with local or hosted deployment. Its documented data limits and session-lock options help administrators control usage while preserving specified application state.

Facts from ScreenGuard's own pages

Activity reports
Yes · github.com, 22 Sept 2026
Administration
Administrators manage profiles and devices through a web UI or REST API. · github.com, 12 Oct 2026
Agent permissions
The README says the server cannot run arbitrary commands, read files, or open a shell on the agent, but it can request a privileged agent update from GitHub releases. · github.com, 12 Oct 2026
Cloud status
The README describes the hosted service as young and says its endpoint and enrollment flow may change. · github.com, 12 Oct 2026
Content filtering
Yes · github.com, 22 Sept 2026
Database options
The server uses SQLite by default and can be configured to use PostgreSQL. · github.com, 12 Oct 2026
Data collected
The agent reports machine and local account identifiers, active-time and usage totals, idle status, and open-session counts; the README says it does not send window titles, application names, keystrokes, screenshots, or file contents. · github.com, 12 Oct 2026
Data collection
The README says the agent reports machine and user identifiers, active-time totals, idle status, session counts, and daily usage, but not window titles, app names, keystrokes, screenshots, or file contents. · github.com, 12 Oct 2026
Deployment
ScreenGuard can be self-hosted on a LAN or used with a hosted cloud account; the project says LAN use works offline without cloud access. · github.com, 12 Oct 2026
Discovery
Agents can discover a server automatically on the local network using mDNS. · github.com, 12 Oct 2026
Enforcement
A systemd agent enforces limits and can lock graphical sessions when time runs out. · github.com, 12 Oct 2026
Free plan
Yes · github.com, 22 Sept 2026
Hosted option
The README describes hosted cloud accounts for managing machines without running a server, with device approval and account-specific profiles, devices, and usage history. · github.com, 12 Oct 2026
License
The repository README identifies the project license as GPL-3.0. · github.com, 12 Oct 2026
Mobile app
A companion Android app manages profiles, devices, schedules, and daily limits through the same REST API as the web UI. · github.com, 12 Oct 2026
Network behavior
Agents initiate outbound connections, and cloud mode uses a TLS-protected WebSocket; LAN discovery uses mDNS. · github.com, 12 Oct 2026
Network security
The agent always initiates connections, and the README says cloud connections use a TLS-protected WebSocket. · github.com, 12 Oct 2026
Notifications
The agent can warn users 15, 10, 5, and 1 minute before lockout, and administrators can send desktop messages. · github.com, 12 Oct 2026
Offline and hosting
The project says it works offline and can be self-hosted without requiring cloud service. · github.com, 12 Oct 2026
Purpose
ScreenGuard provides parental controls for Linux, with screen-time schedules and daily limits enforced by an agent that can lock sessions. · github.com, 12 Oct 2026
Remote control
The documented server messages include configuration updates, lock and notification actions, log retrieval, and a privileged agent update; the README says there is no message for arbitrary commands, file reads, or shell access. · github.com, 12 Oct 2026
Requirements
Managed machines require Linux with systemd, an x86_64 or aarch64 CPU, and a graphical session manager supporting loginctl terminate-session. · github.com, 12 Oct 2026
Schedule controls
Each user profile can have daily time limits and weekly schedules. · github.com, 12 Oct 2026
Schedules
Administrators can set daily time limits and weekly schedules per profile. · github.com, 12 Oct 2026

Where ScreenGuard stands on Freedom251

Look at these too