A command-line debugging tool to check the latency of SSL handshake

ssl-handshake

A command-line tool for testing SSL handshake latency, written in Go.

Installation

Binary is available for Linux, Windows and Mac OS (amd64 and arm64). Download the binary for your respective platform from the releases page.

Linux:

wget https://github.com/tuladhar/ssl-handshake/releases/download/v1.4/ssl-handshake-v1.4-linux-amd64.tar.gz
tar zxf ssl-handshake-v1.4-linux-amd64.tar.gz
sudo install -m 0755 ssl-handshake /usr/local/bin/ssl-handshake

macOS (Intel):

wget https://github.com/tuladhar/ssl-handshake/releases/download/v1.4/ssl-handshake-v1.4-darwin-amd64.tar.gz
tar zxf ssl-handshake-v1.4-darwin-amd64.tar.gz
sudo install -m 0755 ssl-handshake /usr/local/bin/ssl-handshake

macOS (Apple Silicon):

wget https://github.com/tuladhar/ssl-handshake/releases/download/v1.4/ssl-handshake-v1.4-darwin-arm64.tar.gz
tar zxf ssl-handshake-v1.4-darwin-arm64.tar.gz
sudo install -m 0755 ssl-handshake /usr/local/bin/ssl-handshake

Demo

Development

If you wish to contribute or compile from source code, you'll first need Go installed on your machine. Go version 1.17+ is required. Currently, there's no dependencies on third-party modules.

git clone https://github.com/tuladhar/ssl-handshake
cd ssl-handshake 
go build

Contributors

Similar Resources

A simple and flexible health check library for Go.

Health A simple and flexible health check library for Go. Documentation · Report Bug · Request Feature Table of Contents Getting started Synchronous v

Jan 4, 2023

Kubedd – Check migration issues of Kubernetes Objects while K8s upgrade

Kubedd – Check migration issues of Kubernetes Objects while K8s upgrade

Dec 19, 2022

scenario system to check the behavior of kube-scheduler

kube-scheduler-simulator-cli: Kubernetes Scheduler simulator on CLI and scenario system. Hello world. This repository is scenario system for kube-sche

Jan 25, 2022

GitHub Action: Compose multiple (conditional) checks into a single check based on file paths in a pull request

GitHub Action: Compose multiple (conditional) checks into a single check based on file paths in a pull request

GitHub Action: Composite Example Usage --- name: All Checks on: pull_request: branches: - main jobs: meta: runs-on: - ubuntu-20.

Dec 29, 2022

Connect, Subscribe and Publish over MQTT broker to check its status.

MQTT Blackbox Exporter Introduction In each probe it sends a message over MQTT broker and then wait for getting it over subscription. By measuring thi

Aug 27, 2022

Just a playground with some interesting concepts like pipelines aka middleware, handleFuncs, request validations etc. Check it out.

Pipeline a.k.a middleware in Go Just a playground with some interesting concepts like pipelines aka middleware, handleFuncs, request validations etc.

Dec 9, 2021

K8s-ingress-health-bot - A K8s Ingress Health Bot is a lightweight application to check the health of the ingress endpoints for a given kubernetes namespace.

k8s-ingress-health-bot A K8s Ingress Health Bot is a lightweight application to check the health of qualified ingress endpoints for a given kubernetes

Jan 2, 2022

Controller-check - Run checks against K8s controllers to verify if they meets certain conventions

controller-check Run checks against K8s controllers to verify if they meets cert

Jan 4, 2022

Sensu-go-postgres-metrics - The sensu-go-postgres-metrics is a sensu check that collects PostgreSQL metrics

sensu-go-postgres-metrics Table of Contents Overview Known issues Usage examples

