O que é uma chave de repositório no Ubuntu e como eles funcionam?

25

Na maioria das vezes, apenas adicionar um repositório de pacotes permite fazer o download e instalar pacotes sem uma chave de repositório. Além disso, alguns repositórios exibem suas chaves ao lado de suas informações para facilitar a localização. Mas

  • Por que precisamos adicionar chaves se podemos instalar pacotes sem elas?
  • Como eles funcionam no Ubuntu?
Achu
fonte

Respostas:

20

Encontrei uma boa explicação no Ubuntu Community Help Wiki .

As "chaves de autenticação" são geralmente obtidas do mantenedor do repositório de software. O mantenedor geralmente coloca uma cópia da chave de autenticação em um servidor de chave pública, como www.keyserver.net. A chave pode ser recuperada usando o comando

Autenticação Apt

Apt-get o gerenciamento de pacotes usa criptografia de chave pública para autenticar pacotes baixados.

  • O Debian faz um excelente trabalho ao explicar o Secure apt nesta página wiki.

O que se segue é um breve resumo do processo de aquisição e verificação de chaves recolhido na página wiki do Debian.

Conceitos básicos A criptografia de chave pública é baseada em pares de chaves, a public keye a private key. O public keyé dado ao mundo; o private keydeve ser mantido em segredo. Qualquer pessoa que possua a chave pública pode criptografar uma mensagem para que ela possa ser lida apenas por alguém que possua a chave privada. Também é possível usar uma chave privada para assinar um arquivo, não criptografá-lo. Se uma chave privada for usada para assinar um arquivo, qualquer pessoa que possua a chave pública poderá verificar se o arquivo foi assinado por essa chave. Ninguém que não tem a chave privada pode forjar essa assinatura.

O gpg (GNU Privacy Guard) é a ferramenta usada no apt para assinar arquivos e verificar suas assinaturas.

O apt-key é um programa usado para gerenciar um chaveiro de chaves gpg para um apt seguro. O chaveiro é mantido no arquivo /etc/apt/trusted.gpg (não deve ser confundido com o relacionado, mas não muito interessante /etc/apt/trustdb.gpg). O apt-key pode ser usado para mostrar as chaves no chaveiro e adicionar ou remover uma chave.

Cada vez que você adiciona outro repositório ao apt /etc/apt/sources.list, também precisará fornecer sua chave ao apt, se quiser confiar nele. Depois de obter a chave, você pode validá-la verificando a impressão digital da chave e assinando essa chave pública com sua chave privada. Você pode adicionar a chave ao chaveiro do apt comapt-key add <key>

Achu
fonte
10

Você precisa de chaves de repositório para poder validar que recebeu o pacote da pessoa de quem pensa que está recebendo.

É para impedir que as pessoas injetem pacotes incorretos em suas atualizações.

Você deve adicionar chaves de repositório sempre que puder.

RobotHumans
fonte