Let's Encrypt泛域名SSL证书申请
操作系统:CentOS 7
github:https://github.com/Neilpang/acme.sh
有中文说明:
https://github.com/Neilpang/acme.sh 很详细.
一:安装acme.sh
wget https://get.acme.sh | sh
安装完成后的目录在/root/.acme.sh/下面.
直接使用 cd /root/.acme.sh 命令 进入.acme.sh目录.
二:生成SSL证书.
生成证书直接需要认证域名的所有权.
有三种方式
1:在你域名的HTTP域名网站相应目录下放置一个文件,然后经过这个文件进行认证
2:在相应的域名上增加一个TXT解析.
3:使用相应的域名解析商(DNS服务商)的API
我使用的阿里云的解析服务,看了一下,可以支持.
直接使用第三种方式.具体支持的DNS见:
https://github.com/Neilpang/acme.sh/blob/master/dnsapi/README.md (英文的)
在acme.sh目录下面有一个account.conf文件...增加Ali_Key和Ali_Secretf二个值....是阿里云的密钥.
命令行:
./acme.sh --issue --dns dns_ali --force -d abc.domain.com
--force 可以在更新的时候直接使用.
生成成功会有提示...并且自动建立一个abc.domain.com的目录.相关的证书文件保存在这个目录下面..
三:安装到nginx
命令:
./acme.sh --installcert -d abc.domain.com
--keypath /etc/nginx/ssl/abc.domain.com.key
--fullchainpath /etc/nginx/ssl/abc.domain.com.cer
命令运行成功,可在ls /etc/nginx/ssl,查看到相应的文件.
因为要更新多个域名 ...所以没有直接重新nginx
四:nginx配置
修改/etc/nginx/nginx.conf文件
server {
listen 443 ssl;
server_name abc.domain.com;
ssl on;
ssl_certificate ssl/abc.domain.com.cer;
ssl_certificate_key ssl/abc.domain.com.key;
location / {
proxy_pass http://127.0.0.1:8001;
}
}
# 80端口直接转到443
server {
listen 80;
server_name abc.domain.com;
return 301 https://$server_name$request_uri;
}
可以把相应的命令放到一个文件中...然后直接使用.
Let's Encrypt 现在只有60天有效期...到期后需要续期.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2016-08-23 nginx+memcache实现页面缓存应用
2016-08-23 nginx expires配置