使用多个SAN的OpenSSL CSR和扩展密钥用法



我是新手。我的目标是为我的Cisco防火墙创建一个CSR。有人建议我使用OpenSSL,因为我需要添加EKU,这在Cisco CSR上是不可能的。第二个要求是使用多个SAN。

我不知道如何做到这一点,也不知道如何或在哪里生成密钥(Cisco或OpenSSL)。我在Linux和MacOS上都有OpenSSL。有人能为我发布实现这个目标的分步说明吗?

对于OpenSSL中的SAN和EKU:

  • 生成密钥:
    openssl genrsa -out key.pem 2048
  • 根据您的需要创建一个配置文件(cisco-fw_csr_config.cnf):
[req]
distinguished_name = req_distinguished_name
req_extensions = v3_req
   
[req_distinguished_name]
countryName = Country Name (2 letter code)
countryName_default = BE
stateOrProvinceName             = State or Province Name (full name)
stateOrProvinceName_default     = Brussels
localityName = Locality Name (eg, city)
localityName_default = Brussels
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, YOUR name)
commonName_max = 64
emailAddress = Email Address
emailAddress_max = 40
    
[v3_req] 
keyUsage = keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
    
[alt_names]
DNS.1   = san.domain1.com
DNS.2   = san.domain2.com
  • 创建CSR:
    openssl req -new -key key.pem -out cisco_fw.csr -config cisco_fw_csr_config.cnf

  • 如果需要检查CSR内容:
    openssl req -in cisco_fw.csr -noout -text

如果您需要在没有openssl要求您输入值的情况下生成csr,您还需要指定-batch选项。

openssl req -new -batch -key key.pem -out cisco_fw.csr -config cisco_fw_csr_config.cnf

最新更新