documentation/tools/tls.md

1.6 KiB

TLS

TLS (Transport Layer Security) est un protocole cryptographique permettant une communication sécurisée sur un réseau.

TLS 1.3

La dernière version de TLS est TLS 1.3 spécifiée dans la RFC 8446.

OpenSSL

OpenSSL est une bibliothèque implémentant le protocole TLS elle vient avec un binaire openssl permettant notamment de gérer les certificats TLS et d'effectuer des connexions chiffrées.

s_client

Le binaire openssl lancé avec la sous-commande s_client permet d'effectuer une connexion TLS à la manière de netcat. Voici un exemple :

openssl s_client -connect irc.crans.org:6697

Ceci permet de se connecter sur le port 6697 du serveur identifié par le nom de domaine irc.crans.org.

Il est également possible d'utiliser des protocoles utilisant STARTTLS (c'est à dire passant d'une connexion en clair à une connexion chiffrée a l'aide d'une commande) :

openssl s_client -starttls smtp -connect redisdead.crans.org:25

genpkey

La sous-commande genpkey permet de générer une clef privée, par exemple (pour générer une clef privée ED25519) :

openssl genpkey -algorithm ED25519 -out key.pem

Voici les valeurs notables possible de l'option -algorithm et les valeurs associées de l'option -pkeyopt permettant d'ajuster les paramètres de la clef privée:

  • ED25519 (pas d'options)
  • ED448 (pas d'options)
  • RSA
    • rsa_keygen_bits: le nombre de bits de la clef privée
  • EC
    • ec_paramgen_curve: le nom de la courbe de la clef privée