使用ssl域名证书自动续期工具acme.sh的注意事项

-------------------------

更新:

1.查看已安装证书信息命令

acme.sh --info -d example.com# 会输出如下内容:DOMAIN_CONF=/root/.acme.sh/example.com/example.com.confLe_Domain=example.com
Le_Alt=no
Le_Webroot=dns_ali
Le_PreHook=
Le_PostHook=
Le_RenewHook=
Le_API=https://acme-v02.api.letsencrypt.org/directory
Le_Keylength=
Le_OrderFinalize=https://acme-v02.api.letsencrypt.org/acme/finalize/23xxxx150/781xxxx4310
Le_LinkOrder=https://acme-v02.api.letsencrypt.org/acme/order/233xxx150/781xxxx4310
Le_LinkCert=https://acme-v02.api.letsencrypt.org/acme/cert/04cbd28xxxxxx349ecaea8d07
Le_CertCreateTime=1649358725
Le_CertCreateTimeStr=Thu Apr  7 19:12:05 UTC 2022
Le_NextRenewTimeStr=Mon Jun  6 19:12:05 UTC 2022
Le_NextRenewTime=1654456325
Le_RealCertPath=
Le_RealCACertPath=
Le_RealKeyPath=/etc/acme/example.com/privkey.pem
Le_ReloadCmd=service nginx force-reload
Le_RealFullChainPath=/etc/acme/example.com/chain.pem

通过最后三个,可以查看安装命令执行是否成功

2.查看自动更新证书的定时任务

crontab -l

56 * * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null

 

官方中文说明地址:说明 · acmesh-official/acme.sh Wiki · GitHub

---------------------------------------------

1.如果你的安装服务器位于中国大陆境内, 访问 github 可能会不成功. 所以安装可能会失败.

  1. 推荐从这里下载安装:

https://gitee.com/neilpang/acme.sh

安装步骤:

根据 How-to-install#3-or-git-clone-and-install
如何安装#3-or-git-clone-and-install

根根据How-to-install#3-or-git-clone-and-install
如何安装#3-or-git-clone-and-install

git clone https://gitee.com/neilpang/acme.sh.git
cd acme.sh
./acme.sh --install -m my@example.com

2.中文说明里以腾讯云举例,其他DNS提供商的使用方法见页面:

How to use DNS API
如何使用DNS API

DNS api usage:DNS API使用情况:

https://github.com/acmesh-official/acme.sh/wiki/dnsapi

我们一般常用除了腾讯云,就是阿里云了,所以把阿里云的说明记录一下:

Use Aliyun domain API to automatically issue cert
使用阿里云域名API自动颁发证书

First you need to login to your Aliyun account to get your RAM API key. https://ram.console.aliyun.com/users
首先,您需要登录您的阿里云帐户以获取RAM API密钥。& nbsp;https://ram.console.aliyun.com/users

export Ali_Key="<key>"
export Ali_Secret="<secret>"
 

Ok, let's issue a cert now:好了,现在我们来开一张证书:

./acme.sh --issue --dns dns_ali -d example.com -d *.example.com
 

The Ali_Key and Ali_Secret will be saved in ~/.acme.sh/account.conf and will be reused when needed.
Ali_KeyAli_Secret将保存在~/. acme.sh/account.conf中,并在需要时重复使用。

注意:阿里的RAM用户创建后默认没有任何权限,需要手动添加以下两个权限:

AliyunDomainFullAccess   -  管理域名服务的权限
AliyunDNSFullAccess - 管理云解析(DNS)的权限

3.Linux中如果你使用普通用户,而不是root,注意 服务如nginx存放证书的目录,当前普通用户要有写入权限

4.如果你的服务如nginx在Docker里运行,则记得修改reloadcmd。

我直接修改成 docker restart nginx(你的容器名),是有效的,如果你担心服务中断,可以试着自己改:1.进入容器 2.执行重新加载命令,但是我没尝试

5.测试是否生效

需要服务正常运行,然后访问,没有警告提示,一般就说明成功了,然后地址栏左侧会有一个小锁图标,点击锁,可以查看证书的相关信息,要查看更多信息,可以借助一些检测网站,如阿里云里就有,还发现一个同时能检测安全程度的网站:

SSL状态检测

可以根据提示对ssl相关的安全性进行升级调整

参考文章:

SSL 网站检查时:没有优先使用FS系列加密套件,降级为B问题解决

网站开启HSTS的详细教程 | 柴郡猫

如何在 Nginx 中启用 HSTS?-腾讯云开发者社区-腾讯云

 

posted @ 2024-04-11 17:30  dirgo  阅读(165)  评论(1编辑  收藏  举报