You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除或撤销OpenSSL生成的自签名SSL证书?

自签名证书未配置却生效的原因

Apache默认安装时如果开启了SSL模块,会自带默认的SSL配置文件,不需要你手动修改site-enabled下的默认站点配置也会加载:

  • Debian/Ubuntu环境下默认SSL配置为/etc/apache2/sites-available/default-ssl.conf,安装完成后会自动软链接到site-enabled目录下被加载
  • CentOS/RHEL环境下默认SSL配置为/etc/httpd/conf.d/ssl.conf,会被主配置自动引入
    你生成的证书文件名刚好匹配这些默认配置里指定的证书、密钥路径,所以重启Apache后直接生效。

撤销命令无效的原因

自签名证书本身没有对应的公共CA信任链和CRL(证书吊销列表)分发机制,你执行的openssl ca -revoke命令只能在你本地的CA证书库标记吊销状态,客户端和浏览器不会获取这个标记,所以撤销操作对于自签名证书完全没有实际意义,直接删除证书和对应配置即可。

完整移除自签名证书的操作步骤

  • 首先确认当前Apache加载的SSL配置路径:
    • Debian/Ubuntu执行:apache2ctl -S
    • CentOS/RHEL执行:httpd -S
      从输出的443端口虚拟主机信息中,找到对应的配置文件路径,以及配置项SSLCertificateFile、SSLCertificateKeyFile对应的证书、密钥文件地址
  • 关闭SSL虚拟主机加载:
    • Debian/Ubuntu执行:a2dissite default-ssl.conf && systemctl restart apache2
    • CentOS/RHEL执行:rm -f /etc/httpd/conf.d/ssl.conf && systemctl restart httpd
      如果你自己手动添加过其他SSL虚拟主机配置,直接删除对应配置文件或者软链接后重启服务即可
  • 删除本地所有生成的自签名证书相关文件,避免后续被误加载:
rm -f main.key main.csr main.crt /certs/server-1.crt
# 如果你自己创建了/root/tls/目录作为临时CA目录,也可以一起删除
rm -rf /root/tls/
  • 验证移除结果:重启Apache后访问原HTTPS地址,确认无法建立HTTPS连接即为移除成功。如果浏览器仍弹出证书警告,清理浏览器SSL缓存后再测试即可。

内容的提问来源于stack exchange,提问作者Venigalla Shanmukha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 07:39:01