Controlando os cabeçalhos do apt-get

3

Eu tenho várias máquinas no campo e quero ter atualizações autônomas, o que parece ser suportado pelo apt-get. No entanto, quero atualizar hosts diferentes para versões diferentes, por exemplo, retornar arquivos Packages.gz diferentes, eu acho. Mas inspecionando os cabeçalhos http enviados do apt-get eu vejo isto:

Content-Length: 
User-Agent: Debian APT-HTTP/1.3 (1.0.1ubuntu2)
Host: localhost:9991
Cache-Control: max-age=0
Content-Type: 

Não há informações que enviaram o pedido. Eu entendo que isso é ótimo para o usecase comum, mas existe alguma maneira de configurar o apt-get para enviar, e. um token JWT no cabeçalho Authorization ?

    
por vidstige 01.07.2016 / 12:04

2 respostas

1

Eu não acho que isso seja possível diretamente, mas vejo duas formas de contornar isso:

1) Proxy

2) Sistema de Gerenciamento de Servidores

Proxy

Você pode configurar um proxy em cada servidor gerenciado, o que adiciona os cabeçalhos que deseja antes de encaminhar as solicitações. Assim, no lado do servidor de gerenciamento, suas solicitações têm os cabeçalhos necessários. Para isso, você pode usar um proxy pré-construído ou usar como ponto de partida.

Sistema de Gerenciamento de Servidores

Como uma opção alternativa, você pode usar um sistema como o Landscape, que possui os seguintes recursos.

  • Você pode gerenciar todos os seus servidores a partir de uma interface do usuário da web ou usando a API fornecida
  • Você pode definir regras de atualização
  • Você pode enviar novos pacotes para servidores ou conjuntos de servidores
  • Você pode executar scripts em servidores gerenciados
  • Você pode enviar e-mails automaticamente e pacotes aplicados automaticamente quando você tem falhas de segurança que afetam seus servidores.
  • Você pode verificar o status e as informações do servidor

É gratuito para até 10 servidores. As instruções de configuração são aqui

Editar:

Depois de verificar a origem , parece que não é possível definir cabeçalhos personalizados em Neste ponto, apenas os seguintes cabeçalhos parecem estar definidos:

  • Host = > Nome do host do servidor
  • Cache-Control = > Usado para armazenamento em cache
  • Aceitar = > O tipo de resposta para enviar
  • Intervalo = > Usado para solicitar uma quantidade definida de dados
  • If-Modified-Since = > Utilizado para obter apenas dados atualizados
  • Autorização de proxy = > Usado para login de conexão por proxy
  • Autorização = > Usado para nome de usuário / senha de autenticação
  • User-Agent = > Diz que software é usado

Se você realmente quiser, poderá sempre ocultar sua carga de autenticação no cabeçalho User-Agent, mas isso não está adicionando um novo cabeçalho conforme solicitado.

    
por jrtapsell 06.09.2017 / 12:30
0

Não tenho certeza sobre o JWT, mas com certeza você pode adicionar uma autenticação baseada em certificado de cliente que pode ajudar muito na segurança de seus pacotes, se essa for sua principal preocupação.

% bl0ck_qu0te%

e obtenha a configuração

Acquire::https::packagedomain.name.com::Verify-Peer "false";
Acquire::https::packagedomain.name.com::Verify-Host "false";
Acquire::https::packagedomain.name.com::CaInfo "/certs/ca.pem";
Acquire::https::packagedomain.name.com::SslCert "/path/clientcert.pem";
Acquire::https::packagedomain.name.com::SslKey  "/path/clientkey.pem";

no lado do nginx, habilite as seguintes diretivas

         "ssl_client_certificate",
         "ssl_verify_client",
    
por davidls 27.03.2018 / 23:45

Tags