acme申请证书

/ 0评 / 1

实话实说,军哥的LNMP一键安装包太好用了,装完之后lnmp help就可以部署网站、申请证书、管理网站,网站的目录结构也很清晰明了。
但是它也不是没有缺点。
如果VPS的硬盘太小,比如我有一台俄罗斯的小机器,只有5G硬盘,就不能用LNMP了,在编译的过程中硬盘会爆掉的。
这种小硬盘的VPS只能用包管理器来装软件了,可是优秀的工具用惯了,必须手动操作的时候就很让人抓狂——配置文件放在哪的?证书安装到哪里去了?
现在记录一下用acme手动申请证书的过程,免得自己过段时间又忘记怎么操作。

根据域名停放的DNS服务商来选择不同的参数,比如我放在cloudflare的,那么应该先将cloudflare的api和账户邮箱导入环境变量:
也许在执行所有的步骤之前,应该最先做这一步:

acme.sh --set-default-ca --server letsencrypt
export CF_Key="CF_API_KEY"
export CF_Email="abc@gmail.com"

然后执行下面的命令来申请证书:

acme.sh --issue --dns dns_cf -d test.gotototo.com --force

申请好证书后,再将它放到需要的位置去:

mkdir /etc/nginx/ssl

acme.sh --install-cert -d test.gotototo.com \
--cert-file /etc/nginx/ssl/test.gotototo.com.cer \
--key-file /etc/nginx/ssl/test.gotototo.com.key  \
--fullchain-file /etc/nginx/ssl/fullchain.cer

openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048

然后就可以修改/etc/nginx/conf.d/目录下的网站配置文件,可以将别的网站的配置文件复制过来修改一下证书路径、网站名称和网站目录地址。
修改好后执行nginx -t测试一下,没有错误的话nginx -s reload重载nginx的配置文件即可。

2022/7/29更新:

acme.sh --issue --dns dns_cf -d test.gotototo.com --force

这个命令可以自动将证书放到以前的默认位置,不需要再手动操作证书的转移了。

Leave a Reply

Your email address will not be published. Required fields are marked *