# TLS handshake

Published articles for TLS handshake.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Running a Self-Hosted Tailscale Control Server Behind a Reverse Proxy

DevFeed: [Running a Self-Hosted Tailscale Control Server Behind a Reverse Proxy](<https://devfeed.tech/articles/running-a-self-hosted-tailscale-control-server-behind-a-reverse-proxy-34104.md>)

Original publisher: [Read original article](<https://philipptheserver.com/posts/headscale-behind-traefik-no-h2/>)

Author: Philipp Lehmann (philipp.lehmann@gruppe.ai)

Published: 2026-09-15T07:00:00Z

Content type: tutorial

Language: en

Sources: [Philipp Lehmann](<https://devfeed.tech/sources/philipp-lehmann.md>)

Topics: [tailscale](<https://devfeed.tech/topics/tailscale.md>), [proxy](<https://devfeed.tech/topics/proxy.md>), [traefik](<https://devfeed.tech/topics/traefik.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [TLS handshake](<https://devfeed.tech/topics/tls-handshake.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [Homelab](<https://devfeed.tech/topics/homelab.md>)

Tags: [dns](<https://devfeed.tech/tags/dns.md>), [docker](<https://devfeed.tech/tags/docker.md>), [h2](<https://devfeed.tech/tags/h2.md>), [homelab](<https://devfeed.tech/tags/homelab.md>), [networking](<https://devfeed.tech/tags/networking.md>), [proxy](<https://devfeed.tech/tags/proxy.md>), [reverse-proxy](<https://devfeed.tech/tags/reverse-proxy.md>), [security](<https://devfeed.tech/tags/security.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [tailscale](<https://devfeed.tech/tags/tailscale.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>), [traefik](<https://devfeed.tech/tags/traefik.md>)

### AI overview

This tutorial explains how to run a self-hosted Tailscale control server, Headscale, behind Traefik. It finds that the reverse proxy must use TLS with HTTP/1.1 only because Tailscale's noise handshake expects a full-duplex byte stream and can fail when ALPN negotiates HTTP/2.

### Source excerpt

Headscale behind Traefik: tls.options=no-h2@file with alpnProtocols http/1.1, because the Tailscale noise handshake breaks when ALPN negotiates h2.

## Enabling TLS in PXC without Downtime

DevFeed: [Enabling TLS in PXC without Downtime](<https://devfeed.tech/articles/enabling-tls-in-pxc-without-downtime-14095.md>)

Original publisher: [Read original article](<https://www.percona.com/blog/enabling-tls-in-pxc-without-downtime/>)

Author: Juan Arruti

Published: 2026-09-09T23:32:15Z

Content type: tutorial

Language: en

Sources: [Blog - Percona](<https://devfeed.tech/sources/blog-percona.md>)

Topics: [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [Replication](<https://devfeed.tech/topics/replication.md>), [Security](<https://devfeed.tech/topics/security.md>), [Network](<https://devfeed.tech/topics/network.md>), [openssl](<https://devfeed.tech/topics/openssl.md>)

Tags: [galera](<https://devfeed.tech/tags/galera.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [insight-for-dbas](<https://devfeed.tech/tags/insight-for-dbas.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [percona](<https://devfeed.tech/tags/percona.md>), [pxc](<https://devfeed.tech/tags/pxc.md>), [replication](<https://devfeed.tech/tags/replication.md>), [security](<https://devfeed.tech/tags/security.md>), [ssl](<https://devfeed.tech/tags/ssl.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>), [xtradb-cluster-pxc](<https://devfeed.tech/tags/xtradb-cluster-pxc.md>)

### AI overview

This tutorial explains how to enable TLS for replication traffic in Percona XtraDB Cluster without a full cluster restart. Using Galera's socket.dynamic option, operators can perform two rolling restarts: first allowing encrypted and plaintext connections, then enforcing TLS-only communication.

### Source excerpt

Starting with Percona XtraDB Cluster (PXC) 8.0, replication traffic encryption is enabled by default. That said, it's common to find clusters running without TLS that suddenly need it: a new compliance requirement, an audit finding, a network segment that is no longer considered trusted. PXC has a variable for exactly that case, pxc-encrypt-cluster-traffic, which handles ... Continued The post Enabling TLS in PXC without Downtime appeared first on Percona.

## Quality Outreach Heads-up - JDK 28: Named Group Information Captured in the TLSHandshake JFR Event

DevFeed: [Quality Outreach Heads-up - JDK 28: Named Group Information Captured in the TLSHandshake JFR Event](<https://devfeed.tech/articles/quality-outreach-heads-up-jdk-28-named-group-information-captured-in-the-tlshandshake-jfr-event-15125.md>)

Original publisher: [Read original article](<https://inside.java/2026/08/21/quality-heads-up/>)

Author: Ana-Maria Mihalceanu

Published: 2026-08-21T00:00:00Z

Content type: release

Language: en

Sources: [Inside Java](<https://devfeed.tech/sources/inside-java.md>)

Topics: [JDK 28](<https://devfeed.tech/topics/jdk-28.md>), [Flight](<https://devfeed.tech/topics/flight.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [Security](<https://devfeed.tech/topics/security.md>), [openjdk](<https://devfeed.tech/topics/openjdk.md>)

Tags: [jdk-28](<https://devfeed.tech/tags/jdk-28.md>), [jdk-flight-recorder](<https://devfeed.tech/tags/jdk-flight-recorder.md>), [openjdk](<https://devfeed.tech/tags/openjdk.md>), [release](<https://devfeed.tech/tags/release.md>), [security](<https://devfeed.tech/tags/security.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>), [update](<https://devfeed.tech/tags/update.md>)

### AI overview

The OpenJDK Quality Group announces that, starting with JDK 28, the jdk.TLSHandshake JFR event records the named group negotiated between the client and server during key exchange. The event is disabled by default and requires explicit enablement.

### Source excerpt

This Heads-Up is part of the regular communication sent to the projects involved; it covers that the named group information is included in the jdk.TLSHandshake JFR event.

## Networking Concepts Every DevOps Engineer Needs to Know

DevFeed: [Networking Concepts Every DevOps Engineer Needs to Know](<https://devfeed.tech/articles/networking-concepts-every-devops-engineer-needs-to-know-17488.md>)

Original publisher: [Read original article](<https://kodekloud.com/blog/networking-concepts-every-devops-engineer-needs/>)

Author: Pramodh Kumar M

Published: 2026-08-14T17:14:08Z

Content type: tutorial

Language: en

Sources: [Kubernetes - KodeKloud Blog | DevOps, Cloud, Kubernetes, AI Tutorials & More](<https://devfeed.tech/sources/kubernetes-kodekloud-blog-devops-cloud-kubernetes-ai-tutorials-more.md>)

Topics: [networking](<https://devfeed.tech/topics/networking.md>), [DevOps](<https://devfeed.tech/topics/devops.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [cidr-and-subnets](<https://devfeed.tech/tags/cidr-and-subnets.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [conntrack](<https://devfeed.tech/tags/conntrack.md>), [devops](<https://devfeed.tech/tags/devops.md>), [dns](<https://devfeed.tech/tags/dns.md>), [ephemeral-ports](<https://devfeed.tech/tags/ephemeral-ports.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [kubernetes-networking](<https://devfeed.tech/tags/kubernetes-networking.md>), [linux](<https://devfeed.tech/tags/linux.md>), [mtu-mismatch](<https://devfeed.tech/tags/mtu-mismatch.md>), [nat-and-snat](<https://devfeed.tech/tags/nat-and-snat.md>), [network](<https://devfeed.tech/tags/network.md>), [network-troubleshooting-commands](<https://devfeed.tech/tags/network-troubleshooting-commands.md>), [networking](<https://devfeed.tech/tags/networking.md>), [networking-concepts-for-devops](<https://devfeed.tech/tags/networking-concepts-for-devops.md>), [osi-model-for-devops](<https://devfeed.tech/tags/osi-model-for-devops.md>), [platform-engineering](<https://devfeed.tech/tags/platform-engineering.md>), [proxy](<https://devfeed.tech/tags/proxy.md>), [routing](<https://devfeed.tech/tags/routing.md>), [tcp](<https://devfeed.tech/tags/tcp.md>), [tcp-handshake](<https://devfeed.tech/tags/tcp-handshake.md>), [timeout](<https://devfeed.tech/tags/timeout.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>), [vpn](<https://devfeed.tech/tags/vpn.md>)

### AI overview

A tutorial follows a request from a browser to a container to explain networking concepts relevant to DevOps engineers. It maps symptoms such as connection refusal, timeouts, resets, and packet-size-related hangs to network layers and discusses diagnosis across VPN gateways, Kubernetes, and other infrastructure.

### Source excerpt

Follow one request from a browser to a container and back. Every networking concept you actually need shows up on that path, in order, and so does every place it breaks.

## Using observability to verify TLS certificate rotation in production

DevFeed: [Using observability to verify TLS certificate rotation in production](<https://devfeed.tech/articles/your-tls-rotation-is-not-reliable-until-production-proves-it-34025.md>)

Original publisher: [Read original article](<https://sridharrajarao.com/blog/tls-rotation-observability/>)

Author: Sridhar Rajarao

Published: 2026-08-13T00:00:00Z

Content type: article

Language: en

Sources: [Sridhar Rajarao](<https://devfeed.tech/sources/sridhar-rajarao.md>)

Topics: [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [observability](<https://devfeed.tech/topics/observability.md>), [TLS handshake](<https://devfeed.tech/topics/tls-handshake.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [nginx](<https://devfeed.tech/topics/nginx.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [automation](<https://devfeed.tech/tags/automation.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [observability](<https://devfeed.tech/tags/observability.md>), [reliability](<https://devfeed.tech/tags/reliability.md>), [sre](<https://devfeed.tech/tags/sre.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>)

### AI overview

The article explains that automating certificate renewal does not prove that production endpoints serve the new certificate. It recommends externally probing customer-facing endpoints and measuring certificate details and real TLS handshakes across proxies, regions, ingress controllers, CDNs, gateways, and other endpoints.

### Source excerpt

Automation renews a certificate. Observability proves every endpoint is serving it and customers can complete a TLS handshake.

## How to provision certificates for internal services with Teleport Workload Identity

DevFeed: [How to provision certificates for internal services with Teleport Workload Identity](<https://devfeed.tech/articles/how-to-provision-certificates-for-internal-services-with-teleport-workload-identity-29715.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/internal-service-certificates-with-workload-identity/>)

Author: noah@goteleport.com (Noah Stride)

Published: 2025-02-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [certificates](<https://devfeed.tech/topics/certificates.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [TLS handshake](<https://devfeed.tech/topics/tls-handshake.md>), [Encryption](<https://devfeed.tech/topics/encryption.md>), [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [trust](<https://devfeed.tech/topics/trust.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [Networks](<https://devfeed.tech/topics/networks.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [certificates](<https://devfeed.tech/tags/certificates.md>), [cryptography](<https://devfeed.tech/tags/cryptography.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [networks](<https://devfeed.tech/tags/networks.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>), [trust](<https://devfeed.tech/tags/trust.md>), [x509](<https://devfeed.tech/tags/x509.md>)

### AI overview

This tutorial explains how to provision X.509 certificates for internal services with Teleport Workload Identity. It covers TLS, mutual TLS, certificate authorities, workload identity, and the role of certificates in authenticating services and securing internal traffic.

### Source excerpt

Learn how to securely provision X509 certificates to secure traffic between internal services using mTLS and Teleport Workload Identity.

## TLS Routing Support for Teleport Behind an AWS Application Load Balancer

DevFeed: [TLS Routing Support for Teleport Behind an AWS Application Load Balancer](<https://devfeed.tech/articles/tls-routing-support-for-teleport-behind-an-aws-application-load-balancer-29944.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/tls-routing-behind-alb/>)

Author: info@goteleport.com (Steve Huang)

Published: 2022-11-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [Load Balancing](<https://devfeed.tech/topics/load-balancing.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [networking](<https://devfeed.tech/topics/networking.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Amazon Bedrock](<https://devfeed.tech/topics/amazon-bedrock.md>)

Tags: [aws](<https://devfeed.tech/tags/aws.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [https](<https://devfeed.tech/tags/https.md>), [load-balancer](<https://devfeed.tech/tags/load-balancer.md>), [load-balancing](<https://devfeed.tech/tags/load-balancing.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>)

### AI overview

This article explains TLS Routing support for Teleport Database Access when Teleport runs behind an AWS Application Load Balancer. It compares application and network load balancers and discusses TLS termination, mutual TLS, ALPN, SNI, and certificate handling.

### Source excerpt

How to "penetrate" an AWS Application Load Balancer to enable mutual TLS (mTLS), Application-Layer Protocol Negotiation (ALPN), and more.

## How OkCredit Android App boosted Network Performance by 30%

DevFeed: [How OkCredit Android App boosted Network Performance by 30%](<https://devfeed.tech/articles/how-okcredit-android-app-boosted-network-performance-by-30-37400.md>)

Original publisher: [Read original article](<https://medium.com/okcredit/how-okcredit-android-app-boosted-network-performance-by-30-84109080c065?source=rss----40ea5327aac7---4>)

Author: Shrey Garg

Published: 2022-07-07T11:29:22Z

Content type: tutorial

Language: en

Sources: [OkCredit - Medium](<https://devfeed.tech/sources/okcredit-medium.md>)

Topics: [Mobile](<https://devfeed.tech/topics/mobile.md>), [Android](<https://devfeed.tech/topics/android.md>), [android-apps](<https://devfeed.tech/topics/android-apps.md>), [Instrumentation](<https://devfeed.tech/topics/instrumentation.md>), [Network](<https://devfeed.tech/topics/network.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [TLS handshake](<https://devfeed.tech/topics/tls-handshake.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-app-development](<https://devfeed.tech/tags/android-app-development.md>), [android-apps](<https://devfeed.tech/tags/android-apps.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [http](<https://devfeed.tech/tags/http.md>), [instrumentation](<https://devfeed.tech/tags/instrumentation.md>), [latency](<https://devfeed.tech/tags/latency.md>), [mobile-app-development](<https://devfeed.tech/tags/mobile-app-development.md>), [network](<https://devfeed.tech/tags/network.md>), [okcredit](<https://devfeed.tech/tags/okcredit.md>), [performance](<https://devfeed.tech/tags/performance.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>)

### AI overview

This tutorial explains how to analyze and optimize each stage of network calls in Android apps, including call start, DNS resolution, TLS connection setup, request and response transfer, connection reuse, and call completion. It describes using OkHttp connection pooling and the EventListener class to instrument HTTP-call metrics such as quantity, size, and duration.

### Source excerpt

Fast and reliable network communication is crucial for OkCredit mobile apps. Since the majority of our users belong to Tier-2/3 cities in India, flaky and unreliable network connection is one of the biggest challenges for us. In order to deliver a good user experience, our mobile apps need to have reliable and low-latency network connectivity. While most resources we found describe how we can improve the overall time (start-end) of a network call, this article attempts to take a deep dive and talk about each step and how we can instrument and optimise each step of a network call in android apps. Steps involved in a network callFig. Steps of a Network call. Ref -- https://square.github.io/okhttp/features/events1. Call start Called as soon as a call is enqueued or executed by a client. Ideally, this step should not consume any time unless there are any custom Interceptors added. 2. DNS Involves the DNS Resolver translating the domain name into the corresponding identifier (the IP address). 3. Connection Start Tries to acquire a secure connection (TLS handshake) between the client and the server. 4. Connection End / Acquired Invoked after a connection has been acquired for the call. After this, the communication of request and response payloads is started. 5. Request / Response / Headers This is the step in which the actual communication of data happens. The HTTP method, size of request / response payload, server latency / response time, etc. can greatly impact the time taken by this step. 6. Connection released Invoked after a connection has been released for the call. 7. Call end Invoked immediately after a call has completely ended. Pooled connection OkHttp has the capability to pool connections with which it can skip various steps of a network call mentioned above, which in turn can greatly improve the application's network performance, as existing connections can be reused. Fig. Steps of a Network call with pooled connectionInstrumentation of each step To determine

## Using TLS Extensions to Route Traffic and Reduce Port Requirements in Teleport

DevFeed: [Using TLS Extensions to Route Traffic and Reduce Port Requirements in Teleport](<https://devfeed.tech/articles/leave-ssl-in-the-dust-turbocharge-tls-with-alpn-and-sni-29950.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/turbo-charge-tls-with-alpn-sni/>)

Author: ben@goteleport.com (Ben Arent)

Published: 2021-12-21T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [TLS handshake](<https://devfeed.tech/topics/tls-handshake.md>), [Routing (disambiguation)](<https://devfeed.tech/topics/routing.md>), [SSL](<https://devfeed.tech/topics/ssl.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [https](<https://devfeed.tech/tags/https.md>), [port](<https://devfeed.tech/tags/port.md>), [route](<https://devfeed.tech/tags/route.md>), [security](<https://devfeed.tech/tags/security.md>), [ssl](<https://devfeed.tech/tags/ssl.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>)

### AI overview

This tutorial explains how Teleport uses TLS extensions, including ALPN and SNI, to route traffic more efficiently and reduce the number of required open ports. It also distinguishes the TLS protocol from the X.509 certificates used with it.

### Source excerpt

How to leverage TLS extensions to more efficiently route traffic and reduce port requirements in Teleport.

## Dissecting SSL handshake

DevFeed: [Dissecting SSL handshake](<https://devfeed.tech/articles/dissecting-ssl-handshake-38905.md>)

Original publisher: [Read original article](<https://idea.popcount.org/2012-06-16-dissecting-ssl-handshake>)

Author: Marek

Published: 2012-06-15T22:00:00Z

Content type: article

Language: en

Sources: [Marek Majkowski](<https://devfeed.tech/sources/marek-majkowski.md>)

Topics: [TLS handshake](<https://devfeed.tech/topics/tls-handshake.md>), [SSL](<https://devfeed.tech/topics/ssl.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [browser](<https://devfeed.tech/topics/browser.md>), [client](<https://devfeed.tech/topics/client.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [application](<https://devfeed.tech/tags/application.md>), [browser](<https://devfeed.tech/tags/browser.md>), [deprecated](<https://devfeed.tech/tags/deprecated.md>), [privacy](<https://devfeed.tech/tags/privacy.md>), [ssl](<https://devfeed.tech/tags/ssl.md>), [tls](<https://devfeed.tech/tags/tls.md>), [tls-handshake](<https://devfeed.tech/tags/tls-handshake.md>)

### AI overview

This article examines the information exposed by the unencrypted SSL/TLS handshake, focusing on the ClientHello message. It describes fields such as the protocol version, client-generated random value, session identifier, supported cipher suites and compression methods, and discusses how these details may reveal client characteristics or enable identification, including through session reuse and cipher-suite ordering.

### Source excerpt

Dissecting SSL handshake Not everyone knows that the SSL handshake is not encrypted. When you think about it - there isn't other way, before the keys are exchanged the communication must be unencrypted. But I doubt many people think about it. Not only the SSL handshake is plain-text, but also it contains rather interesting data. I decided to find out how much information can be retrieved from it. TLS Here's how the TLS handshake works: Let's focus on the first message - .