加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

如何在Linux OS上自动从实时网络流量中提取X.509证书

发布时间:2020-12-13 17:19:00 所属栏目:Linux 来源:网络整理
导读:如果有人能指出我如何在 Linux OS上的客户端和服务器之间的握手阶段自动从实时网络流量中提取X.509证书,我将不胜感激. 一些类似的问题在Extracting SSL certificates from the network or pcap files年前一段时间被安静地问过,但答案是不完整的. 答案说使用
如果有人能指出我如何在 Linux OS上的客户端和服务器之间的握手阶段自动从实时网络流量中提取X.509证书,我将不胜感激.

一些类似的问题在Extracting SSL certificates from the network or pcap files年前一段时间被安静地问过,但答案是不完整的.

答案说使用以下命令

ssldump -Nr file.pcap | awk 'BEGIN {c=0;} { if ($0 ~ /^[ ]+Certificate$/) {c=1; print "========================================";} if ($0 !~ /^ +/ ) {c=0;} if (c==1) print $0; }'

但是由于pcap文件的参与,它被用于手动提取证书.

任何人都可以帮助修改上述命令以满足我的要求或建议任何其他替代方法来做同样的事情.

解决方法

您是否尝试从数据包捕获中专门提取它,或者您是否只想在握手期间从命令行获取证书?

如果您只需要获取证书本身,则可以执行以下操作:

echo | openssl s_client -connect sub.domain.tld:443 | openssl x509 -noout -text

如果在没有回滚到openssl的情况下运行命令,那么您可以看到有关证书的更多详细信息,但第二个openssl命令会提取证书本身.

需要回显管道才能使OpenSSL shell干净地退出以返回到Bash提示符.

这显然会将所有内容写入STDOUT.如果要保存证书,则需要通过使用>结束命令来重定向到文件. filename.crt.如果证书链中存在任何错误,它们将不会以文件结尾,而是写入STDERR.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读