温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SSL证书如何导出

发布时间:2026-07-25 12:50:24 来源:亿速云 阅读:123 作者:小樊 栏目:软件技术

SSL证书的导出方式取决于证书存储位置服务器、操作系统、浏览器)和证书格式(PEM、PFX、CRT等)。以下是常见场景的详细步骤:

一、从常见服务器导出证书

1. Nginx/Apache(Linux服务器,证书文件直接存储)

Nginx/Apache的证书通常以文件形式存在(如/etc/nginx/ssl//etc/apache2/ssl/),直接复制文件即可:

  • 证书文件:通常是.crt.pem格式(如domain.crt)。
  • 私钥文件:通常是.key格式(如domain.key,注意权限保护)。
  • 中间证书:可能单独存在(如chain.crt)或合并到证书文件中。

示例:

# 查看证书路径(Nginx配置中找ssl_certificate和ssl_certificate_key)
grep -r "ssl_certificate" /etc/nginx/
# 复制证书到本地(需服务器权限)
scp user@server_ip:/etc/nginx/ssl/domain.crt ./
scp user@server_ip:/etc/nginx/ssl/domain.key ./  # 私钥需谨慎传输

2. Tomcat(Java Keystore,JKS格式)

Tomcat的证书通常存储在.jks(Java KeyStore)文件中,需通过keytool命令导出:

# 1. 列出JKS中的证书条目(需知道JKS密码)
keytool -list -keystore /path/to/your/keystore.jks -storepass 密码

# 2. 导出证书(PEM格式,别名需从步骤1获取,如tomcat)
keytool -exportcert -alias tomcat -keystore /path/to/keystore.jks -storepass 密码 -rfc -file domain.pem

# 3. 导出私钥(JKS无法直接导出私钥,需先转PKCS12)
keytool -importkeystore -srckeystore /path/to/keystore.jks -destkeystore keystore.p12 -deststoretype PKCS12 -srcalias tomcat -destalias tomcat -srcstorepass 密码 -deststorepass 密码

# 4. 从PKCS12中提取私钥(需openssl)
openssl pkcs12 -in keystore.p12 -nodes -nocerts -out domain.key -password pass:密码

3. IIS(Windows服务器,PFX格式)

IIS的证书通常存储在服务器证书中,以.pfx(含私钥)格式导出最方便:

  1. 打开 IIS管理器 → 点击服务器节点 → 双击 “服务器证书”
  2. 选中要导出的证书 → 右侧点击 “导出”
  3. 选择保存路径(如C:\cert.pfx),设置导出密码(必须记住,后续导入需用到)。
  4. 点击“确定”完成导出(PFX文件包含证书+私钥)。

二、从操作系统导出证书

1. Windows(证书存储区)

Windows的证书存储在“证书管理器”中:

  1. 按下Win+R → 输入certmgr.msc打开证书管理器
  2. 导航到证书位置(如“个人”→“证书”或“受信任的根证书颁发机构”→“证书”)。
  3. 右键目标证书 → “所有任务”“导出”
  4. 跟随向导:
    • 若需导出私钥:选择“是,导出私钥”(仅当证书有私钥时可选),格式选.pfx,设置密码。
    • 若仅导出公钥:选择“否,不导出私钥”,格式选.cer(Base64编码,即PEM)或.der(二进制)。

2. macOS(钥匙串访问)

  1. 打开 “钥匙串访问”(Spotlight搜索Keychain Access)。
  2. 左侧选择证书所在钥匙串(如“登录”或“系统”)。
  3. 找到目标证书(如*.example.com)→ 右键 → “导出”
  4. 选择格式:
    • .p12(含私钥,需设置密码):适合迁移证书。
    • .cer(仅公钥,PEM或DER格式):适合分发公钥。

3. Linux(系统证书存储)

Linux系统证书通常存储在/etc/ssl/certs/(公钥)或/etc/ssl/private/(私钥,需root权限):

  • 直接复制文件:
    sudo cp /etc/ssl/certs/domain.crt ~/  # 公钥
    sudo cp /etc/ssl/private/domain.key ~/  # 私钥(谨慎操作)
    

三、从浏览器导出证书(仅公钥)

浏览器中只能导出公钥证书(无私钥),用于验证或分析:

Chrome/Edge

  1. 访问HTTPS网站 → 点击地址栏左侧的锁图标“连接是安全的”“证书有效”
  2. 在弹出的证书窗口中,切换到 “详细信息” 标签 → 点击 “复制到文件”
  3. 跟随向导选择格式(如Base64编码的.cer),保存到本地。

Firefox

  1. 访问HTTPS网站 → 点击锁图标 → “连接安全”“更多信息”
  2. 点击 “查看证书” → 切换到 “详细信息” 标签 → 点击 “导出”
  3. 选择格式(如PEM (cert))保存。

四、证书格式转换(可选)

若需转换格式(如PFX转PEM、JKS转PKCS12),可使用openssl

# PFX转PEM(含私钥)
openssl pkcs12 -in cert.pfx -out cert.pem -nodes -password pass:PFX密码

# PEM转PFX(需私钥)
openssl pkcs12 -export -out cert.pfx -inkey domain.key -in domain.crt -password pass:新PFX密码

# DER转PEM
openssl x509 -in cert.der -inform der -out cert.pem -outform pem

注意事项

  1. 私钥安全:私钥(.key、PFX中的私钥)需严格保护,避免泄露(泄露会导致证书被冒用)。
  2. 密码记忆:导出PFX或PKCS12时的密码需牢记,否则无法导入。
  3. 证书链:导出时尽量包含中间证书(如Nginx合并domain.crtchain.crtfullchain.crt),避免信任问题。

根据你的具体场景选择对应方法即可!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ssl
AI