
Pruebas de cifrado TLS/SSL en cualquier lugar y en cualquier puerto.
testssl.sh es una herramienta gratuita de línea de comandos que verifica el servicio de un servidor en cualquier puerto para determinar el soporte de cifrados TLS/SSL, protocolos, así como algunas vulnerabilidades criptográficas.
Este software es gratuito. Puedes usarlo bajo los términos de GPLv2, consulta LICENSE.
La atribución es importante para el futuro de este proyecto, también en Internet. Por lo tanto, si ofreces un escáner basado en testssl.sh como un servicio público y/o de pago en Internet, se recomienda encarecidamente que menciones a tu audiencia que estás usando este programa y dónde obtenerlo. Esto nos ayuda a recibir correcciones de errores, otros comentarios y más contribuciones.
Testssl.sh funciona de inmediato en todas las distribuciones Linux/BSD y MacOS. Desde la versión muy antigua 2.9, la mayoría de las limitaciones debidas a funciones deshabilitadas del cliente openssl han desaparecido gracias a las comprobaciones basadas en sockets de bash. Se proporciona una versión antigua de OpenSSL, pero hoy en día también puedes usar cualquier versión de LibreSSL u OpenSSL.
testssl.sh también funciona de inmediato en otros sistemas Unix, siempre que tengan
/bin/bash >= versión 3.2 y herramientas estándar como sed y awk instaladas. Windows
(usando MSYS2, Cygwin o WSL/WSL2) también funciona. Se realiza una verificación implícita (silenciosa) de los binarios cuando inicias testssl.sh. System V Unix probablemente necesite tener GNU grep instalado.
Las notificaciones de actualización se pueden encontrar en github o las más importantes en mastodon o bluesky. twitter ya no se utiliza.
Puedes descargar la rama 3.3dev de testssl.sh simplemente clonando este repositorio git:
git clone --depth 1 https://github.com/testssl/testssl.sh.git --branch 3.3dev
3.3dev es la última rama de desarrollo que evolucionó a partir de la estable 3.2. Intentamos no hacer grandes experimentos en la rama dev, sin embargo, el punto del desarrollo es que habrá cambios y los cambios pueden necesitar un tiempo para madurar.
Testssl.sh tiene requisitos mínimos. Como se dijo, no necesitas instalar ni compilar nada. Puedes simplemente ejecutarlo desde el directorio clonado/descargado. Aún así, si no deseas clonar el repositorio de GitHub en tu directorio preferido, puedes descargar un contenedor desde dockerhub y ejecutarlo:
docker run --rm -it ghcr.io/testssl/testssl.sh <your_cmd_line>
O si has clonado este repositorio, también puedes simplemente cd al INSTALLDIR y ejecutar
docker build . -t imagefoo && docker run --rm -t imagefoo testssl.net
Para más información, consulta Dockerfile.md.
El uso del programa es sin ninguna garantía. Úsalo bajo tu propio riesgo.
Testssl.sh está diseñado para usarse como una herramienta CLI independiente. Si bien intentamos aplicar las mejores prácticas de seguridad y desinfectar la entrada externa, no podemos garantizar que el programa esté libre de vulnerabilidades. Ejecutarlo como un servicio web puede presentar riesgos de seguridad y se recomienda aplicar medidas de seguridad adicionales. Valida la entrada del usuario y de todos los servicios consultados.
Dada la mano de obra actual, solo admitimos versiones n-1. Estás viendo la rama 3.3.dev donde se desarrolla la próxima versión antes de que 3.4 se convierta en la versión estable y 3.2 pase a ser estable anterior. Si dudas con respecto a los cambios, debes usar 3.2. La versión 3.0.10 fue la última, no habrá más actualizaciones.
~/doc/.Muchos colaboradores ya han ayudado a impulsar el proyecto hasta donde está actualmente, consulta CREDITS.md. ¡Tu contribución también sería bienvenida! Hay una lista de issues. Para empezar, busca issues etiquetados como good first issue, for grabs o help wanted. Este último es más avanzado. También puedes buscar issues de documentación, o ayudar con pruebas unitarias o mejorar las acciones de GitHub.
Se recomienda leer CONTRIBUTING.md y también echar un vistazo a la Convención de Codificación. Antes de comenzar a escribir PRs con cientos de líneas, mejor crea un issue primero.
En general, también hay cierta carga de mantenimiento, como mantener handshakes y almacenes de CA, etc. Si crees que puedes contribuir y ser responsable de una de esas tareas de mantenimiento, por favor habla. Eso liberaría recursos que podríamos usar para el desarrollo.
Los reportes de errores son importantes. Hacen que este proyecto sea más robusto.
Por favor, reporta los errores en el rastreador de issues de GitHub. No olvides proporcionar información detallada, consulta la plantilla para issues y más detalles en https://github.com/testssl/testssl.sh/wiki/Bug-reporting. Nadie puede leer tus pensamientos, todavía. Y solo las agencias tu pantalla ;-)
También puedes depurar tú mismo, consulta aquí.
Por favor, dirígete a los respectivos proyectos a continuación para preguntas no específicas del código de testssl.sh.