NGINX Plus 18 版本发布,支持动态证书加载

栏目: 服务器 · Nginx · 发布时间: 6年前

内容简介:通过支持动态证书加载,SSL/TLS 证书现在可以按需加载,不需要在配置文件中明确地列出。根据 TLS 握手期间由服务器名称指示(Server Name Indication,简称 SNI)提供的主机名,NGINX Plus 现在可以动态地加载正确的证书。这允许在单个服务配置下托管多个安全网站。在 NGINX Plus 之前的版本中,每个安全主机名都需要在配置文件中有自己的 server 代码块,静态地把证书和私钥指定为磁盘上的文件。这也意味着,当添加新主机名时,都必须重新加载配置。

NGINX 已经发布了 NGINX Plus 18 版本 (R18),这是它们一体化的负载平衡器、内容缓存和 web 服务器。该版本的特性包括支持 动态证书加载 、对 OpenID Connect 实现的增强以及为虚拟服务器指定端口范围的能力。

通过支持动态证书加载,SSL/TLS 证书现在可以按需加载,不需要在配置文件中明确地列出。根据 TLS 握手期间由服务器名称指示(Server Name Indication,简称 SNI)提供的主机名,NGINX Plus 现在可以动态地加载正确的证书。这允许在单个服务配置下托管多个安全网站。

在 NGINX Plus 之前的版本中,每个安全主机名都需要在配置文件中有自己的 server 代码块,静态地把证书和私钥指定为磁盘上的文件。这也意味着,当添加新主机名时,都必须重新加载配置。

借助该新功能,现在可以在配置中只有一个 server 块来安全地托管任意数量的站点:

复制代码

server{
listen443ssl;


ssl_certificate/etc/ssl/$ssl_server_name.crt;# Lazy load from SNI
ssl_certificate_key/etc/ssl/$ssl_server_name.key;# ditto
ssl_protocolsTLSv1.3TLSv1.2TLSv1.1;
ssl_prefer_server_cipherson;


location/ {
proxy_set_headerHost$host;
proxy_passhttp://my_backend;
}

有了这个设置,基于 $ssl_server_name 变量的值,证书能够根据需要从硬盘延迟加载。然后,证书和 key 将会缓存在文件系统缓存的内存中。只要变量的值在 SNI(这是在读取请求行和头信息之前发生的)期间是可用的,那么就可以在那里使用它。

还可以在内存中(在键 - 值对存储中)存储 SSL/TLS 证书数据,而不是作为文件存在磁盘上。这允许证书通过 Plus API 以程序的方式进行安装。NGINX 建议 Plus 的整个集群部署都这么操作,因为证书数据将只需要上传一次,就可以自动传播,或者用于自动与证书颁发者(如 Hashicorp Vault )集成。

在这两种情况下,在初始证书加载期间都会产生性能损失。证书加载过程只在 TLS 握手期间发生,一旦会话建立,请求处理将正常进行。根据 NGINX 的说法,该损失将造成初始 TLS 握手过程延长 20-30%。

该版本还包括 主动健康检查 功能的改进。该版本引入了 require 指令,允许测试任何变量的值,包括标准变量和用户定义的变量。match 块中的 require 指令允许检查一个或多个变量必须有非零值才让测试通过。

进一步的健康检查改进包括允许用 proxy_session_drop 指令来 终止第 4 层连接 。之前,如果已建立的客户端连接到的服务器不健康,那么,它们可能会遇到超时。这是因为,之前只在新客户端尝试建立连接时才考虑后端服务器的健康状态。新的 proxy_session_drop 指令将允许立即关闭该连接。启用该指令后,还可以通过一个主动健康检查的失败或上游组中服务器的删除(例如,通过 DNS 查找来删除)来触发连接终止。

该版本提供的其他功能包括:

  • 现在,OpenID Connect 实现支持不透明会话令牌、刷新令牌和注销 URL

  • NGINX Plus 服务器现在可以配置为监听指定范围的端口(如 80-90)

  • 现在可以用配置中的变量直接创建键 - 值对

关于该版本中包含的更多细节和其他功能,请参阅 NGINX 博客中的 官方声明 。NGINX Plus 可以作为 NGINX 应用平台的一部分 进行试用

阅读英文原文: NGINX Plus Release 18 Available with Support for Dynamic Certificate Loading


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First JavaScript Programming

Head First JavaScript Programming

Eric T. Freeman、Elisabeth Robson / O'Reilly Media / 2014-4-10 / USD 49.99

This brain-friendly guide teaches you everything from JavaScript language fundamentals to advanced topics, including objects, functions, and the browser’s document object model. You won’t just be read......一起来看看 《Head First JavaScript Programming》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具