Como instalar o script de firewall no Ubuntu?

2

link

No link acima, há um script de firewall descrito. Como posso instalar esse script na área de trabalho do Ubuntu 10.0.4?

    
por Pablo 04.09.2010 / 05:01

3 respostas

0

O script de firewall "avançado" é um script de shell que deve ser executado depois que as interfaces interna e externa estiverem ativas.

Primeiro, coloque o script em algum lugar, diga /etc/init.d/local/my_firewall_script , torne-o executável e adicione #!/bin/sh como a primeira linha do arquivo de script.

Em seguida, você precisa organizar o script para ser executado após as duas interfaces estarem ativas. Você tem duas opções:

  • por meio do upstart. Isso tem minha preferência porque o script deve ser executado quando as duas interfaces estiverem ativas. Crie um arquivo /etc/init/my_firewall.conf contendo algo assim:

    description "My firewall script"
    start on (net-device-up IFACE=br0 and net-device-up IFACE=eth0)
    console output
    
    pre-start exec /etc/init.d/local/my_firewall_script
    

    Isto é completamente não testado, e eu não tenho experiência zero, então você pode precisar adaptar o arquivo. Além disso, há um bug relacionado ao evento net-device-up que pode afetá-lo.

  • através de scripts ifup. Isso é um pouco difícil, porque o script deve ser executado quando a segunda interface aparecer. Crie um arquivo /etc/network/if-up.d/my_firewall contendo algo parecido com isto (unstested):

    #!/bin/sh
    if [ "$IFACE" = "br0" ] || [ "$IFACE" = "eth0" ]; then
      if [ -n "$(ip addr show br0 | grep '^ *inet ')" ] 2>/dev/null &&
         [ -n "$(ip addr show eth0 | grep '^ *inet ')" ] 2>/dev/null; then
        /etc/init.d/local/my_firewall_script
      fi
    fi
    

    Se houvesse uma única interface, ou se houvesse uma garantia de que uma das interfaces surgisse depois da outra, este método seria mais simples e preferido: o script seria (supondo que a interface única ou última seja eth0 ):

    #!/bin/sh
    if [ "$IFACE" = "et0" ]; then
      /etc/init.d/local/my_firewall_script
    fi
    

Observe que o script fornecido é bastante específico para uma configuração específica - é um exemplo de um script relativamente avançado. Você terá que adaptá-lo à sua configuração, pelo menos os intervalos de endereços IP e, provavelmente, o nome das interfaces.

Depois de encontrar um método que funcione, sugiro que escreva uma descrição de como você o fez na página da wiki.

    
por 04.09.2010 / 13:12
1

Aqui está uma documentação abrangente que oferece várias opções que você pode escolher:

https://help.ubuntu.com/community/IptablesHowTo#Configuration on startup

    
por 08.07.2011 / 05:08
0

Você pode salvar o script como /etc/iptables.up.rules por exemplo e adicionar:

post-up iptables-restore < /etc/iptables.up.rules

para o arquivo /etc/network/interfaces na definição da sua interface.

    
por 31.03.2011 / 21:21