SSL.com

ACME SSL /TLS 使用Apache和Nginx实现自动化

本操作方法将引导您通过SSL.com通过ACME协议和Certbot客户端为Apache和Nginx设置自动证书安装和续订。

请注意: 您将需要SSH访问和 sudo 您的Web服务器上的特权以遵循这些说明。
请注意:
您可以使用许多其他 ACME 客户端,包括 Kubernetes认证经理,使用 SSL.com 的 ACME 服务。
acme4j  客户端现在可以在此存储库上使用 SSL.com ACME 服务: https://github.com/SSLcom/acme4j
请参阅您的软件提供商的文档,了解其他非 Certbot ACME 客户端的说明。

安装Certbot并检索ACME凭据

  1. SSH进入您的Web服务器。
  2. 确保当前版本 Certbot以及Apache和Nginx插件一起安装在您的Web服务器上:
    • 如果你有 已安装,您可以使用以下命令进行安装:
      sudo snap install-经典certbot
    • If /snap/bin/ 不在你里面 PATH,您还需要添加它或运行如下命令:
      须藤ln -s / snap / bin / certbot / usr / bin / certbot
  3. 从SSL.com帐户中检索ACME凭据:
    1. 登录到您的SSL.com帐户。 如果您已经登录,请转到 卖家专用后台 标签。
      卖家专用后台
    2. 点击 api凭证,位于 开发人员与整合.
    3. 您将需要您的 帐户/ ACME密钥HMAC密钥 请求证书。 点击剪贴板图标(),然后将每个值复制到剪贴板。

Apache安装和自动化

使用这样的命令在Apache上安装。 用您的实际值替换ALL CAPS中的值:

sudo certbot --apache --email EMAIL-ADDRESS --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid ACCOUNT-KEY --eab-hmac-key HMAC-KEY --server https://acme.ssl.com/sslcom-dv-ecc -d DOMAIN.NAME

分解命令:

请注意: Certbot 2.0.0 或更新版本默认为新证书生成 ECDSA。 以上命令用于 ECDSA 密钥对和证书。 要改为使用 RSA 密钥:
  • 更改 --server 命令中的值 https://acme.ssl.com/sslcom-dv-rsa
请注意: 您可以使用 -d DOMAIN.NAME 在命令中多次选择将域名添加到证书中。 请参阅我们的信息 证书类型和账单 看看域名的不同组合如何映射到 SSL.com证书类型 及其相应的定价。
当你第一次运行上面的 certbot 命令,ACME 帐户信息将存储在您计算机上的配置目录 (/etc/ssl-com 在上面显示的命令中。 在以后运行 certbot 时,您可以省略 --eab-hmac-key--eab-kid 选项,因为 certbot 将忽略它们而支持本地存储的帐户信息。

如果您需要将计算机的 ACME 证书订单与不同的 SSL.com 帐户相关联,则应使用以下命令从计算机中删除此帐户信息 sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (或者,如果您省略了可选的 --config-dir 选项, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

运行命令后,您应该看到如下输出:

将调试日志保存到/var/log/ssl-com/letsencrypt.log选定的插件:Authenticator apache,Installer apache获得新证书执行以下挑战:DOMAIN.NAME的http-01挑战等待验证...清理挑战在/etc/apache2/sites-available/DOMAIN-le-ssl.conf中创建了一个SSL虚拟主机。将证书部署到VirtualHost /etc/apache2/sites-available/DOMAIN-le-ssl.conf中。启用可用站点:/ etc / apache2 / sites-available / DOMAIN-le-ssl.conf将/etc/apache2/sites-enabled/DOMAIN.NAME.conf中的vhost重定向到/etc/apache2/sites-available/DOMAIN-le-ssl.conf中的ssl vhost-- -----------------------------------恭喜! 您已成功启用https://DOMAIN.NAME------------------------------------------ --

Certbot还将创建这样的crontab文件,以自动在30天内过期的任何certbot安装的证书进行自动非交互式续订:

$ cat /etc/cron.d/certbot#/etc/cron.d/certbot:certbot软件包的crontab条目##上游建议每天尝试两次更新##最终,这将是一次机会来验证证书#haven'只能在到期日为30天之内进行更新。 # # 重要的提示! 如果您#运行systemd作为初始化系统,则不会执行此cronjob。 如果您正在运行systemd,则#cronjob.timer函数优先于此cronjob。 有关#的更多详细信息,请参见systemd.timer联机帮助页,或使用systemctl show#certbot.timer。 SHELL = / bin / sh PATH = / usr / local / sbin:/ usr / local / bin:/ sbin:/ bin:/ usr / sbin:/ usr / bin 0 * / 12 * * *根测试-x / usr / bin / certbot -a \! -d / run / systemd / system && perl -e'sleep int(rand(43200))'&& certbot -q更新
请注意: 所有SSL /TLS SSL.com通过ACME发行的证书的有效期为一年。

Nginx安装和自动化

对于Nginx,只需替换 --nginx --apache 在上面显示的命令中:

sudo certbot --nginx --email EMAIL-ADDRESS --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid ACCOUNT-KEY --eab-hmac-key HMAC-KEY --server https://acme.ssl.com/sslcom-dv-ecc -d DOMAIN.NAME
请注意: Certbot 2.0.0 或更新版本默认为新证书生成 ECDSA。 以上命令用于 ECDSA 密钥对和证书。 要改为使用 RSA 密钥:
  • 更改 --server 命令中的值 https://acme.ssl.com/sslcom-dv-rsa

手动强制续订

如果您希望在即将到期之前手动续订证书,请使用以下命令:

certbot更新--force-renewal-证书名称DOMAIN.NAME

SSL.com提供了多种 SSL /TLS 服务器证书 用于HTTPS网站。

比较SSL /TLS 证书

退出手机版