工具选择与准备工作
生成自签名SSL证书主要有两种技术路径:使用跨平台的OpenSSL工具集或Windows系统自带的PowerShell命令。建议开发者根据操作系统环境选择对应方案,两者均可生成符合X.509标准的证书文件。
OpenSSL生成证书流程
通过OpenSSL生成证书包含三个核心步骤:
- 生成2048位RSA私钥:
openssl genrsa -out server.key 2048
- 创建证书签名请求(CSR):
openssl req -new -key server.key -out server.csr
- 签署有效期为10年的证书:
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
执行过程中需按提示填写国家代码、组织名称等元数据,其中Common Name建议填写实际域名或服务器IP。
PowerShell快速生成方案
Windows用户可通过管理员权限运行以下命令直接生成PFX格式证书:
New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation cert:\LocalMachine\My
该命令将自动创建有效期为1年的证书,支持通过MMC控制台导出为包含公私钥的PFX文件。
证书安装与验证
完成生成后需将证书部署到Web服务器:
- Apache:配置SSLCertificateFile和SSLCertificateKeyFile路径
- Nginx:设置ssl_certificate和ssl_certificate_key参数
- IIS:通过服务器证书管理器导入PFX文件
部署后建议使用SSL Labs工具检测证书链完整性,浏览器访问时需手动信任自签名证书。
自签名证书适用于本地开发测试环境,通过OpenSSL或PowerShell可在5分钟内完成证书生成。生产环境建议采用受信CA机构签发的证书以保证安全性。两种方案生成的证书均支持HTTPS加密通信,但需注意定期更新有效期。