一款开源&免费申请SSL/TLS证书工具

文摘   2025-01-20 09:11   美国  
| 项目介绍

Acme.sh是一个用于自动化 Let's Encrypt 免费 SSL/TLS 证书申请、续订和管理的 Bash 脚本工具。Let's Encrypt 是一个提供免费 SSL/TLS 证书的证书颁发机构(CA),旨在促进互联网的安全性,通过自动化和简化证书获取过程,鼓励网站管理员启用 HTTPS。

| 功能特点


                      • 自动化:acme.sh 能够自动完成证书的申请、安装和续订过程,大大简化了管理工作。

                      • 多域名支持:支持单个域名以及通配符证书(Wildcard Certificates)和多域名证书(SAN Certificates)。

                      • DNS API 支持:对于没有HTTP服务器的环境,acme.sh 支持通过 DNS API 自动验证域名所有权,从而获取证书。

                      • 兼容性:兼容各种 Web 服务器和反向代理软件,如 Nginx、Apache、HAProxy 等。

                      • 续订管理:自动检测证书的到期日期,并在证书即将到期时自动续订。

                      • 安全性:使用非交互式方式管理私钥,确保私钥的安全存储。

                      | 应用场景


                                      • 个人网站或博客:为个人网站或博客启用 HTTPS,提高用户访问时的数据安全。

                                      • 企业内部应用:为企业内部应用提供 SSL/TLS 证书,保护数据传输安全。

                                      • 自动化部署:在 CI/CD 流程中集成 acme.sh,自动化部署和更新 SSL/TLS 证书。

                                      • 开发者工具:作为开发者工具,为开发和测试环境提供免费的 SSL/TLS 证书。

                                      如需了解更多信息,可以访问其官方网站或查阅相关的技术文档。

                                      GitHub地址
                                      https://github.com/acmesh-official/acme.sh

                                      文档说明

                                      https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E

                                      | 安装步骤


                                      安装指令

                                      指令里面需要填写相应的邮箱地址。

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

                                      安装过程将acme.sh安装到你的home目录,自动为你创建cronjob, 每天0:00点自动检测所有的证书,如果快过期了,需要更新,则会自动更新证书。

                                      Acme.sh实现了acme协议支持的所有验证协议,一般有两种方式验证: HTTP 和 DNS 验证。

                                      HTTP 验证

                                      直接签发:需要指定域名,并指定域名所在的网站根目录。acme.sh会全自动的生成验证文件,并放到网站的根目录,验证完成后会删除验证文件。

                                      acme.sh --issue -d mydomain.com -d www.mydomain.com --webroot /home/wwwroot/mydomain.com/

                                      Apache模式:如果是Apache服务器,可以从Apache配置中完成验证,不需要指定网站根目录。

                                      acme.sh --issue --apache -d example.com -d www.example.com -d cp.example.com

                                      Nginx模式:Nginx服务器,可以从Nginx配置中完成验证,不需要指定网站根目录。

                                      acme.sh --issue --nginx -d example.com -d www.example.com -d cp.example.com

                                      更多配置说明请查看官方文档说明。

                                      关注公众号,为你推荐更多原创干货!

                                      更多内容也可看笔者出版图书

                                      —————————

                                      幼稚猿
                                      分享各类技术资讯和教程,出版多本IT图书《Django+Vue系统架构设计与实现》、《Golang+Vue.js商城项目实战》等
                                       最新文章