BLOG | NGINX

Atualizando a chave GPG para produtos NGINX

NGINX-Parte-de-F5-horiz-preto-tipo-RGB
Miniatura de Nick Shadrin
Nick Shadrin
Publicado em 08 de agosto de 2016

Se você usa o NGINX Plus, o NGINX Amplify ou os binários pré-criados do NGINX Open Source do nginx.org , talvez seja necessário atualizar a chave GPG do seu software NGINX agora.

As chaves para alguns softwares NGINX – os detalhes são explicados abaixo – expirarão na quarta-feira, 17 de agosto, e você não poderá verificar suas assinaturas de software até atualizar sua chave. Este anúncio não afeta você se você obtiver o NGINX Open Source de provedores diferentes da NGINX, Inc. – por exemplo, em distribuições de sistemas operacionais.

Uma chave GPG faz parte do Gnu Privacy Guard , ou GnuPG. GnuPG é uma implementação livre do padrão OpenPGP – amplamente conhecido como PGP. As chaves GPG são usadas para verificar se os pacotes em um repositório foram criados pelo proprietário da chave.

Quem precisa atualizar a chave?

A NGINX, Inc. usa chaves GPG em seus pacotes RPM e repositórios Debian/Ubuntu para que você possa verificar a integridade e a origem do pacote baixado. Muitos usuários de chaves GPG configuram suas chaves para expirar periodicamente, e a chave GPG para NGINX, Inc. expira em 17 de agosto. Então você precisa atualizar sua chave GPG se você:

  • Usar NGINX Plus
  • Usar NGINX Amplify
  • Use binários NGINX Open Source fornecidos pela NGINX, Inc.

Você não precisa atualizar sua chave GPG se usar o NGINX Open Source que é:

  • De um pacote de sistema operacional. A maioria dos sistemas operacionais inclui o NGINX em seus repositórios.
  • Compilado por você a partir da fonte. Você pode verificar a assinatura do pacote de origem diretamente usando o comando gpg --verify .

Atualizando a chave GPG

Para alternar para a chave atualizada, basta buscar e reimportar a chave. O processo difere de acordo com o sistema operacional.

Atualizando a chave no Debian/Ubuntu

Se você tiver chaves configuradas incorretamente, verá um dos seguintes erros ao executar apt-get update :

nginx/x86_64/signature | 2,9 kB 00:00:10 !!!http://nginx.org/packages/mainline/centos/7/x86_64/repodata/repomd.xml: [Errno -1] a assinatura repomd.xml não pôde ser verificada para nginx
nginx/x86_64/signature | 2,9 kB 00:00:00 !!!http://nginx.org/packages/mainline/centos/7/x86_64/repodata/repomd.xml: [Errno -1] Chaves Gpg não importadas, não é possível verificar repomd.xml para repositório nginx

Para atualizar sua chave, baixe a nova chave GPG e substitua a antiga:

# curl -O https://nginx.org/keys/nginx_signing.key && apt-key add ./nginx_signing.key

Para verificar a data de expiração da nova chave, execute apt-key list :

# apt-key list ... pub 2048R/7BD9BF62 2011-08-19 [expira: [2024-06-14] uid chave de assinatura nginx  ...

Atualizando a chave no Amazon Linux, CentOS, Oracle Linux, RHEL e SLES

Verifique se seu repositório está configurado para verificar e validar chaves GPG. Por padrão, a verificação é desabilitada para repositórios NGINX e NGINX Plus, mas habilitada para repositórios NGINX Amplify. A verificação será desabilitada se os arquivos do repositório yum em /etc/yum.repos.d incluírem a seguinte linha:

gpgcheck=0

Aqui está um arquivo de repositório de exemplo, /etc/yum.repos.d/nginx.repo , com a verificação desabilitada:

[nginx]
nome=repositório nginx
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
habilitado=1

Neste caso, nenhuma ação é necessária. (Observe que com a verificação desabilitada, você verá um aviso ao instalar novos pacotes, mas a instalação ainda será bem-sucedida.)

Se você configurou explicitamente a verificação GPG, será necessário substituir a chave.

Você pode verificar a autenticidade dos pacotes baixados localmente executando o comando rpm -K :

  • Se a chave estiver faltando, você verá este erro:

    # rpm -K nginx-1.11.3-1.el7.ngx.x86_64.rpm nginx-1.11.3-1.el7.ngx.x86_64.rpm: RSA sha1 ((MD5) PGP) md5 NÃO OK (CHAVES FALTANDO: (MD5) PGP#7bd9bf62)
  • Se a chave estiver configurada corretamente, você verá esta mensagem:

  • # rpm -K nginx-1.11.3-1.el7.ngx.x86_64.rpm nginx-1.11.3-1.el7.ngx.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

Execute as seguintes etapas para atualizar a chave GPG:

  1. Verifique se você tem a chave NGINX GPG instalada:

    # rpm -qi gpg-pubkey-7bd9bf62-*

    Se a chave estiver instalada, a saída incluirá o número da versão e a data da compilação:

    ...
    Liberar     : 5762b5f8
    ...
    Data de construção: Sexta-feira, 19 de agosto de 2011, 05:52:34 EDT ...

    Se não estiver instalado, aparece esta mensagem:

    pacote gpg-pubkey-7bd9bf62-* não está instalado
  2. Remova a chave GPG NGINX atual:

    # rpm -e --allmatches gpg-pubkey-7bd9bf62-*
  3. Baixe e instale a nova chave:

    # curl -O https://nginx.org/keys/nginx_signing.key # rpm --import ./nginx_signing.key

    (Não há nenhuma saída de confirmação nessas plataformas.)

  4. Verifique as informações sobre a data de lançamento e construção da nova chave GPG:

    # rpm -qi gpg-pubkey-7bd9bf62-* ...
    Liberar : 4e4e3262 ...
    Data de construção: Qui 16 Jun 2016 10:21:44 AM EDT

Atualizando a chave no FreeBSD

O sistema de gerenciamento de pacotes do FreeBSD não usa uma chave GPG, então nenhuma ação é necessária.

Verificando a autenticidade de uma chave GPG

Você também pode verificar a autenticidade da chave GPG baixada. O GPG usa o conceito de “Web of Trust”: uma chave pode ser assinada com a chave de outra pessoa, que por sua vez é assinada por outra chave, e assim por diante.

Essa abordagem geralmente possibilita construir uma cadeia entre uma chave arbitrária e a chave de alguém que você conhece e confia pessoalmente, verificando assim a autenticidade da primeira chave na cadeia. Este conceito é descrito em detalhes no GPG Mini Howto . As chaves da NGINX, Inc. têm assinaturas suficientes para que sua autenticidade seja relativamente fácil de verificar.

Obtendo suporte

Para obter suporte ao atualizar sua chave GPG:


"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."