Debian. Como posso obter com segurança o debian-archive-keyring, para que eu possa fazer uma atualização do apt-get? NO_PUBKEY

16

Eu tenho um problema 22 tentando:

   # apt-get update
   [... good lines omitted]
   W: GPG error: http://backports.debian.org lenny-backports Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA
   W: GPG error: http://http.us.debian.org stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA
   W: GPG error: http://ftp.us.debian.org lenny Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA

Em http://wiki.debian.org/SecureApt#Other_problems , observa o problema NO_PUBKEY "significa que o arquivo começou a ser assinado por uma nova chave que o seu sistema desconhece ... e quando o sistema é alimentado, nova chave (atualizando o pacote debian-archive-keyring), o aviso desaparecerá "

OK, mas perversamente:

   apt-get install debian-archive-keyring 

me dá:

   WARNING: The following packages cannot be authenticated!
       debian-archive-keyring

e a solução para isso é fazer uma atualização do apt-get

Há um buraco no balde, querida liza.

Alguém pode quebrar o ciclo para mim?

-

Nota: meu /etc/apt/sources.list é:

    deb http://ftp.us.debian.org/debian/ lenny main contrib non-free
    deb http://http.us.debian.org/debian stable main contrib non-free
    deb http://security.debian.org lenny/updates main contrib non-free
    deb http://backports.debian.org/debian-backports lenny-backports main contrib non-free
David Bullock
fonte
11
Se você quiser ficar com lenny, então você deve substituir stablecom lennyno http.us.debian.org. Seu arquivo sources.list atual provavelmente resultará em um sistema danificado. Se você deseja atualizar para o squeeze, substitua todas as stable/lennyreferências e use squeeze.
Zoredache

Respostas:

13

Alguém pode quebrar o ciclo para mim?

Você está basicamente enfrentando o problema padrão de inicialização para criptografia de chave pública .

Há muitos lugares em que você pode baixar as chaves públicas dos vários arquivos, mas frequentemente elas não são fornecidas por HTTPS, e quaisquer arquivos de soma de verificação são entregues no mesmo local.

O link wiki que você forneceu fornece links para https://ftp-master.debian.org/keys.html, que fornece uma cópia das chaves que você pode baixar por SSL. O problema, é claro, é que o certificado para ftp-master.debian.org é assinado por ca.debian.org, que não é distribuído com os navegadores da web mais comuns.

Você basicamente precisa encontrar uma maneira de obter uma cópia do debian-archive-keyring, ou a chave atual do sistema em que você confia, e instalá-la no seu sistema. Se você é realmente paranóico, pode ser necessário pegar uma cópia do arquivo e outra pessoa pode pegar uma cópia de outro espelho em um computador diferente em uma rede diferente. Em seguida, compare as somas de verificação.

Se você não for extremamente paranóico ou estiver em um ambiente de alta segurança, deixe apt-get install debian-archive-keyringinstalar e ignore o aviso.

Seria necessário muito esforço para alguém configurar um MITM entre você e o espelho http.us.debian.org aleatório. Depois que eles fizessem isso, teriam que criar seu próprio pacote debian-archive-keyring personalizado, incluindo sua chave maliciosa, além das chaves padrão. Então eles teriam que reconstruir alguns pacotes para forçá-lo a instalar algo ruim no seu sistema. O esforço envolvido não seria trivial.

O Debian geralmente faz um bom trabalho adicionando chaves que serão usadas para assinar os pacotes no futuro no pacote debian-archive-keyring. Esse é um pacote que você realmente deseja manter atualizado. Dessa forma, você irá digitar as chaves instaladas antes de serem usadas para assinar itens e não terá esse problema no futuro.

