如何更新让ejabberd配置的服务器中的证书加密?

时间:2019-05-28 06:08:48

标签: ejabberd debian-jessie

如何续订让ejabberd配置的服务器中的证书加密?我的服务器是Debian-jessie,我尝试使用以下命令续订SSL证书, certbot certonly -d mydomainname

但是它产生了意外错误:

  

授权过程失败。 :缸体:acme:错误:连接::超时   连接期间(可能是防火墙问题)。跳过。

连接期间超时(可能是防火墙问题)

要解决这些错误,请确保您的域名是    输入正确,并且该域的DNS A记录    包含正确的IP地址。此外,请检查    您的计算机具有可公开路由的IP地址,    防火墙阻止服务器与    客户。如果您使用的是webroot插件,则还应验证    您正在从提供的webroot路径提供文件。

1 个答案:

答案 0 :(得分:1)

找到了正确的答案:

  

您需要先停止服务ejabberd服务,然后再执行   过程,

 service ejabberd stop
  

然后将过期的ssl pem文件移动到其他位置,

mv /etc/ejabberd/ejabberd.pem  /etc/ejabberd/ejabberd.pem.backup
  

转到证书引导所在的目录,

cd /root
  

依次输入以下命令以续订证书。    必填域

certbot certonly --webroot -w /etc/ejabberd -d yourdomain.com --force-renewal --rsa-key-size 4096

然后将生成的ssl文件合并到ejabberd配置文件

cat /etc/letsencrypt/live/yourdomain.com/privkey.pem /etc/letsencrypt/live/chat.yourdomain.com/fullchain.pem > ejabberd.pem
  

然后将pem文件移动到ejabberd根路径

mv ejabberd.pem /etc/ejabberd

chown ejabberd /etc/ejabberd/ejabberd.pem
  

启用ejabberd服务

service ejabberd start

service ejabberd status