在 CentOS 上“导入 SSL 证书”通常有几种常见场景,下面按最常用情况给你说明,你可以对照自己的需求来看。
假设你有以下文件:
example.com.crt(证书)example.com.key(私钥)example.com.ca.crt(中间证书,可选)# 创建证书目录
mkdir -p /etc/nginx/ssl/example.com
cp example.com.crt /etc/nginx/ssl/example.com/
cp example.com.key /etc/nginx/ssl/example.com/
cp example.com.ca.crt /etc/nginx/ssl/example.com/
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/example.com/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com/example.com.key;
ssl_trusted_certificate /etc/nginx/ssl/example.com/example.com.ca.crt;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
nginx -t
systemctl restart nginx
mkdir -p /etc/httpd/conf/ssl/example.com
cp *.crt *.key /etc/httpd/conf/ssl/example.com/
<VirtualHost *:443>
ServerName example.com
SSLEngine on
SSLCertificateFile /etc/httpd/conf/ssl/example.com/example.com.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl/example.com/example.com.key
SSLCertificateChainFile /etc/httpd/conf/ssl/example.com/example.com.ca.crt
</VirtualHost>
systemctl restart httpd
适用于:
SSL certificate problemcp my-ca.crt /etc/pki/ca-trust/source/anchors/
update-ca-trust
验证:
curl https://example.com
keytool -import -trustcacerts \
-alias example \
-file example.com.crt \
-keystore $JAVA_HOME/jre/lib/security/cacerts \
-storepass changeit
yum install certbot
certbot certonly --nginx -d example.com
证书路径:
/etc/letsencrypt/live/example.com/
❌ SSL_CTX / Permissions denied
chmod 600 /etc/nginx/ssl/example.com/*.key
❌ 浏览器不信任
如果你能告诉我:
我可以直接给你精确命令。