当前位置:大发SEO >> 域名主机 >> 域名

openssl指定域名

域名主机 域名 2025-06-15 1010

摘要:在OpenSSL中指定域名及相关操作的核心要点如下:1. 生成证书签名请求(CSR)时指定域名 - 使用`-subj`参数指定主题信息,包含域名(如`CN=example.com`)。例如: openssl req -new -key private.key -out request.csr -subj "/CN=example.com" ...

在OpenSSL中指定域名及相关操作的核心要点如下:

openssl指定域名

1. 生成证书签名请求(CSR)时指定域名

- 使用`-subj`参数指定主题信息,包含域名(如`CN=example.com`)。例如:

openssl req -new -key private.key -out request.csr -subj "/CN=example.com"

- 若需包含多域名或子域名(多域名主机),需通过`openssl.cnf`配置文件定义`subjectAltName`扩展,例如`DNS:example.com, DNS:*.example.com`。

2. 自签名证书绑定域名

- 生成自签名证书时,通过`-addext`参数添加域名主机信息(需OpenSSL 1.1.1+):

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -subj "/CN=example.com" -addext "subjectAltName=DNS:example.com"

3. 验证证书中的域名信息

- 使用以下命令检查证书是否包含目标域名:

openssl x509 -in cert.pem -text -noout | grep -E "DNS|CN="

输出应显示证书的`Common Name (CN)`和`subjectAltName`中的域名主机列表。

4. SAN扩展的配置文件用法

- 创建包含多域名的配置文件(如`san.cnf`),定义`req_extensions`和`subjectAltName`:

[req]

req_extensions = v3_req

[v3_req]

subjectAltName = @alt_names

[alt_names]

DNS.1 = example.com

DNS.2 = www.example.com

生成CSR时引用该文件:

openssl req -new -key private.key -out request.csr -config san.cnf

5. HTTPS服务中的域名匹配规则

- 浏览器会根据证书中的`subjectAltName`优先验证域名,而非传统的`Common Name`。若域名主机未在SAN中列出,可能触发安全警告。

6. 通配符域名的支持

- OpenSSL允许通过`DNS:*.example.com`形式支持通配符域名,覆盖所有同级子域名,但仅匹配单层(如`a.example.com`,不匹配`a.b.example.com`)。

7. 域名与IP的混合指定

- `subjectAltName`可同时包含域名和IP,例如:

subjectAltName = DNS:example.com, IP:192.168.1.1

扩展知识

SNI(Server Name Indication):现代TLS协议通过SNI扩展实现单IP托管多域名主机,要求证书包含对应域名列表。

证书透明度(CT):CA机构颁发的域名证书需公开记录,防止恶意签发未授权的域名证书。

HSTS预加载:域名可提交至浏览器HSTS列表,强制HTTPS连接,避免降级攻击。

实际操作中需确保域名主机的完整性和一致性,避免因配置错误导致证书不被信任。

相关推荐
友情链接