
Test du chiffrement TLS/SSL n'importe où sur n'importe quel port
testssl.sh est un outil en ligne de commande gratuit qui vérifie le service d'un serveur sur n'importe quel port pour la prise en charge des chiffrements TLS/SSL, des protocoles ainsi que de certaines failles cryptographiques.
Ce logiciel est gratuit. Vous pouvez l'utiliser sous les termes de la GPLv2, voir LICENSE.
L'attribution est importante pour l'avenir de ce projet -- également sur internet. Ainsi, si vous proposez un scanner basé sur testssl.sh en tant que service public et/ou payant sur internet, vous êtes fortement encouragé à mentionner à votre public que vous utilisez ce programme et d'où obtenir ce programme. Cela nous aide à obtenir des corrections de bugs, d'autres retours et davantage de contributions.
Testssl.sh fonctionne sur toutes les distributions Linux/BSD et MacOS prêt à l'emploi. Dès la très ancienne version 2.9, la plupart des limitations dues aux fonctionnalités désactivées du client openssl ont disparu grâce aux vérifications basées sur des sockets bash. Une ancienne version d'OpenSSL (dépréciée) est fournie, mais de nos jours vous pouvez également utiliser n'importe quelle version de LibreSSL ou OpenSSL.
testssl.sh fonctionne également sur d'autres systèmes de type Unix prêts à l'emploi, à condition qu'ils aient /bin/bash >= version 3.2 et les outils standard comme sed et awk installés. Windows (via MSYS2, Cygwin ou WSL/WSL2) fonctionne aussi. Une vérification implicite (silencieuse) des binaires est effectuée lorsque vous lancez testssl.sh. System V Unix nécessite probablement d'avoir GNU grep installé.
Les notifications de mise à jour se trouvent sur github ou les plus importantes sur mastodon ou bluesky. twitter n'est plus utilisé.
Vous pouvez télécharger la branche 3.3dev de testssl.sh simplement en clonant ce dépôt git :
git clone --depth 1 https://github.com/testssl/testssl.sh.git --branch 3.3dev
3.3dev est la dernière branche de développement issue de la version stable 3.2. Nous essayons de ne pas faire de grosses expériences dans la branche de développement, mais le but du développement est qu'il y aura des changements et que ces changements peuvent nécessiter un peu de temps pour mûrir.
Testssl.sh a des exigences minimales. Comme indiqué, vous n'avez pas besoin d'installer ou de construire quoi que ce soit. Vous pouvez simplement l'exécuter depuis le répertoire cloné/tiré. Cependant, si vous ne souhaitez pas tirer le dépôt GitHub dans votre répertoire de choix, vous pouvez tirer un conteneur depuis dockerhub et l'exécuter :
docker run --rm -it ghcr.io/testssl/testssl.sh <your_cmd_line>
Ou si vous avez cloné ce dépôt, vous pouvez simplement vous placer dans le répertoire d'installation (INSTALLDIR) et exécuter
docker build . -t imagefoo && docker run --rm -t imagefoo testssl.net
Pour plus d'informations, veuillez consulter Dockerfile.md.
L'utilisation du programme est sans aucune garantie. Utilisez-le à vos propres risques.
Testssl.sh est conçu pour être utilisé comme un outil CLI autonome. Bien que nous ayons essayé d'appliquer les meilleures pratiques de sécurité et de nettoyer les entrées externes, nous ne pouvons pas garantir que le programme est exempt de vulnérabilités. L'exécuter en tant que service web peut poser des risques de sécurité et il est conseillé d'appliquer des mesures de sécurité supplémentaires. Validez les entrées de l'utilisateur et de tous les services interrogés.
Compte tenu des effectifs actuels, nous ne supportons que les versions n-1. Vous êtes sur la branche 3.3.dev où le développement ultérieur a lieu avant que 3.4 ne devienne la version stable et 3.2 la version stable ancienne. Si vous êtes hésitant face aux changements, vous devez utiliser 3.2. La version 3.0.10 a été la dernière, il n'y aura plus de mises à jour.
~/doc/.De nombreux contributeurs ont déjà aidé à propulser le projet là où il en est, voir CREDITS.md. Votre contribution serait également la bienvenue ! Il y a une liste de tickets. Pour commencer, recherchez les tickets étiquetés comme good first issue, for grabs ou help wanted. Ce dernier est plus avancé. Vous pouvez également rechercher des tickets de documentation, ou aider avec les tests unitaires ou l'amélioration des actions GitHub.
Il est recommandé de lire CONTRIBUTING.md et de jeter également un coup d'œil à la Convention de codage. Avant de commencer à écrire des PR avec des centaines de lignes, mieux vaut d'abord créer un ticket.
En général, il y a aussi une charge de maintenance, comme la maintenance des handshakes et des magasins de CA, etc. Si vous pensez pouvoir contribuer et être responsable de l'une de ces tâches de maintenance, veuillez vous manifester. Cela libérerait des ressources que nous pourrions utiliser pour le développement.
Les rapports de bugs sont importants. Ils rendent ce projet plus robuste.
Veuillez soumettre les bugs dans le gestionnaire de tickets sur GitHub. N'oubliez pas de fournir des informations détaillées, voir le modèle pour les tickets, et plus de détails sur https://github.com/testssl/testssl.sh/wiki/Bug-reporting. Personne ne peut encore lire vos pensées. Et seulement les agences votre écran ;-)
Vous pouvez également déboguer vous-même, voir ici.
Veuillez adresser les questions qui ne concernent pas spécifiquement le code de testssl.sh aux projets respectifs ci-dessous.