2025-05-21 20:37:02
404

如何快速生成十年有效期的自签名SSL证书?

摘要
本文详细介绍了使用OpenSSL和PowerShell生成十年有效期自签名SSL证书的两种方法,包含环境准备、命令行操作步骤、证书部署注意事项,适用于开发测试及内部系统快速搭建HTTPS服务。...

准备工作与环境配置

生成自签名SSL证书前需确保系统中已安装OpenSSL工具(Windows/Linux/macOS通用)或PowerShell 5.1+(仅限Windows)。推荐创建独立目录存放证书文件,例如:

  1. 新建ca文件夹存储根证书
  2. 新建certs文件夹存储服务器证书
  3. 准备配置文件定义域名和IP(如cert.ext

OpenSSL命令行生成证书

通过以下四步生成有效期十年的证书:

  1. 生成CA私钥(含密码保护):
    openssl genrsa -des3 -out ca/myCA.key 2048
  2. 创建自签名根证书(有效期20年):
    openssl req -x509 -new -nodes -key ca/myCA.key -sha256 -days 7300 -out ca/myCA.crt
  3. 生成服务器私钥与CSR文件:
    openssl req -new -key certs/server.key -out certs/server.csr
  4. 签署十年有效期证书:
    openssl x509 -req -days 3650 -CA ca/myCA.crt -CAkey ca/myCA.key -CAcreateserial -out certs/server.crt

PowerShell快速生成方法

Windows系统可通过以下命令生成并导出证书:

  1. 创建十年有效期证书:
    $cert = New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "cert:\LocalMachine\My" -NotAfter (Get-Date).AddYears(10)
  2. 导出含私钥的.pfx文件:
    Export-PfxCertificate -Cert $cert -FilePath "C:\Certificates\localhost.pfx" -Password $pwd

证书部署与注意事项

完成证书生成后需注意:

  • 将CA根证书(myCA.crt)安装到所有客户端的受信任根证书存储区
  • Web服务器配置中需同时加载.crt.key文件
  • 浏览器访问时需强制启用HSTS策略规避安全警告
  • 私钥文件(.key.pfx)应限制访问权限

通过OpenSSL或PowerShell生成十年有效期的自签名证书,既能满足长期测试需求,又可避免频繁更新证书的麻烦。但需注意此类证书仅适用于内部系统或开发环境,公网服务仍需使用受信任CA签发的证书。

声明:文章不代表云主机测评网观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险自担!转载请注明出处!侵权必究!
回顶部