Testssl.sh - 在任何端口上测试 TLS/SSL 加密
testssl.sh 是一个免费、开源、功能丰富的命令行工具,用于检查支持 TLS/SSL 加密的服务是否支持密码、协议和一些加密Linux/BSD 服务器上的缺陷。它可以使用 MSYS2 或 Cygwin 在 macOS X 和 Windows 上运行。
Testssl.sh 的特点
- 容易安装和使用;产生清晰的输出。
- 高度灵活,可用于检查启用了 SSL/TLS 和 STARTTLS 服务。
- 执行一般检查或单一检查。
- 附带用于各种类别的单一检查的多个命令行选项。
- 支持不同的输出类型,包括彩色输出。
- 支持SSL会话ID检查。
- 支持检查多个服务器证书。
- 提供绝对的隐私,只有您可以看到结果,第三方无法看到。
- 支持以(平面)JSON + CSV 格式登录。
- 支持串行(默认)或并行模式的大规模测试。
- 支持通过环境变量预设命令行选项等等。
重要:您应该使用 bash(大多数 Linux 发行版上都预装了),并且建议使用较新的 OpenSSL 版本 (1.1.1)以便有效使用。
如何在 Linux 中安装和使用 Testssl.sh
您可以安装testssl。 sh 通过克隆此 git 存储库,如图所示。
git clone --depth 1 https://github.com/drwetter/testssl.sh.git
cd testssl.sh
克隆 testssl.sh 后,一般用例可能只是运行以下命令来对网站进行测试。
./testssl.sh https://www.google.com/
要针对启用 STARTTLS 的协议运行检查:ftp、smtp、pop3、imap、xmpp、telnet、ldap、postgres、mysql,请使用 -t
选项。
./testssl.sh -t smtp https://www.google.com/
默认情况下,所有批量测试都以串行模式完成,您可以使用 --parallel
标志启用并行测试。
./testssl.sh --parallel https://www.google.com/
如果您不想使用默认的系统 openssl 程序,请使用 –openssl 标志指定替代程序。
./testssl.sh --parallel --sneaky --openssl /path/to/your/openssl https://www.google.com/
您可能希望保留日志以供以后分析,testssl.sh具有--log
(将日志文件存储在当前目录中)或--logfile
(指定日志文件位置)选项。
./testssl.sh --parallel --sneaky --logging https://www.google.com/
要禁用 DNS 查找(这可以提高测试速度),请使用 -n
标志。
./testssl.sh -n --parallel --sneaky --logging https://www.google.com/
使用 testsl.sh 运行单一检查
您还可以对协议、服务器默认设置、服务器首选项、标头、各种类型的漏洞以及许多其他测试运行单一检查。为此提供了多种选项。
例如,-e
标志使您能够远程检查每个本地密码。如果您想让测试更快,请使用 --fast
标志;这将省略一些检查,如果您对所有密码使用 openssl,它只显示第一个提供的密码。
./testssl.sh -e --fast --parallel https://www.google.com/
-p
选项允许测试 TLS/SSL 协议(包括 SPDY/HTTP2)。
./testssl.sh -p --parallel --sneaky https://www.google.com/
您可以使用 -S
选项查看服务器的默认选择和证书。
./testssl.sh -S https://www.google.com/
接下来,要查看服务器的首选协议+密码,请使用 -P
标志。
./testssl.sh -P https://www.google.com/
-U
选项将帮助您测试所有漏洞(如果适用)。
./testssl.sh -U --sneaky https://www.google.com/
不幸的是,我们无法利用此处的所有选项,请使用下面的命令查看所有选项的列表。
./testssl.sh --help
在 testssl.sh Github 存储库中查找更多信息:https://github.com/drwetter/testssl.sh
结论
testssl.sh 是一个有用的安全工具,每个 Linux 系统管理员都需要拥有并使用它来测试启用 TSL/SSL 的服务。如果您有任何问题或想法要分享,请使用下面的评论表。此外,您还可以与我们分享您遇到的任何类似工具。