Zoredache
fonte
Sim, o Chrome me deu um grande alerta devido ao fato de o assinante do certificado SSL não ser confiável. Suspiro.
David Bullock
11
PS.FYI. A impressão digital atual que tenho para a chave de assinatura do aperto é 0E4E DE2C 7F3E 1FC0 D033 800E 6448 1591 B983 21F9e o lenny é 7F5A 4445 4C72 4A65 CBCD 4FB1 4D27 0D06 F425 84E6.
Zoredache
Bem, meus inimigos hipotéticos são influentes, então não é grande coisa que o certificado SSL para ftp-master.debian.org não seja assinado por uma das autoridades de certificação comprometidas pelas quais meu navegador confia. Então, eu tenho o plugin Convergence de Moxie Marlinspike para Firefox. Pelo menos eu acho que sim - ele não teve problemas para assinar o complemento que instalei, e ele travou o Firefox quando o instalei. Não tenho idéia se os servidores notariais padrão são confiáveis, mas eles parecem concordar que o site principal é o mesmo que estou vendo. Mas provavelmente meus inimigos já comprometeram o Debian. Então, diabos, eu vou com isso.
David Bullock
Obrigado pela impressão digital. De alguma maneira, certa ou errada, confio em alguém que desiste de seu tempo para ajudar um estranho.
David Bullock
11
Você pode obtê-los no banco de dados mit pgp key, se não gostar de pegá-los dos arquivos. http://pgp.mit.edu:11371/pks/lookup?search=Wheezy+Stable+Release+Key&op=index
Zoredache
10

Seu problema é que você não instalou o debian-keyring também. Basta executar o seguinte:

apt-get install debian-keyring
apt-get install debian-archive-keyring

É isso aí.

fireboy
fonte
Posso confirmar que funciona
aexl
debian-keyringnão tem nada a ver com a instalação de pacotes.
x-yuri
5

Debian - Erro Apt-get: NO_PUBKEY / GPG

Em computadores baseados em um sistema operacional Debian que usa o kernel Linux, as mensagens de erro podem aparecer como 'NO_PUBKEY'. Isso acontece ao usar a ferramenta de linha de comando Apt-Get e esse erro está associado ao recurso de atualização da ferramenta. O novo recurso da ferramenta de gerenciamento de pacotes Apt-Get garante a autenticidade do servidor antes de atualizar o sistema operacional Debian. É por isso que o erro 'NO_PUBKEY' aparece. Esse problema pode ser resolvido digitando os comandos apropriados.

Simplesmente digite os seguintes comandos, substituindo o número abaixo pelo da chave que foi exibida na mensagem de erro:

gpg --keyserver pgpkeys.mit.edu --recv-key  AED4B06F473041FA      
gpg -a --export AED4B06F473041FA | sudo apt-key add -
Chaminda Bandara
fonte
Eu experimentei a solução acima e isso funcionou para mim. Resolvido o problema.
Chaminda Bandara #
4

Duas coisas:

  1. Seu arquivo sources.list pode estar incorreto; tem certeza de que essas são as linhas corretas para esses acordos?

  2. Você precisará localizar manualmente os arquivos Release.gpg nesses repositórios e atualizar o chaveiro:

wget -q http://backports.debian.org/debian-backports/dists/squeeze-backports/Release.gpg -O -|apt-key add -

Você pode estar brincando com fogo misturando lenny com o repositório estável

gelo fino
fonte
Não tenho certeza sobre o # 1. Eu estava seguindo as instruções em spinifex.com.au/plugs/dphowtos.html#debian, mas a linha "deb backports.org/debian lenny-backports contrib principal não-livre" estava dando erros de download, seguindo cegamente o backports-master.debian .org / Instruções Alterei para "deb backports.debian.org/debian-backports squeeze-backports main". Agora eu tenho como "deb backports.debian.org/debian-backports lenny-backports contrib principal não-livre" ... é melhor assim? (Eu odeio brincar com fogo). Ainda receba 'NO_PUBKEY', assim como o seu # 2.
David Bullock
1
apt-key adv --keyserver subkeys.pgp.net --recv-keys YOUR_KEY
pressa
fonte
1

A coisa certa a fazer é não se preocupar em obter a chave da sua máquina com segurança, mas ser capaz de verificar com precisão seu caminho de confiança para a chave depois de tê-la em sua máquina. Isso significa que você deseja encontrar uma cadeia de assinaturas onde sua chave gpg foi usada para assinar a chave de alguém que foi usada para assinar a chave de alguém ... para que você encontre alguém que assinou a chave de arquivamento.

Obviamente, isso seria tedioso se você tentasse fazer isso manualmente, a menos de alguns passos da chave. O wotsap é um pacote que o ajudará a descobrir caminhos da sua chave para as chaves das pessoas que assinaram diretamente a chave de arquivamento.

Tudo isso se deve ao fato de você ter uma chave gpg e participar da assinatura de chaves gpg, o que é absolutamente essencial se você realmente deseja fazer isso corretamente.

ensopado
fonte