Não consigo validar as chaves de autenticação de repositórios

Iniciado por eaxgrande, 14 de Janeiro de 2017, 20:50

tópico anterior - próximo tópico

eaxgrande

Prezados amigos do fórum, boa noite!

Eis que depois de muuuiiito tempo, estou de volta, rs, rs, rs

Preciso de uma forcinha aqui...

Ao tentar  atualizar minha lista de repositórios com o apt update, recebi as mensagens de erro abaixo:
CitarW: Erro GPG: http://dl.google.com/linux/chrome/deb stable Release: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY A040830F7FAC5991  NO_PUBKEY 1397BC53640DB551
E: The repository 'http://dl.google.com/linux/chrome/deb stable Release' is not signed.
W: Erro GPG: http://archive.canonical.com/ubuntu xenial InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY 40976EAF437D05B5  NO_PUBKEY 3B4FE6ACC0B21F32
E: The repository 'http://archive.canonical.com/ubuntu xenial InRelease' is not signed.
W: Erro GPG: http://ppa.launchpad.net/flacon/ppa/ubuntu xenial InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY D5790E4FF2A61FE5
E: The repository 'http://ppa.launchpad.net/flacon/ppa/ubuntu xenial InRelease' is not signed.
E: The repository 'http://repo.steampowered.com/steam xenial Release' does not have a Release file.
W: Erro GPG: http://screenshots.getdeb.net xenial-getdeb InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY A8A515F046D7E7CF
E: The repository 'http://archive.getdeb.net/ubuntu xenial-getdeb InRelease' is not signed.
W: Erro GPG: http://sft.if.usp.br/ubuntu xenial InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY 40976EAF437D05B5  NO_PUBKEY 3B4FE6ACC0B21F32
E: The repository 'http://sft.if.usp.br/ubuntu xenial InRelease' is not signed.
W: Erro GPG: http://sft.if.usp.br/ubuntu xenial-updates InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY 40976EAF437D05B5  NO_PUBKEY 3B4FE6ACC0B21F32
E: The repository 'http://sft.if.usp.br/ubuntu xenial-updates InRelease' is not signed.
W: Erro GPG: http://sft.if.usp.br/ubuntu xenial-security InRelease: As assinaturas a seguir não puderam ser verificadas devido à chave pública não estar disponível: NO_PUBKEY 40976EAF437D05B5  NO_PUBKEY 3B4FE6ACC0B21F32
E: The repository 'http://sft.if.usp.br/ubuntu xenial-security InRelease' is not signed.

Peguei a primeira chave e fiz o procedimento abaixo:
Citargpg --keyserver wwwkeys.eu.pgp.net --recv-keys A040830F7FAC5991

Saiu isso:
Citargpg: requisitando chave 7FAC5991 de servidor hkp - wwwkeys.eu.pgp.net
?: wwwkeys.eu.pgp.net: Host not found
gpgkeys: HTTP fetch error 7: couldn't connect: Success
gpg: nenhum dado OpenPGP válido encontrado.
gpg: Número total processado: 0
gpg: erro de comunicação com o keyserver: keyserver unreachable
gpg: erro de comunicação com o keyserver: chave pública não encontrada
gpg: Recebimento de informação do keyserver falhou: chave pública não encontrada

Insisti
Citargpg --armor --export 7FAC5991 | apt-key add -

Olha no que deu:
Citargpg --armor --export 7FAC5991 | apt-key add -
gpg: AVISO: nada exportado
gpg: nenhum dado OpenPGP válido encontrado.

Estranho é que já editei o arquivo /etc/apt/sources.list umas 20 vezes, trocando a lista de repositórios por outras...

Usei este site para gerar outras listas: https://repogen.simplylinux.ch/

Usei esses: https://www.vivaolinux.com.br/dica/Espelhos-do-Ubuntu-no-Brasil

Esses: https://launchpad.net/ubuntu/+archivemirrors

O resultado é sempre o mesmo... Caramba, nunca tinha visto isso...

O que será que estou fazendo de errado?

Abraços!
Ubuntu-Mate 16.04 Xenial
Lubuntu-LXQt 20.04 Focal

platao

Ja tentou com o lauchpad-getkeys???


http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu/pool/main/l/launchpad-getkeys/launchpad-getkeys_0.3.3-1~webupd8~2_all.deb

instale e depois rode no terminal;

sudo launchpad-getkeys




Please wait... launchpad-getkeys is running an update so
it can detect the missing GPG keys

There are no missing GPG keys!


Se for so problema com chaves deve resolver!
\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

eaxgrande

#2
Olá platao! Quanto tempo, hein!

Obrigado pela ajuda!


Citareaxgrande@Ubuntu-Xenial64Bits:~$ sudo launchpad-getkeys
[sudo] senha para eaxgrande:

