使用带有 SNI 的 nginx

使用带有 SNI 的 nginx

到目前为止,我还没有将 SNI 与 nginx 结合使用。但由于 IP 地址池已满,并且商业 XP 支持即将停止(最终),我正在考虑将一些网站转换为 SNI。

我知道 SNI 可能带来的一般限制和缺陷(XP 问题、非常老旧的浏览器)。但除此之外,我还应该注意什么?

例如 - 使用 SNI 时与 nginx 相关的陷阱 - 近期(值得注意的!)浏览器的问题/错误

答案1

如果您的 nginx 版本显示 TLS SNI 支持,那么nginx -V您就可以开始了。

如果您想在server不考虑 IP 地址的情况下运行,那么请不要在 SSL Web 指令中使用 IP 地址serverlisten为该虚拟主机使用 SNI。

例如,更改:

listen 198.51.100.206:443 ssl;

到:

listen 443 ssl;

即使您确实使用了 IP 地址,对于位于同一 IP 地址上的所有servers ,仍然会使用 SNI。listen

答案2

其实你不必担心客户端软件。如今大多数人都使用可靠的浏览器,移动设备基本上是安全的。

当我们尝试使用 SNI 运行 nginx 时,我们发现一些服务提供商确实落后了。在一个案例中,某个在线支付提供商会直接丢弃对我们的 HTTP 调用,因为他们的软件基于一个非常老旧的(不支持 SNI 之前)Perl 库。用户看到他们的信用卡被扣款却没有结果,他们很不高兴。提供商的回应令人吃惊 - 他们不知道他们有这个问题。遗憾的是,他们说他们需要几个月的时间来解决这个问题。

我希望这只是一个提供商,但事实并非如此。我们最终还是回到了为每个域名设置单独的 IP。

经验教训:检查所有与你的 nginx 通信的软件。

相关内容