温馨提示×

centos怎么替换证书文件

小樊
37
2026-09-18 10:12:37
栏目: 智能运维

在 CentOS 上“替换证书文件”通常分几种场景,下面按最常见情况给你说明,你可以对号入座。


一、替换 Web 服务证书(Nginx / Apache)

1️⃣ Nginx

(1)备份旧证书

cp /etc/nginx/ssl/cert.crt /etc/nginx/ssl/cert.crt.bak
cp /etc/nginx/ssl/cert.key /etc/nginx/ssl/cert.key.bak

(2)替换证书文件

cp new_cert.crt /etc/nginx/ssl/cert.crt
cp new_cert.key /etc/nginx/ssl/cert.key

如果是证书链,通常合并:

cat new_cert.crt ca_bundle.crt > /etc/nginx/ssl/cert.crt

(3)检查配置并重载

nginx -t
systemctl reload nginx

2️⃣ Apache(httpd)

证书一般在这里:

/etc/pki/tls/certs/
/etc/pki/tls/private/

替换后:

systemctl reload httpd

二、替换系统信任的 CA 证书(CentOS 7)

1️⃣ 放入信任目录

cp your_ca.crt /etc/pki/ca-trust/source/anchors/

2️⃣ 更新信任库

update-ca-trust extract

✅ 之后系统(curl、wget、Java 等)会信任该 CA。


三、替换 HTTPS 服务(如 Tomcat)

Tomcat 一般用 keystore

keytool -importkeystore \
  -srckeystore new.pfx \
  -destkeystore /opt/tomcat/conf/keystore.jks \
  -srcstoretype PKCS12 \
  -deststoretype JKS

修改 server.xml 后重启:

systemctl restart tomcat

四、替换自签名/内部服务证书(如 LDAP、MySQL)

  • MySQL:/etc/pki/tls/certs/mysql.crt
  • 改完重启服务即可

五、常见注意事项 ⚠️

  1. 权限问题
chmod 600 *.key
chown root:root *.key
  1. 证书和私钥必须匹配
openssl x509 -noout -modulus -in cert.crt | openssl md5
openssl rsa -noout -modulus -in cert.key | openssl md5

两个 md5 必须一致。

  1. 防火墙/SELinux
restorecon -Rv /etc/nginx/ssl

六、如果你愿意,我可以更精准帮你

你可以告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • 什么服务(Nginx / Apache / Tomcat / 系统 CA)
  • 证书格式(crt+key / pfx / jks)

我可以直接给你一条命令搞定的版本。

0