Usando um libresolv Patched e OpenSSH no Ubuntu

2

Temos algumas dúzias de sistemas Ubuntu (variando de 8.04 a 9.40, tanto desktops quanto servidores com apenas acesso serial ao console, no qual gostaríamos de executar uma versão com patch da glibc.

Em particular, isso é para corrigir a incapacidade do resolvedor da glibc de permitir que programas como o cliente ssh do OpenSSH definam o bit AD ; a essência geral do que gostaríamos de fazer está disponível no post do blog Como obter o OpenSSH para ver sinalizadores DNSSEC AD em pesquisas SSHFP com glibc . Estamos pensando em fazer uma modificação um pouco mais extensa, adicionando suporte ao bit AD ao arquivo de cabeçalho, para que possamos compilar um binário ssh padrão, embora isso envolva a substituição do cliente ssh também.

Então, minha pergunta é: qual é a maneira mais fácil de fazer a alteração, mantê-la em sincronia com as atualizações regulares do Ubuntu e distribuí-la para todas as nossas máquinas?

Eu estou supondo que o melhor seria manter nossa própria cópia dos pacotes fonte do Ubuntu, atualizando-os a cada atualização, construindo novas versões conforme apropriado, e distribuindo-os através da configuração de um servidor que entra na lista de servidores de pacotes para cada máquina. Mas eu não sei o suficiente dos detalhes de como fazer isso para saber se essa é a melhor opção. Se for, gostaria de alguns apontamentos para os detalhes da configuração.

Alguns provavelmente estarão se perguntando por que eu gostaria de fazer isso. Existem duas razões:

  1. Este recurso não será adicionado à glibc tão cedo. Está desaparecido há mais de cinco anos e ninguém está demonstrando preocupação com isso; em vez disso, eles estão dizendo que acham que adicionar o recurso é muito perigoso devido ao "alto impacto de segurança" da alteração, ou algo assim.

  2. Temos uma política rígida que você não pode conectar via ssh a computadores da empresa cujas chaves não são verificadas (por exemplo, usamos a opção "StrictHostKeyChecking yes" ssh).

Eu gostaria de evitar qualquer discussão de qualquer um dos pontos acima aqui. Se você quiser saber mais sobre a política dos mantenedores da glibc, ou se você não entender os ataques aos quais você está se abrindo quando não seguir a nossa política de segurança, poste uma pergunta separada, envie um e-mail para mim URL dele, e eu vou ligar para ele daqui.

    
por Curt J. Sampson 01.07.2009 / 05:18

2 respostas

1

Você quer fazer exatamente o que você sugere e manter os pacotes corrigidos. Configurar um repositório é bastante simples, apenas uso o apt-ftparchive para fazer o trabalho pesado de escrever os arquivos Packages. Ter uma regra do procmail para assistir à lista de anúncios do ubuntu-security e avisá-lo sobre quaisquer atualizações de segurança para os pacotes de interesse. Se você nunca construiu um pacote antes de se divertir, mas não é particularmente difícil se você é capaz de ler a documentação.

    
por 01.07.2009 / 05:41
0

Configure um repositório automático em um de seus servidores internos e sincronize-o com a versão do Ubuntu. Certifique-se de que nenhum dos seus clientes esteja adicionando o repositório "updates propostos" do Ubuntu, e registre-o você mesmo (como mantenedor do patch), assim você poderá estar à frente da atualização atual e dar sua versão em avançado. / p>

Nomeie a versão como uma sub-atualização, assim será "over" a versão do ubuntu, por exemplo, a versão atual é:

$ apt-cache policy libc6
libc6:
  Installed: 2.9-4ubuntu6

Supondo que sua organização seja chamada de exemplo, ela deve ser 2.9-4ubuntu6example1 . Você pode até mesmo assinar seus arquivos PGP, para a segurança extra.

Não há necessidade de SSH, e você pode usar PackageKit + PolicyKit para permitir que os usuários o atualizem sem dar acesso root (supondo você é tão estrito).

Como uma nota lateral, aposto que o motivo pelo qual o patch não é aceito é por causa de Ulrich Drepper, ele rejeita quase todos os patchs das pessoas "ele não confia". Logo, o Debian irá mudar para o eglibc, que tem muito mais desenvolvedores amigáveis que considere adicionar qualquer patch.

    
por 01.07.2009 / 05:40