wordpress网站的彻底清理,常州电子商务网站建设,织梦系统做的网站怎么样,建设一个交易网站要用多少钱于SSL/TLS服务器证书#xff0c;特别是那些用于HTTPS网站的证书#xff0c;有几个关键的扩展和属性是必要的#xff0c;以确保证书可以被客户端#xff08;如浏览器#xff09;正确识别和信任。这些细节对于确保加密连接的安全性至关重要。以下是一些关键的证书详情和扩展…于SSL/TLS服务器证书特别是那些用于HTTPS网站的证书有几个关键的扩展和属性是必要的以确保证书可以被客户端如浏览器正确识别和信任。这些细节对于确保加密连接的安全性至关重要。以下是一些关键的证书详情和扩展 主题备用名称 (Subject Alternative Name, SAN) SAN字段允许证书指定多个资源名称比如多个域名或IP地址。对于现代的浏览器和客户端此字段几乎是必需的因为它们会检查访问的域名是否包含在证书的SAN中。 密钥用途 (Key Usage, KU) 这个扩展定义了证书的密钥可以执行的安全操作。对于服务器证书通常需要包括“数字签名”digitalSignature证明信息是由私钥持有者签名的和“密钥加密”keyEncipherment允许使用公钥加密数据以便只有对应的私钥持有者可以解密。 扩展密钥用途 (Extended Key Usage, EKU) EKU进一步细化了证书的使用场景。对于HTTPS服务器证书这通常包括“服务器身份验证”serverAuth标识符表明该证书可以用于验证服务器的身份。 基本约束 (Basic Constraints) 对于根证书或任何中间CA证书基本约束必须设置为CA证书颁发机构TRUE并且可选地包含一个路径长度约束这指定了从该CA到最终叶子证书之间的中间CA数量上限。对于一个终端实体比如服务器或客户端的证书CA通常应设置为FALSE。 CRL分布点 (CRL Distribution Points) 这个扩展包含了获取证书吊销列表CRL的URL客户端可以使用这些URL来检查证书是否已被吊销。 证书策略 (Certificate Policies) 证书策略定义了颁发证书的策略或用途。虽然这不是技术上强制的但它提供了关于证书可能被接受用途的信息。 确保这些扩展和属性正确设置是创建SSL/TLS证书的重要部分特别是当你打算让证书被公众信任的客户端如互联网浏览器接受时。如果你是自己生成这些证书比如用OpenSSL需要确保在证书签名请求CSR和/或在证书生成过程中正确指定这些属性。
1、生成根证书
生成rsa私钥 openssl genpkey -algorithm RSA -out rootCA.key -pkeyopt rsa_keygen_bits:2048 创建根证书的配置文件 为了确保包含所有必要的扩展最好创建一个配置文件比如命名为rootCA.conf来定义证书的参数和扩展
[req]
default_bits 2048
prompt no
default_md sha256
distinguished_name dn[dn]
C CN
ST GuangDong
L ShenZhen
O lll
OU lll Unit
CN lll Root CA[ext]
basicConstraints critical,CA:TRUE
keyUsage critical,keyCertSign,cRLSign
subjectKeyIdentifier hash
authorityKeyIdentifier keyid:always,issuer
这个配置文件定义了证书的DNDistinguished Name和一些关键的扩展如basicConstraints、keyUsage等。
生成自签名根证书10年有效期 openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 3650 -out rootCA.pem -config rootCA.conf -extensions ext 2. 生成服务器的证书
生成服务器私钥 openssl genpkey -algorithm RSA -out server.key -pkeyopt rsa_keygen_bits:2048 创建证书签名请求CSR 创建一个名为server.csr.conf的配置文件以包含CSR的详细信息
[req]
default_bits 2048
prompt no
default_md sha256
distinguished_name dn
req_extensions req_ext[dn]
C CN
ST GuangDong
L ShenZhen
O lll
OU lll Unit
CN *.lll.com[req_ext]
subjectAltName alt_names[alt_names]
DNS.1 *.lll.com生成CSR openssl req -new -key server.key -out server.csr -config server.csr.conf 使用根证书签发服务器证书 创建一个新的配置文件比如v3.ext来定义签发的证书应该包含的扩展
authorityKeyIdentifierkeyid,issuer
basicConstraintsCA:FALSE
keyUsage digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName alt_names[alt_names]
DNS.1 *.leve.com签发证书IOS经测试最大支持825天有效期 openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 825 -sha256 -extfile v3.ext 证书过期可使用此命令重新生成