Como uma versão pode controlar as regras de firewall do kernel do Linux?

0

Nosso roteador é o CentOS, mas apenas usamos o iptables para modificar as regras de firewall do kernel do Linux. Existe um script que está sob controle de versão que redefine todas as cadeias / regras, mas ao fazê-lo elimina todas as conexões existentes e geralmente causa estragos se for executado durante o horário de expediente. Isso significa que o método usual para alterar as regras do firewall é usar iptables 'on-the-fly'. Isso pode resultar em modificações no firewall que não retornem ao controle de versão.

O que estou tentando descobrir é como verificar se houve alguma modificação no firewall desde uma versão específica do script no Subversion.

A saída de iptables --list é bem diferente de uma linha no script que normalmente é parecida com iptables -A chain -j ACCEPT -s 192.168.1.100 .

Existe uma maneira mais fácil / melhor de manter as regras de firewall do kernel Linux sob controle de versão?

Estou aberto a sugestões de ferramentas alternativas ou sistemas operacionais, desde que sejam de código aberto e bem estabelecidos.

    
por Styne666 29.04.2016 / 08:58

1 resposta

0

Eu percebi assim que perguntei isso que existem iptables-save e iptables-restore . No entanto, não tenho certeza de como isso funcionaria. Vou postar como uma resposta, mas acho que a solução real será um pouco mais complicada.

Pode-se usar iptables-save , que imprime as cadeias atualmente carregadas na stdout. Você também pode usar a opção -t para especificar cadeias definidas pelo usuário . Assim, você poderia produzir cada cadeia em um arquivo, um por um, e controlá-los. No entanto, não consigo ver uma maneira fácil de recarregar as cadeias uma a uma, pois o equivalente iptables-restore não tem a opção equivalente ( -t significa teste).

A outra limitação deste método que notei foi que não há como salvar as cadeias embutidas individualmente (ou seja, INPUT, OUTPUT e FORWARD). A única maneira de obtê-los é não usar a opção -t e descartar tudo.

Seria necessário algum script para transformar tudo isso em algo que alguém pudesse salvar e recarregar facilmente.

    
por 29.04.2016 / 09:26