Jan 12, 2022
Comments
  • New feature: Show TLS Version used during the handshake

    New feature: Show TLS Version used during the handshake

    This PR adds support to show TLS version used during the handshake.

    Supported TLS versions:

    • tls1.0, tls1.1, tls1.2, tls1.3
    [puru@blackhole ssl-handshake]$ ./ssl-handshake -c 3 tuladhar.github.io:443
    Starting ssl-handshake v1.5.2 ( https://tuladhar.github.com/ssl-handshake ) at Wed, 29 Dec 2021 15:11:26 +0545
    SSL handshake with tuladhar.github.io:443: tcp=286ms handshake=52ms version=tls1.3 total=338ms
    SSL handshake with tuladhar.github.io:443: tcp=55ms handshake=58ms version=tls1.3 total=113ms
    SSL handshake with tuladhar.github.io:443: tcp=58ms handshake=60ms version=tls1.3 total=118ms
    
    --- tuladhar.github.io:443 handshake statistics ---
    3 handshakes sent, finish: 3, fail: 0, time: 2000ms
    rtt min/avg/max: 52/56/60 ms
    
  • ssl-handshake: Docker support

    ssl-handshake: Docker support

    This PR adds Dockerfile for ssl-handshake to be used as a Docker container. The docker image is available at DockerHub: https://hub.docker.com/r/ptuladhar/ssl-handshake

    Usage:

    docker run --rm ptuladhar/ssl-handshake tuladhar.github.com:443
    
  • Decouple TCP connection from handshake process, providing more accurate SSL handshake latency.

    Decouple TCP connection from handshake process, providing more accurate SSL handshake latency.

    Changelog

    • Decouple TCP connection from handshake process, providing more accurate SSL handshake latency.
    • Improve statistics output
    • Update README and with new demo
A toolbox for debugging docker container and kubernetes with web UI.
A toolbox for debugging docker container and kubernetes with web UI.

A toolbox for debugging Docker container and Kubernetes with visual web UI. You can start the debugging journey on any docker container host! You can

Oct 20, 2022
Netpoltool - CLI evaluation of Kubernetes NetworkPolicys with detailed output to aid debugging.

netpoltool CLI evaluation of Kubernetes NetworkPolicys with detailed output helpful for debugging. Given source and destination pods, identify the Net

Jan 8, 2022
A tool that scans archives to check for vulnerable log4j versions

log4j-sniffer log4j-sniffer crawls for all instances of log4j that are earlier t

Dec 14, 2022
A tool to check whether docker images exist in the remote registry.

Check Docker Image A tool to check whether docker images exist in the remote registry. Build project: go build -o check-image . Example usage: REGISTR

Jul 26, 2022
Command-line tool to remotely execute commands on Windows machines through WinRM

winrm-cli This is a Go command-line executable to execute remote commands on Windows machines through the use of WinRM/WinRS. Note: this tool doesn't

Dec 15, 2022
A command line tool for validating Kubernetes configs with rego

ccheck ccheck is a command line application for writing tests against configuration files and data using the rego query language. It's intended purpos

Nov 16, 2022
Kubesecret is a command-line tool that prints secrets and configmaps data of a kubernetes cluster.

Kubesecret Kubesecret is a command-line tool that prints secrets and configmaps data of a kubernetes cluster. kubesecret -h for help pages. Install go

May 3, 2022
Igo Agent is the agent of Igo, a command-line tool, through which you can quickly start Igo

igo agent 英文 | 中文 Igo Agent is the agent of Igo, a command-line tool, through which you can quickly start Igo, and other capabilities may be added lat

Dec 22, 2021
The Coherence command line interface (CLI) is a lightweight tool, in the tradition of tools such as kubectl
The Coherence command line interface (CLI) is a lightweight tool, in the tradition of tools such as kubectl

Coherence Command Line Interface (CLI) Contents Overview Why use the Coherence C

Dec 15, 2022
A set of tests to check compliance with the Prometheus Remote Write specification

Prometheus Remote Write Compliance Test This repo contains a set of tests to check compliance with the Prometheus Remote Write specification. The test

Dec 4, 2022