我尝试为特定域配置一台服务器以仅使用 TLSv2.0。其他服务器应使用 TLSv1、TLSv1.1 和 TLSv2.0。
配置有效,因为 nginx 加载正确,但仅使用 TLSv2.0 的站点也可以通过其他协议访问。
是否可以使用此配置或 SSL 协议是否限制于所有服务器?
配置应如下所示:
server {
server_name foo.bar.com;
[...]
ssl_protocols TLSv2.0;
}
server {
server_name baz.bar.com;
[...]
ssl_protocols TLSv1 TLSv1.1 TLSv2.0;
}
答案1
ssl_protocols
可以在级别上定义server
,所以这意味着它可能对每个服务器的应用不同,所以问题不是来自于此。
- 确保配置正确(错误日志既未在
nginx -t
发出后出现,也未在 nginx 重新加载后出现) - 确保在 SSL 测试期间指定正确的服务器名称,并且您的请求由此特定服务器块(而不是另一个服务器块,例如作为默认服务器)提供服务
您如何测试服务器?您能提供命令及其输出吗?