Security Hardening Checklist
Production hardening for OpenClaw deployments
Production hardening for OpenClaw deployments
This checklist helps you harden OpenClaw for production. Not every item applies to every deployment—personal use on a home machine has different needs than a shared team setup. Use judgement and see the full Security guide for context. For a step-by-step walkthrough that follows this checklist, see Security Hardening Walkthrough.
gateway.auth.mode: "none" when the Gateway is reachable from the network. Use token or other auth.127.0.0.1 or a private IP unless you intentionally expose the Gateway; use a reverse proxy (Caddy, nginx) with TLS for public access.openclaw security audit --deep — Catches gateway.http.no_auth and other issues. Use --fix for auto-fixable items.dmPolicy: "pairing" (default). Unknown senders get a code; approve explicitly.allowFrom to restrict who can message your assistant. Avoid "*" unless you understand the risk.dmPolicy: "open" with proper sandboxing and isolation.sandbox.mode: "non-main" for group chats and untrusted channels so bash/tools run in Docker.--read-only when possible.--cap-drop=ALL to limit capabilities.docker run --read-only --cap-drop=ALL \
-v openclaw-data:/app/data \
openclaw/openclaw:latest
openclaw secrets or SecretRef for API keys. Avoid plaintext in config.