Como usar https com o apt-get?

40

O apt-get usa https ou qualquer tipo de criptografia? Existe uma maneira de configurá-lo para usá-lo?

    
por Strapakowsky 04.06.2012 / 01:38

2 respostas

44

apt-get (e outros comandos de manipulação de pacotes, que são um front-end para as mesmas bibliotecas APT) podem usar HTTP, HTTPS e FTP (e sistemas de arquivos montados). Se você especificar https:// URLs em /etc/apt/sources.list e /etc/apt/sources.list.d/* , o APT usará HTTPS.

O APT verifica a assinatura dos pacotes. Portanto, você não precisa ter uma forma de transporte que forneça autenticação de dados. Se um invasor modificar os arquivos que você está baixando, isso será notado. Usar uma verificação de assinatura é melhor do que usar uma conexão HTTPS, porque detecta um ataque ao servidor do qual você está fazendo download, não apenas um ataque em trânsito.

Mais precisamente, o fluxo de dados (simplificado) de um pacote é o seguinte:

  1. O pacote é produzido em uma máquina de construção.
  2. O pacote está assinado na máquina de construção.
  3. O pacote assinado é copiado para um espelho de download.
  4. Você faz o download do pacote.

HTTPS garante que a etapa 4 aconteça corretamente. As assinaturas do pacote garantem que as etapas 2 a 4 aconteçam corretamente.

Na verdade, há um pequeno benefício para o HTTPS na etapa 4: as assinaturas de pacote garantem apenas que o pacote seja autêntico. Um invasor na etapa 4 pode representar um servidor legítimo e servir versões desatualizadas do pacote. Por exemplo, o invasor pode impedir que você faça o download de atualizações de segurança, na esperança de explorar uma vulnerabilidade em sua máquina que você teria corrigido se não fosse pelo ataque. Este não é um cenário muito realista, porque requer um atacante ativo (de modo que teria que ser alguém no controle de sua conexão com a Internet), mas isso poderia acontecer em princípio.

O outro benefício para HTTPS seria se você estivesse tentando esconder o fato de estar baixando pacotes do Ubuntu de alguém que está bisbilhotando sua conexão de rede. Mesmo assim, o intruso poderia ver a que host você está se conectando; Se você se conectar a um espelho do Ubuntu e baixar centenas de megabytes, fica claro que você está baixando pacotes do Ubuntu. O bisbilhoteiro também pode descobrir quais pacotes você está baixando do tamanho dos arquivos. Então, o HTTPS só seria útil se você estivesse baixando de um servidor que também oferecesse outros arquivos de tamanho similar - não vejo nenhum ponto, exceto para pacotes de terceiros, e apenas em circunstâncias muito incomuns.

Para reiterar: o benefício usual do HTTPS, que é saber que você está conectado ao servidor real, é inútil quando você está baixando pacotes do Ubuntu. A verificação de assinatura nos pacotes oferece uma garantia mais strong do que o que o HTTPS pode fornecer.

    
por Gilles 04.06.2012 / 02:08
12

Com o APT, normalmente o que é mais importante não é que sua conexão seja criptografada, mas que os arquivos que você está recebendo não foram adulterados.

O APT possui verificação de assinatura integrada para garantir isso.

A criptografia impediria que os espiões pudessem ver o que você está baixando, mas o que você está realmente baixando (e solicitando) é bem incontroverso: será o mesmo que milhares de outros usuários do Ubuntu estão baixando e os arquivos não contêm nada. que não está disponível gratuitamente em muitos servidores. Ainda assim, se você precisar de privacidade sobre quais pacotes em particular você está baixando, o HTTPS pode ser usado (especifique-o em seu sources.list).

A verificação de assinatura incluída no APT garantirá que os arquivos recebidos não tenham sido adulterados. Não importa de onde os arquivos vêm e é possível ter proxies ou proxies reversos entre você e o servidor para reduzir a carga do servidor ou acelerar você. A verificação da assinatura ainda garante que você está recebendo o arquivo não modificado, combinando a assinatura que só poderia ser produzida criptograficamente com o arquivo original e uma cópia da chave privada do Ubuntu.

Se você mudar para HTTPS, não poderá mais aproveitar os servidores proxy para acelerar o acesso ou reduzir a carga. E não acrescentaria mais garantia sobre não-adulteração que a verificação de assinatura da APT ainda não fornece. No entanto, isso significaria que os bisbilhoteiros (como o seu provedor) não poderão ver quais pacotes você está baixando (o que provavelmente não é confidencial e, como Gilles apontou, eles poderiam adivinhar pelo tamanho do arquivo). / p>     

por thomasrutter 04.06.2012 / 02:37