我有一台 Linux 服务器,它已与客户端建立了 TCP 端口连接。我能否使用基本 Linux 安装中的任何网络命令或 nmap 命令来检查此端口上的连接是否支持 TLS 1.2?
答案1
啊,抱歉,一开始我漏掉了“已建立 TCP 连接”这个短语。如果您知道应用程序未加密时的数据流是什么样子,那么您可以使用 TCPDump 捕获流量并检查它是否看起来像应用程序的数据。
如果您可以看到应用程序数据,那么您就知道它未加密。
--- 原始答案 ---
您可以使用 OpenSSL:
openssl s_client -connect hostname:port
您可以在以下位置找到更多信息https://www.openssl.org/docs/man1.0.2/apps/openssl-s_client.html
答案2
不,SSL/TLS 不是底层内核网络套接字的属性,因此它不会被任何工具(如netstat
、ss
等)公开。
您需要使用tcpdump
来捕获两个进程之间的网络流量并进行分析,尤其是初始连接握手,它应该会向您显示提议和接受的 TLS 版本。我不确定握手完成后版本的可见性如何。