a6-recipe-mtls

Configure mTLS for Apache APISIX client and upstream connections.

1|2|Updated Mar 6, 2026
One-click install
npx skills add https://github.com/moonming/a6 --skill a6-recipe-mtls
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: a6-recipe-mtls
Source: https://github.com/moonming/a6/tree/main/skills/a6-recipe-mtls
Command: npx skills add https://github.com/moonming/a6 --skill a6-recipe-mtls

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill simplifies the complex process of configuring mutual TLS (mTLS) within Apache APISIX, ensuring secure communication for both client-to-APISIX and APISIX-to-upstream connections.

Core Features & Use Cases

  • Client → APISIX mTLS: Enforces client certificate verification for incoming requests.
  • APISIX → Upstream mTLS: Configures APISIX to present a client certificate when connecting to backend services.
  • End-to-End mTLS: Enables comprehensive security across the entire communication path.
  • Use Case: Securely expose an internal API by requiring clients to authenticate with certificates, while also ensuring APISIX communicates with sensitive backend services using its own trusted certificate.

Quick Start

Configure APISIX to require client certificates for the domain api.example.com by running the provided a6 ssl create command.

Frequently Asked Questions about a6-recipe-mtls

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure mutual TLS in Apache APISIX?

Configuring mutual TLS in Apache APISIX involves creating SSL resources using a6 CLI commands to manage certificates for both client-to-APISIX and APISIX-to-upstream communication paths. This enforces certificate verification for incoming requests.

What is the best way to secure APISIX to upstream communication with mTLS?

Securing APISIX to upstream communication with mTLS is done by configuring APISIX to present a client certificate when connecting to backend services. This ensures upstream TLS authentication and protects sensitive internal APIs.

Does APISIX support end-to-end mTLS for both client and upstream traffic?

Yes, APISIX supports end-to-end mTLS by enforcing client certificate verification for incoming requests and simultaneously configuring APISIX to authenticate with upstream services using its own trusted certificate.

How do I enforce client certificate verification for a specific domain in APISIX?

Enforcing client certificate verification for a specific domain in APISIX requires running the a6 ssl create command. This provisions the SSL certificate resource needed to require client authentication for that domain.

Can I manage SSL certificates for APISIX using the a6 CLI?

Yes, SSL certificate management for APISIX is handled using the a6 CLI. It provides commands to create and update SSL resources, enabling comprehensive security configuration including mutual TLS.

When do I need to set up mutual TLS for my APIs?

Setting up mutual TLS is necessary when you need to securely expose internal APIs by requiring clients to authenticate with certificates, ensuring trusted communication across the entire client-to-upstream path.