Eu preciso de pacotes específicos (fonte ou binários) do Debian.
Posso baixar o pacote usando o apt-get?
Como posso adicionar o repositório Debian ao meu sources.list para que ele seja usado apenas caso a caso? Sem bagunçar meu sistema usando todo o repositório Debian?
Como posso obter a chave gpg para o repositório Debian para garantir que o pacote foi assinado pelo repositório Debian?
(Por favor, não me diga que o sistema pode falhar. Estou ciente disso e não me importo com menos, porque posso restaurar facilmente um instantâneo da VM.)
apt
software-sources
debian
gnupg
James Mitch
fonte
fonte
Respostas:
Existem várias perguntas que responderei individualmente:
Como baixar (e não instalar) o pacote binário individual?
apt-get
tem uma opção para baixar apenas o pacote:Você encontrará o pacote baixado em
/var/cache/apt/archives/
. Nesse caso, você terá que adicionar uma nova configuração da lista de fontes ao apt.Como baixar o pacote de origem individual?
ou quando você souber o local do arquivo .dsc:
Ambas as abordagens verificam a assinatura nos arquivos
Como fixar o sources.list, também conhecido como não bagunço minha instalação?
Você já apontou para a página de descrição básica do APT Pinning , e gostaria apenas de acrescentar que você provavelmente deseja ler a página de manual apt_preferences, que também possui bons exemplos para realizar as coisas que você precisa. Consulte especialmente a seção 'Rastreamento estável' em EXEMPLOS, pois descreve algo muito próximo às suas necessidades:
Há um comando útil ao jogar com várias fontes e com o APT Pinning:
Isso mostra que a versão instalada é 1.1.3-1 ~ bpo60 + 1 e o candidato é 1.2.0 ~ rc3-1 ~ bpo60 + 1, que será instalado a seguir
apt-get upgrade
. Também há algumas versões mais antigas disponíveis em outro repositório.Como baixar a chave do arquivo Debian?
A chave de arquivo da Debian é publicada no ftp-master . Você precisará importar a chave para o seu chaveiro gpg:
Então você terá que verificar suas assinaturas:
E rastreie as chaves GPG individuais para os desenvolvedores do Debian, rastreando-as manualmente ou verificando no projeto PGP Key Statistics . E a menos que exista uma cadeia da sua chave PGP / GPG para o repositório de chaves da Debian, você terá que dar um salto de fé em algum ponto do tempo.
Como baixar e verificar pacotes individuais manualmente
Portanto, a outra abordagem é mais complicada, porque os pacotes deb não são assinados individualmente, mas apenas o
Release
arquivo é assinado. Assim, você precisará baixar e verificar a assinaturaRelease
e osPackages
arquivos junto com o pacote individual.Vou adicionar um exemplo que será mais claro.
Imagine que você deseja baixar o pacote Debian para Knot DNS a partir do PPA oficial do Ubuntu, preciso na arquitetura amd64.
Você precisará clicar nos diretórios e encontrar estes arquivos:
O próximo passo seria verificar a assinatura no
Release
arquivo:Obviamente, você precisará verificar a chave de outras formas (como a chave dos mantenedores Debian / Ubuntu, verificando-a na barra de ativação, etc, etc ...)
Depois de verificar a assinatura correta no
Release
arquivo, você pode ir para a próxima etapa - verificando o arquivo Packages.Como você pode ver, a assinatura pode ser encontrada no
Release
arquivo assinado , portanto, verificamos a integridade doPackages
arquivo computando e comparando sua impressão digital SHA-256.O último passo é semelhante. Você precisa calcular e comparar a impressão digital do pacote individual:
Neste ponto, encadeamos o pacote com segurança ao
Release
arquivo assinado . Portanto, se você acredita na assinatura doRelease
arquivo, pode ter certeza de que o pacote foi baixado intacto.Você pode ler mais no artigo Secure APT no Debian Wiki.
fonte
gpg
comando não precisa de privilégios de root? É suposto ser uma ferramenta administrativa.