Skip to content

11notes vs Sockguard

11notes takes the most opinionated approach to socket security: by default it allows most Docker API reads except a fixed set of sensitive endpoints and blocks every write, and an opt-in containers-only mode allows container start and stop and nothing else. Sockguard takes a different approach: a configurable default-deny policy engine for reads and controlled writes, with per-client policies, signed bundles, and image trust verification.

11notes — ActiveSockguard — Active

Feature Comparison

Here's how we compare on the features that matter most.

Feature11notesSockguard
Method filteringYesYes
Read-only focusYes (read-only by default; opt-in containers-only mode allows start/stop)Configurable (read + controlled write)
Zero-configYes (no file needed)Partial (Tecnativa-compat env vars work with no file; YAML needed beyond that)
Attack surfaceMinimal (read-only by default)Broader (configurable)
Request body inspectionNoYes (12+ resource types)
Per-client policiesNoCIDR + labels + cert selectors + unix peer
Write API controlLimited (blocks writes by default; opt-in mode allows container start/stop only)Yes (default-deny + granular rules)
Read-side redactionPartial (targets 7 risky GETs; the image-export pattern misses both real export shapes; its image-inspect misfire, 11notes #12, was fixed in v2.1.6)Full (visibility rules + JSON field redaction)
Signed policy bundlesNoYes (cosign keyed + keyless, Rekor)
Container image trustNoYes (cosign + enforce / warn modes)
Prometheus metricsNoYes (opt-in, socket-proxy request metrics)
Rate limitsNoYes (per-profile token-bucket)
Audit log schemaNoYes (opt-in, JSON schema + reason codes)

Key Differentiators

What we built that 11notes doesn't cover.

Configurable Default-Deny

11notes is read-only by default, and its opt-in containers-only mode allows nothing beyond container start and stop. Sockguard starts default-deny and lets you open exactly the operations you need with explicit rules, so CI can run containers while monitoring only reads metrics.

Full Read-Side Redaction

11notes targets 7 risky GET endpoints, but its image-export pattern matches neither the single-image nor the multi-image export request shape, and the same style of pattern misfired on image inspect in 11notes issue #12 (fixed in v2.1.6). Sockguard goes further with visibility rules and JSON field redaction, so callers only see the labels, environment variables, and mount paths their policy allows.

Per-Client Policies

11notes applies the same mode to every caller, read-only or containers-only. Sockguard assigns different policies per CIDR range, Docker label, TLS certificate selector, or Unix peer credential.

Container Image Trust

Sockguard enforces image signatures at deployment time — blocking container or swarm-service creates whose images aren't signed or don't match a trusted digest. 11notes has no image-trust layer.

Signed Policy Bundles

Sockguard verifies policy files with cosign keyed or keyless signatures and Rekor inclusion. Policy tampering is caught before any request is evaluated.

Prometheus Metrics

Sockguard exports socket-proxy request metrics, deny counts, and latency histograms. 11notes has no observability layer beyond container logs.

Coming from 11notes?

Start with Sockguard's read-only preset, explicitly allow only the reads your client needs, then open write operations with rules scoped to trusted profiles. Unlike 11notes' fixed allow-most-reads policy, Sockguard requires you to choose the permitted surface.

Quick start
$ docker run -d \
  --name sockguard \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -v /var/run/sockguard:/var/run/sockguard \
  -e SOCKGUARD_LISTEN_SOCKET=/var/run/sockguard/sockguard.sock \
  codeswhat/sockguard

Ready to try Sockguard?

Default-deny, Apache-2.0, no SaaS required. Drop it in front of your socket in minutes.