Ejabbed与letsencrypt证书
问题描述:
我试图让Ejabberd与上centos7 letsencrypt证书工作。 我不断收到有关的错误不是由已知的CA签名证书Ejabbed与letsencrypt证书
我已经创建了由certbot证书,我加入了的privKey和fullchain文件,单个文件。
所有C2S连接正常工作,但S2S连接不。
当开始Ejabberd我看到下面的相关日志条目:
[warning] <0.606.0>@ejabberd_pkix:check_ca_dir:386 CA directory /etc/ssl/certs doesn't contain hashed certificate files; configuring 'ca_path' option might help
[warning] <0.606.0>@ejabberd_pkix:mk_cert_state:240 certificate from /opt/ejabberd/conf/xxxx.pem is invalid: certificate is signed by unknown CA
连接到例如draugr.de生成以下条目:
[info] <0.793.0>@ejabberd_s2s_in:handle_auth_failure:206 (tls|<0.792.0>) Failed inbound s2s EXTERNAL authentication draugr.de -> XXXXX.net (::FFFF:89.163.212.45): unable to get local issuer certificate
我希望有人能帮助我,谢谢!
答
同样在这里,他们表示将与17.09工作...
答
我能够最终解决这个问题我自己,但我不在办公室,未来几天,不能让你确切配置来解决它。
但是如果我没有记错,我在这里下载了CA软件包https://curl.haxx.se/docs/caextract.html,并且有一些配置参数用于ejabberd使用此CA软件包而不是默认软件包。
希望它可以帮助你。
答
如果工作C2S和不工作的S2S那么它看起来像在配置文件中的S2S块不与certFile中更新。我相信你有这样的事情为C2S:
port: 5222
ip: "::"
module: ejabberd_c2s
starttls: true
certfile: 'CERTFILE'
protocol_options: 'TLSOPTS'
同样的S2S块应该有:
port: 5269
ip: "::"
module: ejabberd_s2s_in
starttls: true
certfile: 'CERTFILE'
protocol_options: 'TLSOPTS'
max_stanza_size: 131072
shaper: s2s_shaper