Let's Encrypt 配置 HTTPS 免费泛域名证书

简介: Let's Encrypt 配置 HTTPS 免费泛域名证书

想要使用 HTTPS ,你必须先拥有权威 CA(证书签发机构)签发的证书(对于自签名的证书,浏览器是不认账的)。Let's Encrypt 就是一家权威的 CA 证书签发机构,你可以向他申请免费的证书(一般商业证书的价格比较贵)。



推荐使用 acme.sh 这个工具,申请泛域名证书示例:


注意:以下示例中,我的二级域名是 rifewang.club (一般你向云服务商购买的都是二级域名),泛域名是 *.x.rifewang.club 。


1、在系统上安装 acme.sh ,默认安装位置是 ~/.acme.sh :

curl https://get.acme.sh | sh

安装要求系统必须已经安装了 cron , crontab , crontabs , vivie-cron 其中任意一个工具,不然会提示你安装失败,没有的话先安装一个即可。


注意:以下操作使用的是 DNS manual mode 的方式。


2、发起 issue 申请获取域名 DNS TXT 记录:

acme.sh --issue --force --dns -d <二级域名> -d <泛域名> \
   --yes-I-know-dns-manual-mode-enough-go-ahead-please

注意:你必须先将 acme.sh 这个可执行文件的路径添加到系统的环境变量 PATH 中,或者直接在可执行文件目录下执行,否则肯定会提示你 acme.sh command not found 。


--force 强制 issue ,某些情况下你的域名已经验证成功了就会跳过验证,不会生成新的 TXT 记录,所以这里强制执行一下。

--yes-I-know... 这一堆冗长的东西是必须加的,这里就是想提示你 DNS manual mode 的方式不支持自动续签


issue 之后的结果如图所示

按照说明你需要分别添加 _acme-challenge.<二级域名> 和  _acme-challenge.<泛域名>  这两个域名的 TXT 类型的域名解析:

之所以要添加域名解析是为了验证你对此域名的所有权。


3、等待 DNS TXT 解析生效,同一条解析重复更新需要避免 DNS 缓存的问题。


4、发起 renew 申请签发并下载证书:

acme.sh --renew --force --dns -d <二级域名> -d <泛域名> \   --yes-I-know-dns-manual-mode-enough-go-ahead-please

示例结果如图所示:

输出结果除了会告诉你证书签发成功之外,还会在最后说明证书的存放位置,默认是 ~/.acme.sh/<二级域名>/ 这个目录。


5、配置你的证书和密钥,对应的就是 fullchain.cer<二级域名>.key 这两个文件的内容。不同的情况下,配置的操作是不同的:比如你是在自己的服务器上直接操作 nginx ,那么将配置路径指向正确的证书和密钥地址即可,而如果你使用的是云服务,那么你可能需要做的是上传证书和密钥文件内容。总之,你已经成功获取了 HTTPS 证书。



Let's Encrypt 的泛域名证书有效期是三个月,acme.sh 的 DNS manual mode 方式不支持自动续签,你想要续签就必须重新 issue 然后 renew 操作一遍,我之所以这么做是因为权限受限,当然写个定时脚本任务就行了,也不用我手动操作。


acme.sh 不只一种 mode 方式,其它的方式是有支持自动续签的,并且也接入了主流的云服务商(你只需要配置 apikey 即可),

目录
相关文章
|
6月前
|
网络安全 开发工具 git
在GitLab CI中同步HTTPS仓库地址的yaml配置
最后,提交并推送 `.gitlab-ci.yml`文件到您的GitLab仓库。GitLab CI/CD将自动识别这个文件,并在每次推送到 `master`分支时执行定义的同步任务。
297 16
|
7月前
|
人工智能 Ubuntu 前端开发
Dify部署全栈指南:AI从Ubuntu配置到HTTPS自动化的10倍秘籍
本文档介绍如何部署Dify后端服务及前端界面,涵盖系统环境要求、依赖安装、代码拉取、环境变量配置、服务启动、数据库管理及常见问题解决方案,适用于开发与生产环境部署。
1501 1
求助!怎么上传第三方HTTPS证书?为什么我上传lets encrypt的证书显示私钥格式异常?
用户上传证书时遇到问题,提示格式异常,已尝试转换RSA格式仍未解决。
|
9月前
|
人工智能 安全 算法
HTTPS 的「秘钥交换 + 证书校验」全流程
HTTPS 通过“证书如身份证、密钥交换如临时暗号”的握手流程,实现身份认证与数据加密双重保障,确保通信安全可靠。
955 0
|
11月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
973 87
|
安全 算法 数据建模
HTTPS证书类型和品牌一览
HTTPS证书(SSL证书)是保障网站数据传输安全与身份可信认证的重要工具,适用于电商、企业官网等各类平台。证书主要分为DV(域名验证)、OV(企业验证)、EV(扩展验证)三种安全级别,以及单域名、通配符、多域名等不同覆盖类型。品牌方面,既有高性价比的国产锐安信、CFCA,也有国际知名的Sectigo、Digicert。
|
网络协议
【Azure App Service】App Service 如何配置私网域名以及证书呢?
本文解答了关于 Azure App Service 如何配置私网域名及证书的问题。App Service 不支持私网域名,自定义域名需配置在公共 DNS 服务器上。文章引用官方文档详细说明了映射自定义 DNS 的步骤,并附带参考资料链接,帮助用户深入了解相关配置方法。
292 6
|
安全 网络协议 网络安全
只有IP地址没有域名,如何实现HTTPS访问?
在仅有IP地址而无域名的情况下,实现HTTPS访问并非不可能。主要挑战包括证书颁发机构(CA)对IP地址的支持有限及浏览器兼容性问题。解决方案有:1) 搭建私有CA为内部IP地址颁发证书;2) 使用支持IP地址的公共CA服务。选择合适的方案需根据需求权衡。具体步骤包括选择证书类型、生成CSR文件、提交并完成验证、安装SSL证书和配置强制HTTPS访问。确保IP地址稳定,并定期维护安全性。 **申请优惠**:访问JoySSL官网并填写注册码“230907”可优惠申请IP地址证书。
2335 5
|
安全 算法 网络协议
解析:HTTPS通过SSL/TLS证书加密的原理与逻辑
HTTPS通过SSL/TLS证书加密,结合对称与非对称加密及数字证书验证实现安全通信。首先,服务器发送含公钥的数字证书,客户端验证其合法性后生成随机数并用公钥加密发送给服务器,双方据此生成相同的对称密钥。后续通信使用对称加密确保高效性和安全性。同时,数字证书验证服务器身份,防止中间人攻击;哈希算法和数字签名确保数据完整性,防止篡改。整个流程保障了身份认证、数据加密和完整性保护。
|
数据建模 网络安全
阿里云SSL证书不同类型DV、OV和EV如何收费?单域名和通配符SSL价格整理
阿里云SSL证书提供免费和收费版本,涵盖DV、OV、EV多种类型。收费证书品牌包括DigiCert、GlobalSign等,价格从238元/年起。免费SSL证书由Digicert提供,单域名有效3个月,每个实名主体每年可领取20个。具体价格和详情见阿里云SSL官方页面。