← Back to Skills Marketplace
Security Dashboard
by
vegasbrianc
· GitHub ↗
· v1.2.1
1626
Downloads
2
Stars
5
Active Installs
7
Versions
Install in OpenClaw
/install security-dashboard
Description
Real-time security monitoring dashboard for OpenClaw and Linux server infrastructure. Monitors gateway status, network security, public exposure, system updates, SSH access, TLS certificates, and resource usage.
Usage Guidance
Before installing, review the included files (scripts/install.sh and server.js) yourself or on a test machine. Specific checks:
- Inspect /etc/sudoers.d/openclaw-dashboard the installer creates. The rule uses wildcards (e.g., 'journalctl *') — consider narrowing this to only the journalctl invocations needed (for example '-u sshd' or specific time ranges) to avoid exposing unrelated logs.
- Prefer running as the dedicated user but give that user a real home or adjust server.js to read the OpenClaw config via a configurable path (do not rely on /nonexistent HOME). If you must run as root, be aware of the higher risk.
- Confirm the service runs with the intended hardened systemd flags (NoNewPrivileges, ProtectSystem, ReadWritePaths limited to skill directory). Don’t change these without understanding the consequences.
- Audit server.js for any commands that call sudo or parse files (fs.readFileSync and many execSync calls). Ensure they only access the data you want monitored and do not transmit data externally (there are no outgoing network calls in the code provided, but review future updates).
- Consider running the dashboard in an isolated environment (container or VM) first to validate behavior and to avoid exposing sensitive host logs or files.
- If you accept the install, restrict the sudoers entries to the minimal commands and arguments required and verify file ownership/permissions for the OpenClaw config the dashboard needs to read.
If you want, I can produce a tightened sudoers snippet and a checklist of the least-privileged commands the dashboard needs, or point out exact lines in server.js that would need modification to make the service run under a non-login dedicated user.
Capability Analysis
Type: OpenClaw Skill
Name: security-dashboard
Version: 1.2.1
The OpenClaw Security Dashboard skill is designed for system monitoring and incorporates significant security hardening measures. The `scripts/install.sh` creates a dedicated, restricted user with limited sudo privileges for specific monitoring commands (e.g., `systemctl`, `ufw`, `fail2ban-client`) and applies strong systemd hardening (`NoNewPrivileges`, `ProtectSystem`, `ProtectHome`). The `server.js` uses `execSync` to gather system metrics, but commands are hardcoded or derived from trusted sources, and no user input is directly executed. There is no evidence of data exfiltration to external endpoints, malicious execution, persistence mechanisms beyond a legitimate systemd service, or prompt injection attempts in `SKILL.md` or `README.md`.
Capability Assessment
Purpose & Capability
The name/description (security monitoring of OpenClaw and Linux) matches the code: server.js runs many local system checks (systemctl, ss, fail2ban, tailscale, journalctl, file perms). Requiring access to system status commands is expected. However, some implementation details are odd: the installer creates a dedicated user with no home (/nonexistent) yet server.js expects to read files under $HOME and uses ~ in many shell commands — that will make many OpenClaw-specific checks fail when the service runs as the dedicated user unless run as root or the service user is given a real home or sudo access to read those files.
Instruction Scope
SKILL.md stays within the stated scope (install, start, access, configuration) and all runtime instructions operate on local system state. But the installer creates a sudoers file that allows the service user to run a number of system utilities with wildcards (notably 'journalctl *' and 'ss *'), which can expose arbitrary logs or system socket/process info beyond narrowly scoped checks. The README/SKILL.md do not document the exact sudoers entries in detail for user review before installation (they are present in scripts/install.sh).
Install Mechanism
There is no remote download; installation is via bundled scripts that create a systemd service and a sudoers file. Installing writes to /etc/systemd/system and /etc/sudoers.d (sensitive system areas) which is expected for a local monitoring service but is a privileged change and should be inspected prior to running. No external URLs or archives are fetched during install.
Credentials
The skill requests no environment variables or external credentials. However, the installer grants the service user passwordless sudo for several commands with globs (systemctl is-active *, systemctl status *, journalctl *, ss *, tailscale status * etc.). For a monitoring dashboard, systemctl/fail2ban/ufw/ss/tailscale access is reasonable, but 'journalctl *' is broad and could reveal unrelated logs (potential secrets). Also running the service as root is explicitly allowed (and documented as dangerous) — the combination of allowed sudo commands and root/run-as-root option raises privilege concerns that should be restricted to the minimum needed.
Persistence & Privilege
The skill installs a persistent systemd service and enables it at boot (normal for a dashboard). always is false and the skill does not request to auto-enable itself across the platform. The main elevation vector is the sudoers entry (NOPASSWD) for the dashboard user — this is normal for local monitoring but increases blast radius if the dashboard process is compromised. The service uses systemd hardening flags (NoNewPrivileges, ProtectSystem, PrivateTmp) which is a positive mitigation.
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install security-dashboard - After installation, invoke the skill by name or use
/security-dashboard - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.2.1
**Summary:** Adds frontmatter metadata for improved catalog integration.
- Added YAML frontmatter (name/description) to SKILL.md for better compatibility.
- No changes to code or functionality.
- Existing documentation and usage instructions remain unchanged.
v1.2.2
Real-time security monitoring dashboard for OpenClaw and Linux server infrastructure.
## What's New in v1.2.1
- Fixed ClawdHub metadata display
- Updated publish script with proper changelog format
## Security Features
- Monitors 7 critical security areas (gateway, network, SSH, firewall, fail2ban, resources)
- 4x daily automated checks with instant alerts
- Runs as dedicated user with limited privileges (recommended)
- Systemd hardening (NoNewPrivileges, ProtectSystem, PrivateTmp)
- Localhost-only binding (127.0.0.1) - secure by default
## Installation
```bash
cd skills/security-dashboard
sudo ./scripts/install.sh
```
Access via SSH port forwarding for maximum security.
v1.1.2
## Version 1.1.0 - Security Hardening
**Security Improvements:**
- Run as dedicated user with limited privileges (default)
- Systemd hardening (NoNewPrivileges, ProtectSystem, PrivateTmp)
- Limited sudo access (only security check commands)
- Changed Restart=always to Restart=on-failure
**Breaking Changes:**
- Install script now prompts for user preference (user/root)
- Default changed from root to dedicated user
**Why This Matters:**
Running as root with Restart=always increases attack surface. New version uses privilege separation while maintaining full monitoring capabilities.
v1.1.0
**Security-hardening update with new dedicated user option**
- Install script now asks whether to run as a dedicated “openclaw-dashboard” user (recommended) or root.
- Adds systemd security hardening: privilege restriction, isolated file access, limited restart policy.
- Dedicated user mode grants only specific sudo permissions needed for security checks (fail2ban, firewall, systemctl status).
- Updated documentation to explain all new hardening, install, and configuration options.
- Maintains existing features and config, no breaking changes.
v1.0.2
- Updated documentation in SKILL.md for clarity and consistency.
- No changes to core functionality or code; improvements are limited to documentation.
v1.0.1
- Updated documentation in README.md.
- No functional or code changes were made; SKILL.md contents were reorganized and/or clarified.
v1.0.0
Initial release of Security Dashboard Skill.
- Real-time dashboard for OpenClaw and Linux server security monitoring.
- Covers OpenClaw gateway, network/firewall state, port exposure, system metrics, SSH/fail2ban status, TLS/certificates, and resource usage.
- Systemd-based installation, secure localhost binding by default, and configurable via `server.js`.
- Provides both web UI and API endpoints to view metrics and integrate alerts.
- Includes sections for critical alerts, warning/informational states, and integration/automation points.
- Troubleshooting and uninstall instructions included for easy maintenance.
Metadata
Frequently Asked Questions
What is Security Dashboard?
Real-time security monitoring dashboard for OpenClaw and Linux server infrastructure. Monitors gateway status, network security, public exposure, system updates, SSH access, TLS certificates, and resource usage. It is an AI Agent Skill for Claude Code / OpenClaw, with 1626 downloads so far.
How do I install Security Dashboard?
Run "/install security-dashboard" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Security Dashboard free?
Yes, Security Dashboard is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Security Dashboard support?
Security Dashboard is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Security Dashboard?
It is built and maintained by vegasbrianc (@vegasbrianc); the current version is v1.2.1.
More Skills