This specification is maintained by the AgentRules Working Group. Have enhancements or want to claim maintainership?Submit Specification →
devopscritical PriorityID: cilium-ebpf-inkernel-mtls-attestation-standard

Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard

Mandates cryptographically enforced workload-to-workload mutual authentication via Cilium eBPF datapath attestation, eliminating user-space sidecar proxy overhead. Enforces SPIFFE-based identity validation directly integrated into the kernel socket layer alongside IPsec or WireGuard transparent node encryption.

Prohibited Anti-Pattern: Deploying User-Space Envoy Sidecars for L3/L4 mTLS or Permitting Unauthenticated IP-Based NetworkPolicies

Export Ready-to-Drop Configuration

Select format below to copy code or download file directly.

---
description: Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard - Mandates cryptographically enforced workload-to-workload mutual authentication via Cilium eBPF datapath attestation, eliminating user-space sidecar proxy overhead. Enforces SPIFFE-based identity validation directly integrated into the kernel socket layer alongside IPsec or WireGuard transparent node encryption.
globs: deploy/**/*.yaml, k8s/**/*.yaml, charts/**/*.yaml, manifests/**/*.yaml, terraform/**/*.tf
alwaysApply: true
verified_by: "agentrules.org"
license: "CC-BY-4.0"
source: "https://agentrules.org/rules/cilium-ebpf-inkernel-mtls-attestation-standard"
---

# Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard

> **Severity**: CRITICAL | **Category**: devops
> **Anti-Pattern Warning**: Deploying User-Space Envoy Sidecars for L3/L4 mTLS or Permitting Unauthenticated IP-Based NetworkPolicies

## System Constraints
You are a Principal Software Architect and Systems Security Specialist enforcing the Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard. You must mandate cryptographically validated zero-trust workload identities enforced directly inside the eBPF datapath. Prohibit latency-inducing L3/L4 user-space sidecars, unauthenticated CIDR rules, and unencrypted cross-node transport.

## Strict Guidelines
- Engineers MUST ALWAYS enforce 'authentication.mode: required' within CiliumNetworkPolicy resources for inter-workload traffic.
- Engineers MUST NOT rely on userspace sidecar proxies (such as Envoy or Linkerd-proxy) solely for L3/L4 transport encryption and workload authentication.
- Engineers MUST configure Cilium's mutual TLS identity manager with an external SPIFFE/SPIRE trust domain or native X.509 cert-manager issuer.
- Deployments MUST enable kernel-level node-to-node transparent encryption using WireGuard or IPsec at the Cilium CNI daemonset layer.
- Security policies MUST NOT evaluate workload authorization based strictly on IP addresses or pod CIDRs when crossing node boundaries.
- Services MUST attest cryptographic identity before eBPF socket maps (`sockmap`/`sockhash`) redirect packets across kernel namespaces.

## Bad vs Good Implementations
### Enforce In-Kernel Workload Identity Attestation via CiliumNetworkPolicy

#### Bad Antipattern (AI Common Hallucination)
> **Why it fails**: This policy validates source workloads using Cilium numeric security IDs mapped to ephemeral IP addresses, without demanding cryptographic identity attestation (authentication.mode). If an IP collision or pod identity synchronization lag occurs, unauthenticated traffic can breach the socket.
```yaml
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
  name: secure-backend-ingress
  namespace: production
spec:
  endpointSelector:
    matchLabels:
      app.kubernetes.io/name: payment-service
  ingress:
  - fromEndpoints:
    - matchLabels:
        app.kubernetes.io/name: checkout-frontend
    toPorts:
    - ports:
      - port: "8443"
        protocol: TCP
      # FLAW: Missing cryptographic authentication assertion.
      # Traffic relies purely on eBPF security labels derived from IP metadata,
      # which does not mandate mTLS identity handshakes or cryptographically
      # attested certificates across node boundaries.
```

#### Production Standard (Correct)
> **Standard**: Explicitly declares 'authentication.mode: required'. The eBPF kernel datapath traps unauthenticated flows and triggers node-local cryptographic identity verification (via SPIFFE/SPIRE attestation certs) before allowing packets to pass through the BPF socket layer.
```yaml
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
  name: secure-backend-ingress
  namespace: production
spec:
  endpointSelector:
    matchLabels:
      app.kubernetes.io/name: payment-service
  ingress:
  - fromEndpoints:
    - matchLabels:
        app.kubernetes.io/name: checkout-frontend
    authentication:
      mode: required
    toPorts:
    - ports:
      - port: "8443"
        protocol: TCP
```

### Cilium Helm Configuration for In-Kernel mTLS and Transparent Encryption

#### Bad Antipattern (AI Common Hallucination)
> **Why it fails**: Omits transparent kernel encryption and disables the SPIRE mutual authentication engine, preventing in-kernel identity attestation and exposing raw packets to intermediate network nodes.
```yaml
# Cilium Helm values anti-pattern
encryption:
  enabled: false
authentication:
  mutual:
    spire:
      enabled: false
# FLAW: Disables transparent node-to-node encryption and mutual authentication,
# forcing applications to implement ad-hoc user-space sidecars.
```

#### Production Standard (Correct)
> **Standard**: Enables kernel-level WireGuard transport encryption across all nodes and configures SPIRE-driven mutual identity attestation natively in the Cilium control plane, eliminating userspace sidecar bottlenecks.
```yaml
# Cilium Helm values production standard
enryption:
  enabled: true
  type: wireguard
  nodeEncryption: true
authentication:
  mutual:
    spire:
      enabled: true
      adminSocketPath: /run/spire/sockets/agent.sock
routingMode: native
ipv4NativeRoutingCIDR: 10.244.0.0/16
```