Please wait... launchpad-getkeys is running an update so
it can detect the missing GPG keys

Trying to import all the missing keys
Executing: /tmp/tmp.vo1QENTuM9/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.6iLpMA3DiN/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
A040830F7FAC5991  1397BC53640DB551
gpg: requisitando chave 7FAC5991 de servidor hkp - keyserver.ubuntu.com
gpg: chave 7FAC5991: chave pública "Google, Inc. Linux Package Signing Key <linux-packages-keymaster@google.com>" importada
gpg: Número total processado: 1
gpg:               importados: 1
Executing: /tmp/tmp.UG95tNkR2x/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.fgNJTHgqvU/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
40976EAF437D05B5  3B4FE6ACC0B21F32
gpg: requisitando chave 437D05B5 de servidor hkp - keyserver.ubuntu.com
gpg: chave 437D05B5: chave pública "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>" importada
gpg: Número total processado: 1
gpg:               importados: 1
Executing: /tmp/tmp.cXi7EUGLVA/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.Jfdostshwj/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
D5790E4FF2A61FE5
gpg: requisitando chave F2A61FE5 de servidor hkp - keyserver.ubuntu.com
gpg: chave F2A61FE5: chave pública "Launchpad Flacon PPA" importada
gpg: Número total processado: 1
gpg:               importados: 1  (RSA: 1)
Executing: /tmp/tmp.ZD2DvuRrMy/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.7o3cqekM8a/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.6MYjmHgdIj/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
40976EAF437D05B5  3B4FE6ACC0B21F32
gpg: requisitando chave 437D05B5 de servidor hkp - keyserver.ubuntu.com
gpg: chave 437D05B5: "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>"
gpg: Número total processado: 1
gpg:              não modificados: 1
Executing: /tmp/tmp.A9xiXc3KG9/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.tG2cVBDGGT/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
A8A515F046D7E7CF
gpg: requisitando chave 46D7E7CF de servidor hkp - keyserver.ubuntu.com
gpg: chave 46D7E7CF: chave pública "GetDeb Archive Automatic Signing Key <archive@getdeb.net>" importada
gpg: Número total processado: 1
gpg:               importados: 1  (RSA: 1)
Executing: /tmp/tmp.9oO1rA1LYA/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.pd3OBMGKNN/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
40976EAF437D05B5  3B4FE6ACC0B21F32
gpg: requisitando chave 437D05B5 de servidor hkp - keyserver.ubuntu.com
gpg: chave 437D05B5: "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>"
gpg: Número total processado: 1
gpg:              não modificados: 1
Executing: /tmp/tmp.HEwWByHl20/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.15dnBRDg4q/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
40976EAF437D05B5  3B4FE6ACC0B21F32
gpg: requisitando chave 437D05B5 de servidor hkp - keyserver.ubuntu.com
gpg: chave 437D05B5: "Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>"
gpg: Número total processado: 1
gpg:              não modificados: 1
Executing: /tmp/tmp.mecNcwTmay/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.KQltFKsx6t/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys
Executing: /tmp/tmp.EdaG2ntNs2/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--keyserver-options
http-proxy=
--recv-keys

launchpad-getkeys has finished importing all missing GPG keys.
Try running sudo apt-get update - you shouldn't see any key
errors any more.
.............................................................
Note that launchpad-getkeys imports missing GPG keys but does
not fix broken keys.
eaxgrande@Ubuntu-Xenial64Bits:~$

Citareaxgrande@Ubuntu-Xenial64Bits:~$ sudo apt update
Obter:1 http://sft.if.usp.br/ubuntu xenial InRelease [247 kB]
Ign:2 http://dl.google.com/linux/chrome/deb stable InRelease                                                                                         
Atingido:3 http://dl.google.com/linux/chrome/deb stable Release                                                                                     
Obter:4 http://dl.google.com/linux/chrome/deb stable Release.gpg [916 B]                                                                             
Obter:6 http://ppa.launchpad.net/flacon/ppa/ubuntu xenial InRelease [17,5 kB]                                                                       
Obter:7 http://archive.canonical.com/ubuntu xenial InRelease [11,5 kB]                                                                               
Ign:8 http://repo.steampowered.com/steam xenial InRelease                                                                                           
Err:9 http://repo.steampowered.com/steam xenial Release                                                                                             
  404  Not Found [IP: 96.6.123.19 80]
Obter:5 http://screenshots.getdeb.net xenial-getdeb InRelease [8.139 B]                                           
Obter:10 http://sft.if.usp.br/ubuntu xenial-updates InRelease [102 kB]
Obter:11 http://sft.if.usp.br/ubuntu xenial-security InRelease [102 kB]                                                                             
Lendo listas de pacotes... Pronto                                                                                                                   
E: The repository 'http://repo.steampowered.com/steam xenial Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
eaxgrande@Ubuntu-Xenial64Bits:~$

