新机器需要证书,现在的acme证书默认使用zerossl,这次不想用dns的方法,就申请一个子域名的证书。现在acme有很多种模式,甚至可以自己开一个http指定端口,单似乎验证方不认可自定义的域名,还得是在80端口。
1.下载脚本
curl https : / / get.acme.sh \ sh -s email=my@example.com
或者
wget -o - https : / /get.acme.sh | sh -s email=my@example.com
2.申请证书
cd ~/.acme
./acme.sh --issue -d example.com -d test.com -w /usr/share/nginx/html
我的http服务使用nginx,默认的html路径在这,具体可参考nginx的配置文件查找。
这里我参考的教程写着:/home/webroot我以为在根html下还要加webroot…折腾半天是这原因…
使用zerossl还可以加上–register-account -m myemail@example.com ,通过网页可以查询对应信息。
3.安装证书
证书申请下后在家目录.acme中,将其安装到nginx中
~/.acme.sh/acme.sh --install-cert -d *.example.com \
--cert-file /usr/local/nginx/ssl/cert.pem \
--key-file /usr/local/nginx/ssl/key.pem \
--ca-file /usr/local/nginx/ssl/ca.pem \
--fullchain-file /usr/local/nginx/ssl/fullchain.pem \
--reloadcmd "service nginx force-reload"
如果修改过nginx文件可以通过nginx -t 检查配置文件是否正确
4.参考文章
https://www.bilibili.com/read/cv15876438