【问题标题】:Openfire: how to add and autorenew a letsencrypt certificate?Openfire:如何添加和自动更新letsencrypt证书?
【发布时间】:2020-02-20 23:19:11
【问题描述】:

如何添加由certbot like自动生成的letsencrypt证书来开火

  1. Letsencrypt 证书没有密码,如果有我不知道,因为它是自动生成的,但我确定它没有密码
  2. 我有一个可以自动更新它的 cron,因此我也想在 Openfire 上自动更新它

如果我使用证书管理器,则必须有人手动更新它。

【问题讨论】:

    标签: openfire


    【解决方案1】:

    检查证书管理器插件的自述文件:

    证书管理器插件自述文件 概述

    证书管理器插件为 Openfire 添加了与证书存储管理相关的功能。 安装

    将 certificatemanager.jar 复制到 Openfire 安装的插件目录中。然后将自动部署该插件。要升级到新版本,请将新的 certificatemanager.jar 文件复制到现有文件上。 配置

    插件是通过 Openfire 管理控制台配置的。安装后,会出现一个新的管理控制台页面。该页面可以在“服务器”、“TLS/SSL 证书”选项卡下找到。在那里,这个插件在侧边栏添加了一个新项目,名为“管理”。 使用插件

    此插件允许 Openfire 监控特定目录(默认为 /resources/security/hotdeploy/)中的文件更改。每当找到一组由 PEM 编码的私钥和 PEM 编码的证书链组成的文件时,此插件将尝试将它们安装在 Openfire 身份存储中。 让我们加密/Certbot 集成

    上述目录观察器机制是利用 Let's Encrypts Certbot 生成的定期更新数据的绝佳方式。 Openfire 可以配置为监视 certbot 放置更新数据的目录。但是,这可能会导致文件权限问题(Openfire 进程通常无法读取 certbot 目录)。另一种解决方案是使用 certbots post-hook 将数据复制到 Openfire 可以使用的目录中。

    【讨论】:

      【解决方案2】:

      为了扩展 Bo Kersey 有用的答案,完成他答案的最后一部分:“使用 certbots post-hook 将数据复制到 Openfire 可以使用的目录中”。这些是完成这部分答案的步骤:

      Certbot renew with post-hook documentation,表示可以从/etc/letsencrypt/renewal-hooks/post运行脚本来实现解决方案:

      "您还可以通过将文件放置在子目录中来指定挂钩 Certbot 的配置目录。假设您的配置 目录是/etc/letsencrypt,在 /etc/letsencrypt/renewal-hooks/pre, /etc/letsencrypt/renewal-hooks/deploy,和 /etc/letsencrypt/renewal-hooks/post 将作为 pre、deploy 和 当任何证书通过更新更新时分别发布挂钩 子命令。”

      解决方案步骤...

      此解决方案依赖于 OpenFire 证书管理器插件 - 如上所述。要安装插件,请从 OpenFire 插件页面下载插件文件:certificatemanager.jar,链接如下:https://www.igniterealtime.org/projects/openfire/plugins.jsp

      然后,在 OpenFire consul 的 Plug-in 选项卡上,选择然后上传 certificatemanager.jar 文件。这应该会安装插件 - 请参见下面的屏幕截图。

      OpenFire Consul 中应该会出现一个新选项卡:服务器 > TLS/SSL 证书。这表明插件安装正确。

      安装插件后,返回终端并运行以下命令:

      sudo su
      cd /etc/letsencrypt/renewal-hooks/post
      nano copykeys.sh
      

      复制粘贴:

      #!/bin/bash
      cp /etc/letsencrypt/live/MY-DOMAIN/privkey.pem /resources/security/hotdeploy/my-domain-privkey.pem
      cp /etc/letsencrypt/live/MY-DOMAIN/fullchain.pem /resources/security/hotdeploy/my-domain-fullchain.pem
      

      保存并退出:

      Ctrl,然后是X,然后是Y,然后是Enter

      使脚本可执行:

      chmod +x copykeys.sh
      

      完成!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-02-23
        • 1970-01-01
        • 1970-01-01
        • 2019-12-02
        • 1970-01-01
        • 2020-01-27
        • 2019-11-14
        • 1970-01-01
        相关资源
        最近更新 更多