Estamos felizes em anunciar a disponibilidade do NGINX Plus Release 32 (R32). Baseado no NGINX Open Source, o NGINX Plus é o único servidor web de software completo, balanceador de carga, proxy reverso, cache de conteúdo e gateway de API.
Os recursos novos e aprimorados do NGINX Plus R32 incluem:
Completando o lançamento, estão novos recursos e correções de bugs herdados do NGINX Open Source e atualizações do módulo JavaScript do NGINX.
Observação: Se você estiver atualizando de uma versão diferente do NGINX Plus R31, não deixe de conferir a seção Alterações importantes no comportamento em blogs de anúncios anteriores para todas as versões entre sua versão atual e esta.
O módulo OpenTracing, introduzido no NGINX Plus R18, está sendo descontinuado e marcado para remoção no NGINX Plus R34. Os pacotes associados serão disponibilizados com todas as versões do NGINX Plus até então. Recomendamos fortemente substituir o uso do módulo OpenTracing pelo módulo OpenTelemetry , introduzido no NGINX Plus R29 .
O módulo ModSecurity atingiu o fim do suporte em 31 de março de 2024. Como resultado, os pacotes modsec foram removidos do repositório NGINX Plus e não estarão mais disponíveis no repositório NGINX Plus daqui para frente.
Os pacotes NGINX Open Source e NGINX Plus são assinados usando uma chave PGP. Esta chave está programada para expirar em 16 de junho de 2024. Atualizamos a data de expiração da chave para que os pacotes existentes possam continuar a ser verificados após 16 de junho de 2024. Geraremos novos pares de chaves para assinar pacotes para próximos lançamentos.
Todos os usuários do NGINX devem baixar e instalar a chave PGP atualizada seguindo estas etapas:
No Ubuntu/Debian:
wget -qO - https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
No RHEL/CentOS:
sudo rpm -e gpg-pubkey-7bd9bf62-5762b5f8
sudo rpm --import https://nginx.org/keys/nginx_signing.key
Você não poderá verificar suas assinaturas de software depois de 16 de junho de 2024, até atualizar sua chave.
Em futuras versões do NGINX Plus, simplificaremos nossa política de empacotamento e lançamento. O NGINX Plus será criado e testado apenas nas versões mais recentes das distribuições de sistemas operacionais suportadas. Se você estiver instalando o NGINX Plus em distribuições mais antigas, seu gerenciador de pacotes pode sugerir a atualização das bibliotecas e pacotes dependentes.
As seguintes alterações foram feitas nas plataformas suportadas nesta versão.
Novos sistemas operacionais suportados:
Sistemas operacionais mais antigos removidos:
Sistemas operacionais mais antigos foram descontinuados e programados para remoção no NGINX Plus R33:
Anteriormente, o NGINX carregava um certificado, uma chave ou uma lista de revogação de certificados sempre que era referenciado na configuração do NGINX. Isso significava que múltiplas referências ao mesmo objeto resultavam em um número igual de recarregamentos desse objeto. Essa latência seria agravada ao herdar diretivas como listas de certificados confiáveis. Sob certas condições, esse comportamento afetaria significativamente o tempo de inicialização do NGINX e poderia exigir grandes quantidades de memória para armazenar configurações.
Com o novo comportamento, as diretivas SSL agora fazem referência a arquivos de certificados em cache e objetos relacionados. Como resultado, o consumo de memória e os tempos de carregamento para configurações que referenciam repetidamente os mesmos objetos de certificado são drasticamente reduzidos. O benefício é mais evidente em casos que envolvem grandes configurações NGINX, onde um pequeno conjunto de certificados confiáveis é referenciado em um grande número de blocos de localização.
Aqui está uma visualização da melhoria do tempo de carregamento onde o NGINX é configurado com aproximadamente 5.400 blocos de locais (nível superior e aninhados) e 878 certificados.
Observe a queda significativa nos tempos de carregamento no lado direito do gráfico, onde o tempo médio de carregamento diminui de aproximadamente 40 segundos antes da mudança para ~6 segundos com o novo comportamento.
O NGINX Plus R32 herda um recurso do NGINX open source 1.25.5 que adiciona uma nova camada de configurabilidade ao NGINX. Especificamente, o módulo de fluxo NGINX agora pode funcionar como um roteador, servindo como um proxy com a capacidade de passar conexões do contexto de fluxo para outros contextos como http, mail ou para um servidor virtual separado dentro do próprio contexto de fluxo.
Essa funcionalidade está disponível como parte do módulo ngx_stream_pass_module , introduzido nesta versão. O módulo tem uma única diretiva “pass” que pode ser usada para especificar o endereço para o qual passar as conexões do cliente. O endereço pode ser especificado por uma combinação de endereço IP e porta, um caminho de soquete ou referenciado por variáveis NGINX.
Com essa funcionalidade, os clientes que desejam executar todo o tráfego por meio de um único ponto de extremidade L4 agora podem encerrar conexões SSL no contexto de fluxo L4 e passá-las para outros módulos (http, e-mail) ou outros servidores virtuais dentro do contexto de fluxo. Além disso, as conexões SSL podem ser encerradas condicionalmente com base em nomes de servidores ou protocolos, enquanto o tráfego restante é transferido por proxy para outro lugar. Isso desbloqueia um novo conjunto de comportamentos de configuração possíveis para gerenciar o tráfego de um único ponto de extremidade.
O snippet de configuração a seguir encerra as conexões SSL no módulo de fluxo e as passa condicionalmente para o contexto http ou outro servidor virtual no contexto de fluxo, com base no nome do servidor solicitado.
http {
servidor {
ouvir 8000;
localização / {
retornar 200 foo;
}
}
}
fluxo {
mapa $ssl_server_name $pass_port {
foo.example.com 8000;
padrão 9001;
}
servidor {
ouvir 9000 ssl;
certificado_ssl domínio.crt;
chave_certificado_ssl domínio.chave;
passagem 127.0.0.1: $pass_port;
}
servidor {
ouvir 9001;
retornar bar\n;
}
}
Neste exemplo, todas as conexões SSL são encerradas no bloco do servidor de fluxo. Dependendo do nome do servidor na solicitação de entrada, as conexões são passadas para o servidor http escutando na porta 8000 ou para o servidor virtual de fluxo escutando na porta 9001.
Outra aplicação do módulo aborda casos de uso em que um módulo de terceiros não oferece suporte à terminação SSL. Nesses cenários, o módulo stream_pass pode encerrar conexões criptografadas por TLS antes de passá-las para o módulo de terceiros.
Este exemplo demonstra como o módulo RTMP , que nativamente não oferece suporte a SSL, pode usar o módulo stream_pass para aceitar tráfego criptografado por TLS.
rtmp {
servidor {
ouvir 1935;#rtmp
aplicativo foo{
ao vivo em;
}
}
}
fluxo {
servidor {
ouvir 1936 ssl; #rtmps
ssl_certificate domínio.crt;
ssl_certificate_key domínio.chave;
passar 127.0.0.1:1935;
}
}
Neste trecho de configuração, a conexão SSL é encerrada no bloco do servidor de fluxo e passada para o rtmp. A conexão aparece não criptografada para o módulo RTMP, o que elimina a necessidade de personalização adicional ou sobrecarga de processamento para oferecer suporte a conexões SSL.
O NGINX Plus R32 inclui a disponibilidade oficial de imagens de contêiner do NGINX Plus para execução privilegiada e não privilegiada do NGINX Plus. Ambos os tipos de contêiner também são disponibilizados com instalações opcionais do NGINX Agent para fácil conectividade aos planos de gerenciamento suportados pelo NGINX. As imagens podem ser baixadas do registro NGINX, disponível em: private-registry.nginx.com. Siga estas instruções para acessar a imagem com seu certificado e chave NGINX Plus ou JSON Web Token (JWT).
Os seguintes possíveis problemas de segurança foram identificados e corrigidos na implementação experimental HTTP3/QUIC.
O NGINX Plus R32 é baseado no NGINX Open Source 1.25.5 e herda alterações funcionais, recursos e correções de bugs feitos desde o lançamento do NGINX Plus R31 (no NGINX 1.25.4 e 1.25.5).
Para obter a lista completa de novas alterações, recursos, correções de bugs e soluções alternativas herdadas de versões recentes, consulte o arquivo de alterações do NGINX.
O NGINX Plus R32 incorpora alterações do módulo NGINX JavaScript (njs) versão 0.8.4. A seguir está uma lista de mudanças notáveis no njs desde a versão 0.8.2 (que foi a versão fornecida com o NGINX Plus R31).
Para uma lista abrangente de todos os recursos, alterações e correções de bugs, consulte o Changelog do njs.
Se você estiver executando o NGINX Plus, recomendamos fortemente que você atualize para o NGINX Plus R32 o mais rápido possível. Além de todos os excelentes novos recursos, você também receberá diversas correções e melhorias adicionais, tornando mais fácil para o NGINX ajudar você caso precise abrir um tíquete de suporte.
Se você não é um usuário do NGINX Plus, recomendamos que experimente. Você pode usá-lo para casos de uso de segurança, balanceamento de carga e gateway de API, ou como um servidor web totalmente suportado com APIs aprimoradas de monitoramento e gerenciamento. Comece hoje mesmo com um teste gratuito de 30 dias .
"Esta postagem do blog pode fazer referência a produtos que não estão mais disponíveis e/ou não têm mais suporte. Para obter as informações mais atualizadas sobre os produtos e soluções F5 NGINX disponíveis, explore nossa família de produtos NGINX . O NGINX agora faz parte do F5. Todos os links anteriores do NGINX.com redirecionarão para conteúdo semelhante do NGINX no F5.com."