![验证 ejabberd 指纹](https://linux22.com/image/668515/%E9%AA%8C%E8%AF%81%20ejabberd%20%E6%8C%87%E7%BA%B9.png)
我设置并测试了 ejabberd 服务器。Ejabberd 在安装过程中会自行创建 SSL 证书。遗憾的是,我没有找到任何有关如何获取其指纹的教程。
本文档显示了如何创建证书,但没有显示如何显示其指纹。
我尝试了一些我找到的命令。例如
openssl pkcs8 -in /etc/ejabberd/ejabberd.pem -inform PEM -outform DER -topk8 -nocrypt | openssl sha1 -c
或者
openssl rsa -in /etc/ejabberd/ejabberd.pem -pubout -outform DER | openssl SHA1 -c
和
ec2fp /etc/ejabberd/ejabberd.pem
当我使用 pidgin 连接到 ejabberd 服务器并选择出示证书它向我显示的 SHA1 指纹与我测试上述命令时获得的所有指纹不同。
我很确定这不是中间人攻击,因为这发生在我的局域网测试环境中。
有人能告诉我,获取 ejabberd-SSL-Certificate 指纹的正确命令是什么?
答案1
SHA1:
openssl x509 -in /etc/ejabberd/ejabberd.pem -noout -sha1 -fingerprint
SHA256:
openssl x509 -in /etc/ejabberd/ejabberd.pem -noout -sha256 -fingerprint
使用的版本:ejabberd 21.01、openssl 1.1.1d、Debian 10 buster。