Skip to content

Guide · Agent skill

How to use the Configuring TLS 1.3 Securely agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

This is an agent skill, a folder of instructions and scripts that a Claude agent loads when your request matches its description. The skill covers configuring TLS 1.3 (RFC 8446), the current version of the protocol that encrypts traffic between browsers, apps and servers. After this guide you will know how to install the skill, ask for TLS 1.3 help in plain language, and review what the agent produces before you deploy anything.

Configuring TLS 1.3 Securelymukul975/Anthropic-Cybersecurity-Skills · Apache-2.0

Quick start

  1. 1Check OpenSSL. Run openssl version and confirm it reports 1.1.1 or newer.
  2. 2Install Python dependencies. Install Python 3.8 or newer, then run pip install cryptography.
  3. 3Install the skill. Unzip the downloaded ZIP into ~/.claude/skills/ or a project's .claude/skills/ folder, or upload it under Settings → Capabilities → Skills in the Claude apps.
  4. 4Ask in plain language. Describe your TLS 1.3 goal and name the server you own or are authorized to test.
  5. 5Review the draft. Check any generated nginx, Apache or Python configuration against the skill's template and your compliance needs.
  6. 6Validate. Test the change with openssl s_client and, optionally, testssl.sh, then work through the validation checklist.

What the skill makes the agent do

The skill gives the agent a structured workflow for TLS 1.3 on servers. It covers choosing TLS 1.3 cipher suites and key-exchange groups, disabling TLS 1.0 and 1.1, and validating the result with openssl s_client and testssl.sh. Its reference material includes nginx and Apache configuration templates and a Python client template that uses the ssl module.

The skill also includes Python scripts that connect to a server and report which TLS versions and ciphers it accepts, and that can generate sample configuration files.

  • Configure TLS 1.3 on nginx and Apache web servers
  • Implement TLS 1.3 in Python applications using the ssl module
  • Validate configurations with openssl and testssl.sh
  • Check that legacy TLS versions and weak cipher suites are rejected
  • Follow a validation checklist, including OCSP stapling and certificate chain checks

Install the skill from the ZIP file

Download the skill ZIP from this page and unzip it. To make the skill available to every project you work on, place the unzipped folder in ~/.claude/skills/. To limit it to one project, place it in that project's .claude/skills/ folder instead.

If you use the Claude apps, you can instead upload the skill under Settings → Capabilities → Skills.

  • Personal skills: ~/.claude/skills/
  • Project skills: .claude/skills/ inside your project
  • Claude apps: Settings → Capabilities → Skills, then upload

Install the requirements

The scripts need Python 3.8 or newer, the cryptography Python library, and OpenSSL 1.1.1 or newer. testssl.sh is optional and is used for vulnerability scanning. You must also have authorization to test any target server before running the scripts against it.

  • Python 3.8+
  • OpenSSL 1.1.1 or newer (check with openssl version)
  • cryptography library, installed with pip install cryptography
  • Optional: testssl.sh for vulnerability scanning
pip install cryptography

Trigger the skill with natural requests

You do not need to name the skill. Describe the task in plain words that match its purpose: deploying or hardening TLS 1.3, or testing a server for common TLS misconfigurations. Name the server software and the server you own or are authorized to test so the agent can tailor its steps.

Good requests state the goal and the context. The agent will then follow the skill's checklist and ask for details it needs.

  • "Help me turn on TLS 1.3 and disable TLS 1.0 and 1.1 in our nginx config."
  • "Check which TLS versions and ciphers my API at api.example.com accepts. I own this server."
  • "Generate a sample Apache TLS 1.3 configuration and explain each directive."
  • "Review our TLS setup against the TLS 1.3 validation checklist."

Review the output before you deploy

The skill gives general guidance. Its scripts may not match every server setup, so treat generated configurations as drafts. Test changes in a lab or staging environment first, then confirm the result with openssl s_client and, if you use it, testssl.sh.

Use the validation checklist as your acceptance test. It asks whether the TLS 1.3 handshake completes, whether only approved cipher suites are offered, whether perfect forward secrecy is enforced, whether TLS 1.0 and 1.1 are rejected, whether OCSP stapling works, and whether the certificate chain is complete.

  • Test in a lab or staging environment before production
  • Confirm TLS 1.0 and 1.1 are rejected
  • Confirm the certificate chain is valid and complete
  • Run testssl.sh and resolve any reported vulnerabilities
openssl s_client -connect example.com:443 -tls1_3

Safety notes: scripts and network access

This skill runs scripts and uses the network. The scripts actively connect to and probe the servers you point them at. Only run them against servers you own or have written permission to scan. Unauthorized scanning can break HTTPS for real visitors and may be illegal.

Mistakes in a TLS configuration can stop HTTPS working for all visitors. Do not deploy a generated configuration without reviewing it, and keep a rollback copy of your current config.

  • Only scan servers you own or are authorized to test
  • Review scripts before running them
  • Keep a rollback copy of your existing server configuration
  • Limit 0-RTT early data to idempotent requests, since it is vulnerable to replay attacks

What people use it for

  • Turning on TLS 1.3 and disabling TLS 1.0 and 1.1 on an nginx web server
  • Reviewing an Apache configuration for weak cipher suites and missing HSTS
  • Checking which TLS versions and ciphers an API endpoint you own accepts
  • Learning how TLS 1.3 differs from TLS 1.2, including the 1-RTT handshake and mandatory perfect forward secrecy

Frequently asked questions

How do I install the configuring-tls-1-3-for-secure-communications skill?

Download the skill ZIP from this page and unzip it into ~/.claude/skills/ for personal use or into a project's .claude/skills/ folder. In the Claude apps, you can instead upload it under Settings → Capabilities → Skills.

What do I need to run this skill?

The source lists Python 3.8+, the cryptography Python library installed with pip install cryptography, and OpenSSL 1.1.1 or newer. testssl.sh is optional for vulnerability scanning, and you need authorization to test any target server.

Is this skill free?

The skill is licensed under Apache-2.0. The source does not list pricing, so check the license text for terms.

Does the skill change my server automatically?

The source describes guidance, templates and scripts that connect to servers and report results. It does not say the skill deploys changes itself, so review and apply any configuration yourself and test it first.

Can I use this skill to scan a server I do not own?

No. The scripts actively connect to and probe servers, so only use them on servers you own or have written permission to test.

How does it compare with other TLS tools like sslyze or testssl.sh?

The skill focuses on a structured TLS 1.3 checklist with templates and validation steps. The reference material mentions sslyze as a comprehensive TLS scanner and testssl.sh for vulnerability scanning, so you can use those tools directly if you only need a scanner.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Engineers hardening a web server or API, security staff auditing servers they are authorized to test, and students learning TLS 1.3 will get a repeatable checklist from this skill. Non-technical users who need a finished, ready-to-deploy configuration should pick a managed service or an expert instead, because a wrong TLS setting can break HTTPS for every visitor.

Download the skill