testssl.sh是本地化、高效、可信的TLS/SSL安全检测工具,支持全项扫描、HTML报告生成及三类核心配置人工核验,兼顾实战性与准确性。
直接用 testssl.sh 工具测试最高效、最贴近实战。它不依赖第三方服务,所有检测在本地完成,结果可信、细节完整,是渗透测试和运维自查的首选方案。
快速跑通一次完整检测
在 Linux 或 macOS(通过 MSYS2/Cygwin)终端中执行:
- 克隆并进入工具目录:
git clone --depth 1 https://github.com/drwetter/testssl.sh.git && cd testssl.sh - 对目标域名做全项扫描:
./testssl.sh -U --sneaky example.com:443
(-U启用完整检查,--sneaky避免被 WAF 误拦截) - 生成 HTML 报告便于分享:
./testssl.sh -U --sneaky example.com | aha > report.html
重点关注三类核心结果
报告中需人工核验的关键项:
通过 SSH 隧道从 Android 设备在互联网上对 Windows PC 实现完整远程控制的设置与使用指南,适用于远程桌面访问、安全 RDP 等。
- TLS 协议支持情况:确认已禁用 SSLv2/v3、TLSv1.0/1.1;仅保留 TLSv1.2 和 TLSv1.3
-
加密套件强度:拒绝出现
NULL、ANONYMOUS、RC4、DES、3DES、EXPORT等弱套件;优先使用ECDHE-ECDSA-AES256-GCM-SHA384或ECDHE-RSA-AES256-GCM-SHA384 - 证书基础质量:密钥长度 ≥2048(RSA)或 ≥256(ECC);签名算法为 SHA-256 或更高;有效期未过期;SAN 域名完全匹配访问地址
验证服务器配置是否真正生效
光看协议支持不够,还要确认实际连接行为:
- 用浏览器访问站点,点击地址栏锁图标 → 查看证书详情,确认协议版本与协商套件(Chrome 开发者工具 → Security 标签页)
- 用
openssl s_client -connect example.com:443 -tls1_2手动指定协议握手,观察返回的Cipher行 - 检查是否启用 HSTS:
curl -I https://example.com | grep strict,应返回strict-transport-security头且含max-age
避开常见误判陷阱
有些“弱”提示并不等于真实风险,需结合上下文判断:
- 显示 “supports medium strength cipher”:可能只是服务端仍开放了 AES128-GCM 类中等强度套件——只要不包含已知可利用漏洞(如 SWEET32、BEAST),且优先级低于强套件,属合理兼容配置
- “Self-signed certificate” 报警:内网系统或测试环境使用私有 CA 签发证书时正常,无需强求公网信任链
- “OCSP stapling not enabled”:影响证书吊销检查效率,但不构成加密强度缺陷;若业务对实时吊销敏感(如金融类),再启用即可

















