是否可以在 Tomcat 中进行 TLS 握手事件?

Posted

技术标签:

【中文标题】是否可以在 Tomcat 中进行 TLS 握手事件?【英文标题】:Is it possible to do a TLS handshake event in Tomcat? 【发布时间】:2010-09-20 23:08:18 【问题描述】:

我在 tomcat 中运行启用了 TLS 的应用程序(Web 服务)(客户端和服务器都有证书)。

我希望我的应用程序能够在 TLS 握手失败时发送审核消息(日志记录)。例如我想在以下时间记录:

客户端证书已过期, 客户端证书未知(不在服务器信任库中) 任何其他握手失败

为了做到这一点,我可以捕捉和处理任何事件吗?

我的应用程序是基于 Web 服务的,并且在 tomcat 中运行。 Tomcat 正在处理所有网络和 TLS 层,而应用程序不知道这一点。

由于我自己没有打开任何套接字,我应该在哪里捕获这个异常?

【问题讨论】:

你有什么办法吗?我的要求更不符合你的要求,没有找到出路我正在使用 Tomcat 8 和 Java 8 版本 【参考方案1】:

我不知道您可以向 Tomcat 添加什么。

将 Apache HTTPD 放在前面,并使用单独的、已配置的 SSL 日志。

【讨论】:

【参考方案2】:

自从我在过去一周调试 Tomcat 的 SSL 配置以来,我很确定在您的代码中捕获 javax.net.ssl.SSLHandshakeException 并记录它应该可以解决所有这三个错误。

当您在应用程序中实例化新的 Web 服务连接时,就会发生异常。

【讨论】:

我的应用程序是基于 Web 服务的,并且在 tomcat 中运行。 Tomcat 正在处理所有 TLS 问题,而应用程序并没有意识到这一点。我应该在哪里捕获这个异常? 我的应用程序是“服务器端”(使用axis2)它不会显式启动任何东西 Josh,我想您可能是在谈论在客户端捕获异常? Yanatan 正在询问服务器端。

以上是关于是否可以在 Tomcat 中进行 TLS 握手事件?的主要内容,如果未能解决你的问题,请参考以下文章

在具有 Java 8 的嵌入式 Tomcat 8.5 上启用 TLS 握手的可观察性(日志记录/指标)

在TLS / SSL握手(证书等)中泄露了哪些信息? [关闭]

TLS 握手失败,CurrentUser 工作,而 LocalMachine 不工作

mac tomcat https

HTTPS 中 TLS 和 TCP 能同时握手吗?

TLS协议的TLS握手协议