本文章将教你用acme.sh给域名申请免费SSL证书,并且可以自动续期。



首先,你需要先安装acme.sh,输入以下命令安装:

curl https://get.acme.sh | sh -s email=my@example.com

如果慢的话,用以下地址:

curl https://gitcode.net/cert/cn-acme.sh/-/raw/master/install.sh?inline=false | sh -s email=my@example.com

把“my@example.com”改为你的邮箱。

然后到freessl注册一个账号,然后来到“ACME 自动化”,单击“添加”,输入你的域名:

接着,去dns解析给的记录:

然后就可以部署了,将acme.sh部署命令执行:

然后再输入以下命令(Nginx):

acme.sh --install-cert -d example.com \
--key-file       /root/.acme.sh/exmaple.com/key.pem  \
--fullchain-file /root/.acme.sh/exmale.com/cert.pem \
--reloadcmd     "service nginx force-reload"

Apache用以下命令:

acme.sh --install-cert -d example.com \
--cert-file      /path/to/certfile/in/apache/cert.pem  \
--key-file       /path/to/keyfile/in/apache/key.pem  \
--fullchain-file /path/to/fullchain/certfile/apache/fullchain.pem \
--reloadcmd     "service apache2 force-reload"

将所有的“example.com”改为你的站点,然后执行命令,最后来到/root/.acme.sh/example.com,将key.pem和cert.pem的内容复制走,就可以啦~

效果:

不知道常不常见的问题

执行acme.sh命令时提示`-bash: acme.sh: command not found,使用``source ~/.bashrc`或source ~/.bash_profile``来修复。

参考文档:

官方文档

acme.sh错误修复

[info]写于2023/1/28 12:23[/info]