【问题标题】:Send TLS shutdown as a client with openssl commandline使用 openssl 命令行作为客户端发送 TLS 关闭
【发布时间】:2021-10-31 13:22:03
【问题描述】:

我使用openssl 命令行作为客户端与使用 TLS 的服务器进行通信,如下所示:

openssl s_client -connect localhost:xxxx

我希望客户端使用命令行向服务器发送 TLS 关闭。我该怎么做?

【问题讨论】:

    标签: ssl openssl


    【解决方案1】:

    TLS 关闭在 TLS 连接关闭时发送。 s_client 不支持显式触发 SSL_shutdown 但保持底层 TCP 连接打开。

    例如可以通过在输入中输入“Q”来触发关闭,请参阅文档中的CONNECTED COMMANDS。另请参阅 dave_thompson_085 的评论,了解如何触发关闭的其他方式。

    【讨论】:

    • s_client 也 当它在标准输入上获得EOF时 除非你指定@ 987654323@。如果您不重定向,例如使用 < 或 | 它具有与运行它的 shell(或 CMD/PS)相同的标准输入,而后者通常但不总是用户的终端或控制台,在这种情况下,在 Unix 上一行“组成” ctrl-D 通常是 EOF,在 Windows 上(除了 Unix-on-Windows 仿真,如 cygwin) ctrl-Z always(?) 是。如果你在 Unix 上 </dev/null 或在 Windows 上 <NUL 它会立即获得 EOF。
    • @dave_thompson_085:感谢您提到这些实现完全连接关闭的所有其他方法,其中还包括 SSL 关闭。但是仍然没有办法在不关闭底层 TCP 连接的情况下强制关闭 SSL。
    猜你喜欢
    • 2012-06-29
    • 2013-06-06
    • 1970-01-01
    • 2011-05-03
    • 2020-01-24
    • 2018-04-27
    • 2014-01-29
    • 2011-09-19
    相关资源
    最近更新 更多