C.W.K.
Stream
Lesson 04 of 06 · published

Zero-Trust Security Model

~18 min · remote, security, encryption, audit

Level 0🌱 Novice
0 XP0/70 lessons0/11 achievements
0/120 XP to next level120 XP to go0% complete

End-to-end, by architecture

Remote's security model is zero-trust at every layer: never trust, always verify. No implicit trust based on network position. Every connection is cryptographically authenticated. Session payloads are encrypted with AES-256-GCM before they touch the transport — Anthropic's coordination layer routes ciphertext, not plaintext code.

Three layers stack: transport (SSH or TLS 1.3+), authentication (SSH key for machine-to-machine, Anthropic auth for the Claude session), authorization (per-operation policy: allowed destinations, protected paths, max payload size, network allowlist).

Audit logging is JSONL, designed for SIEM ingest. Each event records timestamp, source, destination, payload size, payload hash, user. SOC 2 Type II compliance is a checkbox: enable the log, ship to your audit pipeline, retain per policy.

Code

remote-policy.json — production-shaped·json
{
  "remote": {
    "allowedDestinations": ["my-dev-server", "ci-runner-01"],
    "requireConfirmationForPaths": ["/etc", "/var", "/usr"],
    "maxPayloadSizeMB": 50,
    "allowNetworkAccessOnRemote": false,
    "remoteNetworkAllowlist": [
      "api.anthropic.com",
      "registry.npmjs.org",
      "github.com"
    ],
    "sessionTimeout": 3600,
    "auditLog": {
      "enabled": true,
      "path": "~/.claude/remote-audit.jsonl",
      "includePayloadHashes": true,
      "retentionDays": 90
    }
  }
}
Verify the encryption stack·bash
claude remote status --verbose

# Output:
# Transport:    SSH (OpenSSH 9.x)
# Encryption:   AES-256-GCM (payload) + SSH protocol (transport)
# Key exchange: ECDH curve25519
# Integrity:    HMAC-SHA2-512

# Lock down key permissions (SSH refuses wrong perms)
chmod 600 ~/.ssh/claude_remote
chmod 644 ~/.ssh/claude_remote.pub

External links

Exercise

Write a remote-policy.json that locks Remote down for your environment: allowed destinations, network allowlist, max payload size, audit log path. Test that an unauthorized destination is rejected. Tail the audit log during a real handoff.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.