首页/网络/协议速查/生成 CSR 与私钥

生成 CSR 与私钥

CSR 是「公钥 + 域名信息 + 签名」的申请文件,私钥必须本地生成且永不外传;CA 只拿 CSR 签发证书。

协议速查网络更新于 2026-10-12

生成 CSR(RSA 与 ECC)

生成 CSR(RSA 与 ECC)
openssl req -new -newkey rsa:2048 -nodes -keyout site.key -out site.csr -subj "/C=CN/ST=Zhejiang/L=Hangzhou/O=Example/CN=example.com"
# 带 SAN 推荐用配置文件:openssl req -new -key site.key -out site.csr -config san.cnf
# ECC 示例:openssl ecparam -genkey -name prime256v1 -out site.key && openssl req -new -key site.key -out site.csr

检查 CSR

检查 CSR
openssl req -in site.csr -noout -verify -subject
openssl req -in site.csr -noout -text | grep -A2 'Subject Alternative Name'
现代 CA 以 CSR 里的 SAN 为准,CN 可被忽略;申请前把域名写全,省去来回返工。

易错点

  • -nodes 表示私钥不加密(便于服务读取);带密码的私钥部署时需每次输入口令或转无密码,按部署方式选择

数据来源与参考

  • RFC 2986(PKCS#10 CSR)
  • CA/Browser Forum BR §3.2.2

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