如何使用openssl命令行客户端向服务端发送TLS shutdown通知
openssl s_client 主动发送TLS shutdown通知操作方法
交互场景操作
- 正常执行
openssl s_client -connect localhost:xxxx进入交互会话后,直接按下Ctrl + D组合键即可。
该操作会向openssl进程发送标准输入EOF信号,客户端收到信号后会主动构造标准的close_notifyTLS告警报文发送给服务端,走完整的正常TLS关闭流程,而非直接暴力断开TCP连接。
非交互/脚本场景操作
如果是在自动化脚本中使用,不需要人工介入,可以通过管道传递输入的方式让客户端自动发送shutdown通知:
- 不需要发送业务请求,仅验证TLS关闭流程的话,直接传递空输入即可,示例命令:
echo -n | openssl s_client -connect localhost:xxxx
- 需要先发送业务请求再触发关闭的话,把请求内容通过管道传递即可,请求发送完成后客户端会自动触发TLS shutdown,示例:
echo -e "GET /test HTTP/1.1\r\nHost: localhost\r\nConnection: close\r\n\r\n" | openssl s_client -connect localhost:xxxx
上述两种方式触发的都是标准TLS正常关闭流程,可直接用于验证服务端对TLS正常关闭的处理逻辑,不会产生异常断开的错误日志或半开连接。
内容的提问来源于stack exchange,提问作者User2021
相关产品推荐
相关产品推荐

