letsencrypt.sh项目中domains.txt文件配置详解
dehydrated 项目地址: https://gitcode.com/gh_mirrors/le/letsencrypt.sh
什么是domains.txt文件
domains.txt是letsencrypt.sh项目中用于配置证书申请的核心配置文件。该文件采用简洁明了的文本格式,允许用户通过简单的语法定义需要申请SSL/TLS证书的域名及其相关参数。
基本语法结构
domains.txt文件的基本语法遵循以下格式:
主域名 备用域名1 备用域名2 ... > 别名
其中:
- 主域名:证书的主要域名
- 备用域名:证书包含的其他域名(Subject Alternative Names)
- 别名(可选):指定证书存储目录的名称
配置示例解析
基础域名配置
example.org www.example.org
这表示申请一个包含example.org
和www.example.org
两个域名的证书,证书将存储在${CERT_DIR}/example.org
目录下。
多备用域名配置
example.com www.example.com wiki.example.com
此配置会生成包含三个域名的证书:example.com
、www.example.com
和wiki.example.com
。
使用别名指定存储目录
example.net www.example.net > certalias
通过>
符号指定别名certalias
,证书将存储在${CERTDIR}/certalias
而非默认的域名目录。
通配符证书配置
*.service.example.com > service_example_com
申请*.service.example.com
的通配符证书,存储在${CERTDIR}/service_example_com
目录。注意这种配置不包含基础域名service.example.com
。
通配符+基础域名组合
*.service.example.org service.example.org > star_service_example_org
这种配置既包含通配符*.service.example.org
,也包含基础域名service.example.org
。
多证书算法配置
*.service.example.org service.example.org > star_service_example_org_rsa
*.service.example.org service.example.org > star_service_example_org_ecdsa
可以为同一组域名申请不同类型的证书(如RSA和ECDSA),通过不同的别名区分。
重要注意事项
-
通配符证书限制:通配符证书(如
*.example.com
)只能保护一级子域名,不能保护多级子域名(如*.sub.example.com
)。 -
基础域名包含:如果同时需要保护通配符和基础域名,必须像示例中那样明确列出。
-
存储目录:默认使用主域名作为存储目录名,但可以通过别名自定义。
-
证书算法:可以通过不同别名配置为同一组域名申请多种算法类型的证书。
-
注释使用:以
#
开头的行被视为注释,不会被执行。
最佳实践建议
-
对于Web服务,建议总是同时包含基础域名(如example.com)和www子域名(www.example.com)。
-
使用有意义的别名,便于后期管理和维护。
-
对于重要服务,考虑同时申请RSA和ECDSA两种算法的证书以提高兼容性。
-
定期检查并更新domains.txt文件,确保所有需要证书的域名都已包含。
通过合理配置domains.txt文件,可以高效地管理多个域名的证书申请和续期工作,简化SSL/TLS证书的部署流程。
dehydrated 项目地址: https://gitcode.com/gh_mirrors/le/letsencrypt.sh
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考