如何在远程服务器的控制台上识别它在 HTTPS 端点上提供的 TLS

如何在远程服务器的控制台上识别它在 HTTPS 端点上提供的 TLS

我想找到一种方法,仅使用“标准”Linux 命令行工具来识别远程 HTTPS 端点提供的 TLS 类型。

我想知道服务器提供什么类型的 TLS:相互身份验证、服务器身份验证、匿名;
对于所使用的证书,域名、主题和有效期是什么。

我从

openssl s_client -connect example.com:443

但实际上无法识别它是什么类型的 TLS(其余的我想我能够识别)。

答案1

该命令应该为您提供您想要的内容,例如openssl s_client -connect google.com:443包含TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384在输出中。

确定允许哪些 TLS 版本的更明确方法可以在顺序命令中切换每个版本:

openssl s_client -tls1_3 -connect google.com:443
openssl s_client -tls1_2 -connect google.com:443
openssl s_client -tls1_1 -connect google.com:443
openssl s_client -tls1  -connect google.com:443

相关内容