在 Debian 上用 Nginx 配置 SSL 时,“兼容旧浏览器”通常指在 TLS 协议版本 和 加密套件(cipher suites) 上做妥协,让老系统(如 Windows XP + IE8、旧 Android、旧 Java 客户端等)也能建立 HTTPS 连接。
下面分几种情况说明,注意:安全性会下降,只建议在确有旧客户端需求时开启。
一般在:
/etc/nginx/sites-available/your-site.conf
或
/etc/nginx/conf.d/ssl.conf
适用于:
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
✅ 安全
❌ 不兼容 XP / IE6–8
⚠️ 已不安全,仅内网或特殊场景
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-SHA:AES128-SHA:DES-CBC3-SHA;
ssl_prefer_server_ciphers on;
支持:
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!EXPORT:!LOW;
❌ SSLv3 已被 POODLE 攻击证明不安全
✅ 仅用于测试或隔离环境
openssl version
nginx -V
看到:
--with-http_ssl_module
即可
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/ssl/certs/example.com.crt;
ssl_certificate_key /etc/ssl/private/example.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-SHA:AES128-SHA:DES-CBC3-SHA;
ssl_prefer_server_ciphers on;
location / {
root /var/www/html;
index index.html;
}
}
openssl s_client -connect example.com:443 -tls1
✅ 新业务:只开 TLS1.2 + TLS1.3
✅ 旧业务:单独开一个子域名或端口
❌ 不要全局降低安全性
如果你能告诉我:
我可以给你精确配置。