Parece que funcionou.

Tentei pesquisar um pouco sobre esse script do qual nunca tinha ouvido falar e ví que ele não é novo...

O que aconteceu aqui? Os repositórios não estão disponibilizando as chaves públicas por algum motivo?

De onde esse script tirou essas chaves?!  ???

Abraços!

Ubuntu-Mate 16.04 Xenial
Lubuntu-LXQt 20.04 Focal

platao

#3
E complicado quando vc tem varios problemas com chave ao mesmo tempo, vc vai ter que achar uma a uma e adicionar...esse script faz isso automaticamente, ele existe se eu nao estiver enganado desde o 12.04 ou ate antes!!!
-----------------------------------------------------------------------------------------------------------------------------------------------------------------

#! /bin/bash
if [ "`whoami`" != "root" ];
then
echo "Please run with SUDO"
exit 1
fi

function HELP ()
{
echo "

launchpad-getkeys is an utility to automatically import all
Lunchpad PPAs missing GPG keys.

The tool does not fix broken keys.

Usage:
* use without any parameter to automatically import all the missing
GPG keys
* -k SERVER:PORT will pass a new keyserver, in case the default
keyserver is down
* -p http://PROXY:PORT lets you specify a proxy-server other than the default one.
"
exit 0
}

while getopts "k:p:h\?" opt; do
   case "$opt" in
      k ) KEYSERVER="$OPTARG"         ;;
      p ) PROXY="$OPTARG"         ;;
      h ) HELP            ;;
      \?) HELP            ;;
      * ) warn "Unknown option '$opt'";   ;;
   esac
done
shift $(($OPTIND -1))

if [[ $KEYSERVER ]]; then

   KEYSERVERANDPORT=$(echo $KEYSERVER | grep ":")
      if [[ ! $KEYSERVERANDPORT ]]; then
      echo "Error: please enter a keyserver and a port, like so: sudo launchpad-getkeys -k http://SERVER:PORT"
      exit 0
   fi
fi

if [[ $PROXY ]]; then

   PROXYSERVERANDPORT=$(echo $PROXY | grep ":")
      if [[ ! $PROXYSERVERANDPORT ]]; then
      echo "Error: please enter a proxyserver and a port, like so: sudo launchpad-getkeys -p PROXYSERVER:PORT (without http://)"
      exit 0
   fi
fi

if [[ ! $PROXY ]]; then
   PROXY=$http_proxy   
fi

# use apt proxy
APT_PROXIES=$(apt-config shell http_proxy Acquire::http::Proxy https_proxy Acquire::https::Proxy ftp_proxy Acquire::ftp::Proxy)

if [ -n "$APT_PROXIES" ]; then
   eval export $APT_PROXIES
fi

echo "
Please wait... launchpad-getkeys is running an update so
it can detect the missing GPG keys"
apt-get update -qq 2> /tmp/updateresults


MISSINGKEYS=$(cat /tmp/updateresults)

if [[ $MISSINGKEYS ]]; then

echo "
Trying to import all the missing keys"

   IFS=$'\n'
   n=1
   while read curline; do
      GPGKEYTOGET=$(echo $curline | grep NO_PUBKEY | sed -e 's/.*: \|NO_PUBKEY //g')
      if [[ $KEYSERVER ]]; then
         apt-key adv --keyserver hkp://$keyserver --keyserver-options http-proxy=$PROXY --recv-keys $GPGKEYTOGET
      else
         apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy=$PROXY --recv-keys $GPGKEYTOGET
      fi
      let n=n+1
   done < /tmp/updateresults

   echo "
launchpad-getkeys has finished importing all missing GPG keys.
Try running "sudo apt-get update" - you shouldn't see any key
errors any more.
.............................................................
Note that launchpad-getkeys imports missing GPG keys but does
not fix broken keys."
else
   echo "
There are no missing GPG keys!"
fi

rm /tmp/updateresults

-------------------------------------------------------------------------------------------------------------------------------------------------------
Se vc nao quiser instalar o pacote pode rodar ele diretamente que o efeito e o mesmo.

Os repositorios estao disponibilizando as chaves normalmente, salvo se algum deles estiver em algum momento fora do ar,  pode ser que vc usou algum programa para gerar as listas de repositorios, as chaves ou nao foram importadas pelo programa que elabora a lista ou estavam desatualizadas.

Eu usei uma vez o site que gera as listas de repositorios a muito tempo atras Eax....esse site que gera as listas tbm nao e novo,existe a bastante tempo tbm, talvez algum amigo que entenda melhor possa dar uma explicação mais detalhada do script launchpad-getkeys do PPA do webupd8  para o pessoal do forum!
\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

