From d8b59c8e4814b06c1cc79f77d4bb011644eb0b3c Mon Sep 17 00:00:00 2001 From: Carl Tashian Date: Wed, 30 Sep 2026 17:12:40 -0700 Subject: [PATCH] Add tutorial: send Claude Code telemetry through a device-authenticated proxy Collect Claude Code OpenTelemetry on a private collector behind a Caddy proxy that only accepts connections from devices holding a hardware-bound Smallstep credential. The Smallstep Agent forwards a local port through the proxy, so Claude Code sends OTLP to localhost. Co-Authored-By: Claude Opus 5.5 (1M context) --- graphics/proxy-otel.png | Bin 0 -> 94243 bytes manifest.json | 4 + tutorials/protect-claude-code-telemetry.mdx | 334 ++++++++++++++++++++ 3 files changed, 338 insertions(+) create mode 100644 graphics/proxy-otel.png create mode 100644 tutorials/protect-claude-code-telemetry.mdx diff --git a/graphics/proxy-otel.png b/graphics/proxy-otel.png new file mode 100644 index 0000000000000000000000000000000000000000..0d3e4dcdd1e908af557587e41527a6e046169de7 GIT binary patch literal 94243 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 z zCtxecVaWADdfiFCWQ8-N2*C1@w2by8F33Lmosl=-4ke05dt`ctLPPMd;Gi8`g-nNh z>wU2lSzqHo1;RuR`UIbMrl6XZcCiD-TgE5>(mg(xrX>HO;gU(1MK#lK6-V3Zo`>0b zbd+W70+^L?l&uu}QOd!0sHB&ybJfAV=Pw6!lQj(jO06udZedg?GqZdSfX#(mx5!&W zf7>Q_Q3$7}=nbO=mp7vB?Qct`%;U!U3(dBPJA25hwlr;6 z4fu7Yry9>Kwt|i>ZwJqIVqW`R>+fx?^vG>`LcIjeCuVT8a_kv<&*8L%pioBQ%3**Y zEI7T?=I3xotZmgR$L=fwi!-}=d4?EvvtJ)r^YH@+3?i$>wMvE7M4NTc%__CN!8K^z zF9lN!s=dxPd6h*@6lWve93Pt9&)q=YGopkNw=EFp)b6)kx^fvjfm@R4F4Cy_V&M>} znCmRo#|G)SukDL1LZcNqWCcM)nXq)H(<nRieyvA=f$8vZ%`0TlZ2Lfq*qObLh&wRS!3yXSl}4IYf#j!j5R@G!rE z4L(=otSbkR^1M*QMEfP8jpp!UcV}t<7FI7PkWN;?4c^j3l|3LLHJFkq(&8hlYe~7_ zh0L`^SkgQE;?n@xsq$MSR4qpERy0pj590~ z@kjFj2B6ca!CIpn8Fy@qrQSXHbWu`Qv{r1kM5kJt&PXljLkn|rPTJ8!>Z!oAz(8F07kMrp*6vwcnG@g@mG;yfrS0H2SzEoc&FQX~g zc5xkmaa`NTVkiMGxpL$4oD+VNE<=NzWAS=l{zJ#qlWj5{_}U+e@op4h=BVJqtX}W6aV8< z^O&iL`ONv1Msqs#ZVj&+9;!Zk+%A|fzqFiZP^mmm3+GrXkSJxSDR;X=zx=ZAoUc1f zx<6mjw#L`cF*=Q~O`!3D<4mRR+NOLAGbk)S!UF;8!=)Bg4tt*Li##pu;SU)_dJ?tP zMJ9-7NIe2P7vvQCGQn;w{{Hb@cX)-S@%yzFn4vjqKR#_qW@$Fb1azciYH=-d^k{Rzh`DiKYgsCL@6nKb`nd)8$r8lNOPA~uKIg1n5%97!rsPzjM{rtK z0<3eI*!?^O<~c2}&f@?%`0T@<;01!W&DmYDO}x!rVRP<~T;+Z*-aahkN<2E{r$tS_ zV+$BF<;=<&RHuqP4zo)|J!*|`;Ro51*n)*yP2I`fWi*s{DEpM~ZeIx08V++LPj;Bh zi4m9BhHj?0V6>3&PSsQYik&^iwu!@?yb0&Tlez6aJ%C>Rwg1??{yw~MQGvAo{#2?Zo%o*Bg0#K8|$*10!0O0m4Cwo;GI(+LFCX`6tr z=)wSufGwETE(l3iqk|cn$QlyPLww)48$gz?n$h1A5)vY6?nk!xQ|m6;xGpI%@!Ri= zHp^=XNnPC*^-uI_ywct!>%R9MRnzfZ_C~3Ls-r(+10dl?Mf>2w%#9>DXF+3{&j2p< z+qdGL9~C#2{EC&K@b(ED9fo@C$I46ALY@ZaU8B>t97hv&*#hCe{^dJnu)L2KFA19O z6!h0nD{#TgEu(W+SsI+9k-V_OKD&BYMBq~c!H@f& z6fPxksG)8X2XXmdE+B&Z65tcPpNl~WTZj(3<72OH+5-Q5dlLt&C}nLxSFz0;dUN+7 z6^3%q*cc2Stpk7-_3sWCW=LxNZ|kleQG@mGOAK`FC67no-3$`w>RQZ|6A*YP!FQ9^ zSA>vfpsu^|1w8+=$Gf7P4N@b^XX_jP{&E@^SP7XA`z6}k^JX_T@!ckS`RC|0?4K2T z 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 api_headers +set -o history +``` + +Next, find your Accounts authority: + +- In the Smallstep console, visit [**Certificate Manager → Authorities**](https://smallstep.com/app/?next=/cm/authorities) and open the authority detail page. +- Copy the **Authority ID** shown on the page. +- Download the **Root Certificate** and save it as `accounts_root_ca.crt`. + +Next, create the credential with the [Create Credential](https://gateway.smallstep.com/v2026-05-01/operations/PostCredentials) endpoint: + +```bash +curl -sH @api_headers --request POST \ + --url https://gateway.smallstep.com/api/credentials \ + --header 'Accept: application/json' \ + --header 'Content-Type: application/json' \ + --header 'x-smallstep-api-version: 2026-05-01' \ + --data @- <<'EOF' | jq +{ + "slug": "claude-otel", + "certificate": { + "type": "X509", + "authorityID": "[your Accounts authority ID]", + "fields": { + "commonName": { + "deviceMetadata": "smallstep:identity" + }, + "sans": { + "deviceMetadata": ["smallstep:identity"] + }, + "extendedKeyUsage": ["clientAuth"] + } + }, + "key": { + "protection": "HARDWARE_ATTESTED" + }, + "managementMode": "agent", + "policy": { + "assurance": ["high"], + "operatingSystem": ["macOS"] + } +} +EOF +``` + +Here's what the fields mean: + +- **`slug: "claude-otel"`** names the credential. You'll pass this name to the agent's `proxy` command later. +- **`fields.commonName`** and **`fields.sans`** put the email address of the device's assigned user in the certificate, so Caddy can log devices and users. +- **`extendedKeyUsage: ["clientAuth"]`** limits the certificate to TLS client authentication. +- **`key.protection: "HARDWARE_ATTESTED"`** generates the private key in the device's + Secure Enclave or TPM, where it can never be exported. +- The **`policy`** section selects which devices receive this credential; + here, high-assurance macOS devices. + +Within a few minutes, the agent on each matching device will request a certificate. +To confirm, run the following on a device: + +```bash +/Applications/SmallstepAgent.app/Contents/MacOS/SmallstepAgent status +``` + +Output: + +``` +Certificates: + Device: ✔ (CN=urn:ak:sha256:...) + claude-otel (claude-otel) ✔ +``` + +# Step 2: Configure the collector and proxy + +## Run an OTel collector + +If you haven't already, install your preferred OpenTelemetry Collector on your private server. + +## Install Caddy with the forward proxy plugin + +The standard Caddy build does not include forward proxy support. +It's available as the [`forwardproxy`](https://github.com/caddyserver/forwardproxy) plugin. + +On a Debian or Ubuntu server, [install Caddy](https://caddyserver.com/docs/install#debian-ubuntu-raspbian) from the official package repository: + +```bash +sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl +curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg +curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list +sudo apt update +sudo apt install caddy +``` + +Then add the plugin, which replaces the `caddy` binary with a custom build: + +```bash +sudo caddy add-package github.com/caddyserver/forwardproxy +caddy list-modules | grep forward_proxy +``` + +The second command should print `http.handlers.forward_proxy`. + + +
+ Upgrading the caddy package replaces your custom binary with the standard build, + which does not include the plugin. + Run caddy add-package again after each upgrade, + or sudo apt-mark hold caddy to hold the package at its current version. +
+
+ +## Configure Caddy + +Caddy will use the Accounts root certificate to verify client certificates. + +First, copy the `accounts_root_ca.crt` file to your Caddy server as `/etc/caddy/accounts_root_ca.crt` + +Then, replace `/etc/caddy/Caddyfile` with the following, +substituting your proxy's DNS name and your collector's address: + +``` +{ + servers { + strict_sni_host insecure_off + } +} + +proxy.example.com, :443 { + tls { + client_auth { + mode require_and_verify + trust_pool file /etc/caddy/accounts_root_ca.crt + } + } + + log + + route { + forward_proxy { + ports 4318 + acl { + allow otel.internal.example.com + deny all + } + } + } +} +``` + +Here's what this configuration does: + +- **`client_auth`** rejects any TLS connection that doesn't present a valid certificate from your Accounts authority. + Unauthenticated clients never reach the proxy. +- **`proxy.example.com, :443`** gets a Web PKI certificate for your proxy's name, + and answers requests for any host. This matters because a `CONNECT` request names its *destination* (here, `otel.internal.example.com:4318`), not the proxy. +- **`strict_sni_host insecure_off`** lets the proxy accept requests whose destination differs from the TLS server name. + It's safe to disable strict SNI host checking because this server will have a single forward proxy route, and every connection must present a client certificate. +- **`ports 4318`** and **`acl`** allow tunnels to your collector's OTLP/HTTP port only. + The plugin blocks private addresses by default, so you must allow your collector explicitly, + by hostname, IP address, or subnet. +- **`log`** writes an access log entry for every tunnel, including the client certificate's common name. + +Validate the configuration and reload Caddy: + +```bash +caddy validate --config /etc/caddy/Caddyfile +sudo systemctl reload caddy +``` + +# Step 3: Configure clients + +On each device, the Smallstep Agent forwards a local port through Caddy to your collector, +and Claude Code sends telemetry to that local port. + +## Forward a local port to the collector + +The agent's `proxy` command with the `--forward` flag listens on a local address +and tunnels every connection it accepts to a fixed destination, similar to `ssh -L`. + +Test it in a terminal: + +```bash +/Applications/SmallstepAgent.app/Contents/MacOS/SmallstepAgent proxy \ + --workload-name claude-otel \ + --relay https://proxy.example.com \ + --system-roots \ + --forward 4318:otel.internal.example.com:4318 +``` + +The flags are: + +- **`--workload-name claude-otel`** uses the credential you created in Step 1. +- **`--relay https://proxy.example.com`** is the URL of your Caddy proxy. +- **`--system-roots`** verifies the proxy's server certificate against the operating system's Web PKI trust store. Otherwise, the agent only trusts your Accounts authority. +- **`--forward 4318:otel.internal.example.com:4318`** is the destination, as resolved by the proxy. + +In another terminal, send an empty batch of events: + +```bash +curl -X POST http://127.0.0.1:4318/v1/logs \ + -H 'Content-Type: application/json' \ + --data '{"resourceLogs":[]}' +``` + +The collector replies with `{"partialSuccess":{}}`. +Press `Ctrl+C` to stop the forwarder. + +## Run the forwarder in the background + +To keep the forwarder running, install it as a launchd agent for each user. +Save the following as `~/Library/LaunchAgents/com.example.otel-forward.plist`: + +```xml + + + + + Label + com.example.otel-forward + ProgramArguments + + /Applications/SmallstepAgent.app/Contents/MacOS/SmallstepAgent + proxy + --workload-name + claude-otel + --relay + https://proxy.example.com + --system-roots + --forward + 4318:otel.internal.example.com:4318 + + RunAtLoad + + KeepAlive + + + +``` + +Then load it: + +```bash +launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.example.otel-forward.plist +``` + +## Configure Claude Code + +Point Claude Code's OTLP exporters at the local forwarder. +To apply the settings to every user on a device, +put them in the `env` block of Claude Code's [managed settings](https://code.claude.com/docs/en/managed-settings) file, +`/Library/Application Support/ClaudeCode/managed-settings.json`, +or deliver the same keys through your MDM: + +```json +{ + "env": { + "CLAUDE_CODE_ENABLE_TELEMETRY": "1", + "OTEL_METRICS_EXPORTER": "otlp", + "OTEL_LOGS_EXPORTER": "otlp", + "OTEL_EXPORTER_OTLP_PROTOCOL": "http/protobuf", + "OTEL_EXPORTER_OTLP_ENDPOINT": "http://127.0.0.1:4318" + } +} +``` + +The endpoint uses plain `http`, because traffic only leaves the device inside the agent's mutually authenticated TLS tunnel. + +See [Claude Code's monitoring documentation](https://code.claude.com/docs/en/monitoring-usage) for the full list of metrics, events, and settings. + +# Verify and troubleshoot + +- Start a new Claude Code session and send a prompt. + Events arrive within seconds, and metrics every 60 seconds by default. + On the collector, run `sudo journalctl -u otelcol -f` and look for metrics named `claude_code.*` and events such as `user_prompt` and `api_request`. +- On the Caddy server, run `sudo journalctl -u caddy -f`. + Each connection from the forwarder opens a tunnel, logged as a `CONNECT` request with `"host"` set to your collector and `"client_common_name"` set to the device's user. +- If nothing arrives, start Claude Code with `claude --debug-file /tmp/claude-debug.log` and look for `[3P telemetry]` errors in that file. + A connection error means the forwarder isn't running; check it with `launchctl print gui/$(id -u)/com.example.otel-forward`. +- **`endpoint name "proxy" not found`**: the agent has no `proxy` credential. + Run `SmallstepAgent status`, and confirm the device matches the credential's policy (assurance level and operating system). + See the [agent troubleshooting guide](../platform/troubleshooting-agent.mdx). +- **`x509: certificate signed by unknown authority`**: add `--system-roots` to the `proxy` command. +- **`CONNECT failed with status: 403 Forbidden`**: the destination's address or port isn't allowed by the `ports` and `acl` settings in your Caddyfile. +- **`CONNECT failed with status: 421 Misdirected Request`**: add `strict_sni_host insecure_off` to your Caddyfile's global options.