mirror of
https://github.com/BagelHole/DevOps-Security-Agent-Skills.git
synced 2026-08-22 12:49:53 +02:00
Add OpenClaw security hardening skills
This commit is contained in:
@@ -0,0 +1,109 @@
|
||||
---
|
||||
name: openclaw-security-hardening
|
||||
description: Harden OpenClaw self-hosted environments with baseline host controls, auth tightening, secret handling, network segmentation, and safe update/rollback workflows. Use when deploying OpenClaw in home labs, startups, or production-like local AI infrastructure.
|
||||
license: MIT
|
||||
metadata:
|
||||
author: devops-skills
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# OpenClaw Security Hardening
|
||||
|
||||
Use this skill to reduce exposure in self-hosted OpenClaw deployments before opening access to teammates or external networks.
|
||||
|
||||
## Build a Threat Model First
|
||||
|
||||
Map the highest-risk assets and paths:
|
||||
|
||||
- Admin/API endpoints for OpenClaw
|
||||
- Provider API keys and model credentials
|
||||
- Prompt/response logs containing sensitive business data
|
||||
- Host-level access (SSH, local admin accounts, remote desktop)
|
||||
|
||||
Prioritize controls that reduce credential theft, remote code execution blast radius, and data exfiltration.
|
||||
|
||||
## Apply Baseline Host Hardening
|
||||
|
||||
1. Keep OS and package dependencies patched on a regular cadence.
|
||||
2. Run OpenClaw as a dedicated non-admin user account.
|
||||
3. Enable full-disk encryption and secure boot features where available.
|
||||
4. Remove unnecessary services and block inbound ports by default.
|
||||
5. Lock down remote admin (key-only SSH, no password login, limited source CIDRs).
|
||||
|
||||
Example Linux baseline checks:
|
||||
|
||||
```bash
|
||||
id openclaw
|
||||
sudo ss -tulpn
|
||||
sudo ufw status verbose
|
||||
sudo systemctl --failed
|
||||
```
|
||||
|
||||
## Harden Application Runtime
|
||||
|
||||
- Bind OpenClaw to localhost or private VLAN by default.
|
||||
- Place a reverse proxy in front of OpenClaw for TLS, auth, and rate limits.
|
||||
- Enforce authentication on every non-health endpoint.
|
||||
- Disable debug/dev modes in persistent environments.
|
||||
- Restrict outbound egress to only required providers (LLM API, telemetry sink, package mirror).
|
||||
|
||||
Example reverse proxy controls to enforce:
|
||||
|
||||
- TLS 1.2+ only
|
||||
- strict transport security header
|
||||
- request body size limits
|
||||
- request timeout and upstream timeout guardrails
|
||||
- per-IP and per-token rate limiting
|
||||
|
||||
## Protect Secrets and Tokens
|
||||
|
||||
- Store secrets in a vault or platform secret manager, not committed `.env` files.
|
||||
- Rotate provider and admin tokens on a fixed interval and after any incident.
|
||||
- Scope tokens minimally (least privilege, per-service keys).
|
||||
- Scan repos and deployment artifacts for leaked credentials before release.
|
||||
|
||||
Rotation checklist:
|
||||
|
||||
1. Generate replacement key.
|
||||
2. Update runtime secret store.
|
||||
3. Restart or reload OpenClaw.
|
||||
4. Validate request success with new key.
|
||||
5. Revoke old key.
|
||||
|
||||
## Segment Network Access
|
||||
|
||||
Use layered access patterns:
|
||||
|
||||
- **Tier 1 (private):** OpenClaw service port reachable only from app/proxy subnet.
|
||||
- **Tier 2 (operator):** Admin plane reachable only from VPN/Tailscale/WireGuard.
|
||||
- **Tier 3 (public):** Expose only hardened reverse proxy with strict ACLs.
|
||||
|
||||
Do not publish raw OpenClaw service ports directly to the internet.
|
||||
|
||||
## Add Detection and Recovery Paths
|
||||
|
||||
- Centralize auth, error, and audit logs.
|
||||
- Alert on brute-force attempts, token failures, and unusual outbound traffic.
|
||||
- Capture immutable backup snapshots of configs and prompt data retention settings.
|
||||
- Test rollback and restore procedures every release cycle.
|
||||
|
||||
Minimum operational runbook:
|
||||
|
||||
- service restart path
|
||||
- key revocation path
|
||||
- incident isolation path (network block + token disable)
|
||||
- known-good rollback version
|
||||
|
||||
## Validation Checklist
|
||||
|
||||
- All sensitive endpoints require auth and are unreachable without VPN or gateway policy.
|
||||
- Secrets are absent from repo history and plaintext shared directories.
|
||||
- Host firewall default deny is active for inbound traffic.
|
||||
- TLS termination and rate limits are active at ingress.
|
||||
- Rollback drill can restore service within target RTO.
|
||||
|
||||
## Related Skills
|
||||
|
||||
- [openclaw-local-mac-mini](../openclaw-local-mac-mini/) - Local OpenClaw hosting setup
|
||||
- [multi-tenant-llm-hosting](../multi-tenant-llm-hosting/) - Multi-tenant AI isolation patterns
|
||||
- [zero-trust](../../networking/zero-trust/) - Private access and identity-aware network controls
|
||||
Reference in New Issue
Block a user