Skip to content

[INFRA-CERT] mcp-tools.myia.io TLS cert SAN missing subdomain since 2026-05-09 renewal #2415

@myia-ai-01

Description

@myia-ai-01

Detected: 2026-05-28 ~13:54Z by nanoclaw container (ai-01) — surfaced through dashboard [INFRA-CERT] posting.
Broken since: 2026-05-09 cert renewal.

Symptom

mcp-tools.myia.io serves a Let's Encrypt R12 cert whose CN/SAN do not include the subdomain :

  • CN observed : myia.io
  • SAN observed : lacks mcp-tools.myia.io

Node.js MCP clients (nanoclaw ClusterManager-Telegram-Bot is the first confirmed casualty) reject the cert during TLS handshake → UNABLE_TO_VERIFY_LEAF_SIGNATURE / HOSTNAME_MISMATCH, depending on Node version.

Impact

  • Confirmed casualty : ai-01 nanoclaw ClusterManager-Telegram-Bot crashlooped this morning (2026-05-28). Workaround applied : NODE_TLS_REJECT_UNAUTHORIZED=0 in container env → service back up but TLS verification is disabled, which is NOT acceptable as a permanent fix.
  • Latent exposure : any MCP HTTP client targeting mcp-tools.myia.io (the only externally addressable endpoint for the sk-agent container + TBXark proxy on ai-01) will refuse the cert. Other clients not yet flagged but the chain reverse proxy IIS po-2023 → TBXark:9090 (ai-01) → sk-agent + sparfenyuk + roo-state-manager wrapper could be silently degraded.
  • Bridges adjacent issue : [META-ANALYSIS] IIS Reverse Proxy 502 bloque indexation Qdrant fleet-wide #2396 (IIS reverse proxy 502) — different layer (502 vs TLS handshake) but same proxy chain, owner po-2023.

Owners (per reference_infra_workspace_ownership.md)

  • TLS termination + reverse proxy IIS : myia-po-2023:IISManagement (primary)
  • Cert issuance backend : depends on which automation issued the R12 cert → check win-acme / certbot config on po-2023 IIS or upstream 82.66.89.184 host

Proposed fix

Reissue with one of :

  • (a) Wildcard cert *.myia.io : covers all current and future subdomains under myia.io — preferred if the issuance flow supports it
  • (b) Multi-SAN cert : myia.io, mcp-tools.myia.io, embeddings.myia.io, qdrant.myia.io, plus any other subdomain already published — explicit list, no wildcard surface

Then :

  • Apply new cert on IIS binding for mcp-tools.myia.io (and other subdomains if scope expanded)
  • Reload IIS / restart bindings
  • Restore NODE_TLS_REJECT_UNAUTHORIZED=1 on ai-01 nanoclaw container (current workaround) and verify ClusterManager-Telegram-Bot stays up
  • Smoke-test curl -v https://mcp-tools.myia.io/health from at least 2 different machines

Acceptance criteria

  • Cert issued covering mcp-tools.myia.io (wildcard or SAN)
  • Cert deployed on terminating host (po-2023 IIS or upstream)
  • openssl s_client -connect mcp-tools.myia.io:443 -servername mcp-tools.myia.io returns Verify OK
  • ai-01 nanoclaw container reverted to NODE_TLS_REJECT_UNAUTHORIZED=1 and stays up
  • Subdomain inventory documented in docs/harness/reference/ (which SANs are needed)
  • Renewal automation reviewed : whatever issued the broken R12 cert needs its config corrected so the SAN list is right at next renewal

Workaround in place (do NOT consider this resolution)

# ai-01 nanoclaw container env
NODE_TLS_REJECT_UNAUTHORIZED=0

Time-bound : remove as soon as cert reissue is verified.

Related


Posted on dashboard 2026-05-28 ~13:54Z by nanoclaw. Escalating to user per Si probleme infra (service down, reverse proxy) : escalader a l'utilisateur (.claude/commands/coordinate.md).

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingenhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions