在 Linux 上通过 OpenSSL 配置 TLS,通常分为 生成证书、配置服务端、验证客户端 几个步骤。下面以最常见的 Nginx / Apache 以及 通用 OpenSSL 命令 为例说明。
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
按提示填写:
example.com)openssl x509 -req -days 365 -in server.csr \
-signkey server.key -out server.crt
✅ 生产环境建议使用 受信任 CA(Let’s Encrypt、企业 CA)
yum install nginx
# 或
apt install nginx
编辑 /etc/nginx/conf.d/ssl.conf:
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
nginx -t
systemctl restart nginx
yum install mod_ssl
编辑:
/etc/httpd/conf.d/ssl.conf
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/server.crt
SSLCertificateKeyFile /etc/pki/tls/private/server.key
systemctl restart httpd
yum install certbot
certbot certonly --nginx -d example.com
自动生成:
openssl s_client -connect example.com:443
openssl x509 -in server.crt -noout -text
✅ 使用 TLS 1.2 / 1.3
✅ 禁用 SSLv3、TLS 1.0/1.1
✅ 使用强加密套件
✅ 定期更换证书
✅ 使用 HSTS
如果你有 具体用途(如 MySQL TLS、Redis TLS、内网服务、双向认证 mTLS),可以告诉我,我给你针对性配置。