Recommended Agent Skills (askills.dev)

Ready-to-use executable skill functions tailored to this stack.

Architectural Specification & Invariant Rationale

Architectural Invariant Design: Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard

Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard defines an industrial-grade behavioral standard for devops engineering. Mandates cryptographically enforced workload-to-workload mutual authentication via Cilium eBPF datapath attestation, eliminating user-space sidecar proxy overhead. Enforces SPIFFE-based identity validation directly integrated into the kernel socket layer alongside IPsec or WireGuard transparent node encryption. Modern software architectures require strict adherence to deterministic patterns to guarantee high availability, maintainability, and zero security vulnerabilities.

Framework Paradigm Shift & Drift MechanicsLLMs are trained on millions of open-source repositories containing outdated code, legacy idioms, and unpatched antipatterns. When coding assistants generate implementations for this stack, they default to common statistical tokens: Deploying User-Space Envoy Sidecars for L3/L4 mTLS or Permitting Unauthenticated IP-Based NetworkPolicies Without an explicit system instruction file, developers spend hours debugging silent failures.
Failure Modes & Production Blast Radius

Hazard Analysis: What Breaks Without This Rule

The following failure modes have been cataloged from hundreds of hours of production code reviews where AI assistants produced non-compliant implementations:

Failure ModeAI Symptom (The Anti-Pattern)SeverityProduction Impact & Remedy
AI Hallucination & Deprecation DriftDeploying User-Space Envoy Sidecars for L3/L4 mTLS or Permitting Unauthenticated IP-Based NetworkPoliciesCritical
Violating this industrial standard introduces regression bugs, security risks, and unexpected runtime failures in production.
Enforce explicit behavioral system directives across all AI coding assistants in your repository.
Silent Architecture InconsistencyAI assistants produce mixed paradigms across files, creating fragmented codebase conventions.Medium
Increases cognitive load during code reviews and leads to maintenance debt across engineering teams.
Pin project conventions in .cursor/rules, CLAUDE.md, and AGENTS.md so all team agents follow identical guardrails.
Architectural Directives in Detail

Step-by-Step Production Directives

Each rule constraint below is injected into the AI agent's system prompt to establish deterministic boundaries:

1

Engineers MUST ALWAYS enforce 'authentication.mode

Engineers MUST ALWAYS enforce 'authentication.mode: required' within CiliumNetworkPolicy resources for inter-workload traffic.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
2

Engineers MUST NOT rely on userspace sidecar proxies (such as Envoy or Linkerd-proxy) solely for L3/L4 transport encryption and workload authentication.

Engineers MUST NOT rely on userspace sidecar proxies (such as Envoy or Linkerd-proxy) solely for L3/L4 transport encryption and workload authentication.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
3

Engineers MUST configure Cilium's mutual TLS identity manager with an external SPIFFE/SPIRE trust domain or native X.509 cert-manager issuer.

Engineers MUST configure Cilium's mutual TLS identity manager with an external SPIFFE/SPIRE trust domain or native X.509 cert-manager issuer.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
4

Deployments MUST enable kernel-level node-to-node transparent encryption using WireGuard or IPsec at the Cilium CNI daemonset layer.

Deployments MUST enable kernel-level node-to-node transparent encryption using WireGuard or IPsec at the Cilium CNI daemonset layer.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
5

Security policies MUST NOT evaluate workload authorization based strictly on IP addresses or pod CIDRs when crossing node boundaries.

Security policies MUST NOT evaluate workload authorization based strictly on IP addresses or pod CIDRs when crossing node boundaries.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
6

Services MUST attest cryptographic identity before eBPF socket maps (`sockmap`/`sockhash`) redirect packets across kernel namespaces.

Services MUST attest cryptographic identity before eBPF socket maps (`sockmap`/`sockhash`) redirect packets across kernel namespaces.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
Technical Questions & Answers

Frequently Asked Technical Questions

Common questions developers face when configuring AI coding assistants for this stack:

Q:Why is Cilium eBPF Node-to-Node In-Kernel mTLS Identity Attestation Standard critical for AI coding assistants?

Mandates cryptographically enforced workload-to-workload mutual authentication via Cilium eBPF datapath attestation, eliminating user-space sidecar proxy overhead. Enforces SPIFFE-based identity validation directly integrated into the kernel socket layer alongside IPsec or WireGuard transparent node encryption. Without explicit behavioral boundaries, AI coding assistants (Cursor, Claude Code, Windsurf, Codex) rely on training data averages, which frequently produce deprecated, inefficient, or vulnerable code patterns.

Q:How does adopting this rule prevent AI hallucinations?

This rule explicitly declares what the AI must avoid (Deploying User-Space Envoy Sidecars for L3/L4 mTLS or Permitting Unauthenticated IP-Based NetworkPolicies) and prescribes verified positive examples. Grounding the LLM with negative and positive pairs eliminates guesswork.

Q:Which AI coding environments are supported?

This specification is multi-platform compatible: Cursor (.cursor/rules/*.mdc & .cursorrules), Anthropic Claude Code (CLAUDE.md), Windsurf (.windsurfrules), Codex / Cline (AGENTS.md), and GitHub Copilot (.github/copilot-instructions.md).

Q:Can I combine this rule with other technology stacks?

Yes. Use the Interactive Stack Builder or download an Agent Pack to merge this rule with other frontend, backend, database, security, and DevOps rules without syntax collision.

Open Specification · CC BY 4.0·Free for Personal, Team & Commercial In-Repo Use

Citation & Open Source Attribution Guidelines

This specification is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0). You are completely free to adapt and share this rule in your workspace. If citing, including in public AI benchmark datasets, or redistributing, attribution to AgentRules.org is required.

1 Rule in Stack

Cilium