platao

Outra coisa interessante Eax, ao invez de ir la e gerar uma source list, manter a sua original e ver as adiçoes que ele propoe la, bastante interessante as descriçoes de PPA de terceiros! tem varios deles ali que eu nao conhecia tbm....ai vc vai atras do PPA vai ate a homepage e adiciona um a um o que lhe interessar.... ; )
\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

eaxgrande

Pois é, platao, acho que deve ter acontecido as duas coisas: algum dos repositórios que tentei poderiam estar com chaves desatualizadas, principalmente de alguns PPA de terceiros que eu tinha antes. Quando começou a dar problema, cheguei a resetar tudo usando todos os comandos abaixo,
Citarsudo rm -r /var/lib/apt/lists/* -vf
Citarsudo rm /var/lib/dpkg/info/*
Citarsudo rm -r /var/lib/apt/lists/*
Citarsudo mkdir -p /var/lib/apt/lists/partial
além de apagar manualmente o conteúdo do /etc/apt/sources.list várias vezes.

Outra coisa, durante o procedimento de validação das chaves, cheguei a usar sucessivamente dois comandos parecidos, aparentemente com a mesma função:
Citarsudo gpg --keyserver subkeys.pgp.net --recv número-da-chave
Citarsudo gpg --keyserver wwwkeys.eu.pgp.net --recv-keys número-da-chave

Depois de tudo isso não é de se estranhar que eu não estivesse mais conseguindo importar nenhuma chave...

Não entendo nada de shell script (ainda... depois de todos esses anos...  visto que eu sempre me propus a aprender...  ;D), mas notei que naquele script do launchpad-getkeys aparece com muita frequência o termo "PROXY". Cheguei a pensar que ele serve mais pra resolver um problema de conexão do que outra coisa...

Ah, lembrei de algo! Quando estava tentando atualizar pelo software-properties-gtk recebi várias vezes mensagens para verificar a conexão com a internet... Falhou a conexão, verifique se está conectado, algo assim!

Quanto à sua última sugestão: é verdade, o ideal seria eu fazer backup do sources.list para comparar.

platao, imensamente grato pela ajuda!

Grande abraço!
Ubuntu-Mate 16.04 Xenial
Lubuntu-LXQt 20.04 Focal

platao

Entao Eax, quando da aqueles problemas estranhos na souces list tipo falha ao baixar pacote,pacote corrompido no download que o sistema tenta instalar, server fora dor ar, ai e so dar o famoso""" comando;

sudo rm /var/lib/apt/lists/* ; sudo rm /var/lib/apt/lists/partial/* ; sudo apt-get clean ; sudo apt-get -f install ; sudo apt update 

Dessa forma ele nao destroi nada, vai baixar novamente os indices de repositorios novamente, e por exemplo, aquele pacote corrompido que veio no download vai ser baixado novamente.

Esses comandos que postou sao mais invasivos, o dpkg vai ficar meio perdidão, exatamente como vc disse e para "zerar" os repositorios de terceiros principalmente, o dpkg faz um inventario de todos os pacotes que vc tem instalado na maquina, versoes, etc. Se vc nao der um apt update novamente e tentar requisitar uma nova lista e chaves ele nao vai funcionar porque esta vazio.

Entao trocando em miudos, sempre que vc faz uma "limpeza" tem que dar um update antes de tentar requisitar uma chave de algum repositorio. Fiz uma vez aqui essa limpeza""" e o sistema ficou meio estranho ; ) mesmo eu marcando para me oferecer os pacotes do proposed e marcando na aba "opçoes para desenvolvedores" ele nao me ofereceu mais nenhuma atualização de pacote! KKkk

O script ele faz uma requisição ao keyserver do Ubuntu na porta 80 e cria um diretorio temporario em /tmp, e umporta as chaves, depois de importado as chaves ele remove o diretorio. Tem pessoal que arrasa no shell script eu nao entendo quase nada ; ). Outra coisa e tentar um update geralmente quando niguem estiver usando a internet, dar um ping ver se tem perda de pacote, aparentmente esta tudo ok!!!

\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

eaxgrande

Entendi...  :D

Obrigado mais uma vez, platao.

Vou guardar suas instruções aqui pra não ter erro da próxima vez.

Grande abraço!



Ubuntu-Mate 16.04 Xenial
Lubuntu-LXQt 20.04 Focal

metalomega

Top todas essas informações, eu tive problema recente com pacotes ao instalar vários programas via terminal no novo Ubuntu 20.04 LTS, e sou noob ainda, vim do Windows, apesar de já ter tido experiências anteriores com Kurumin, Ubuntu 8 por aí.
Agora está explicado o porque dessas chaves e o porque delas.
Abs