3.8.4. Filtros de IPTables Comuns
Prevenir ataques remotos ao acessar uma LAN é um dos mais importantes aspectos de segurança de rede. A integridade de uma LAN deveria ser protegida de usuários remotos maliciosos através do uso de regras severas de firewall.
No entanto, com uma política padrão ajustada para bloquear todos os pacotes de entrada, saída e enviados, é possível que o firewall/gateway e usuários de LAN internos se comunicarem uns com os outros ou com recursos externos.
Para permitir que usuários realizem funções relacionadas à rede e usem aplicativos de rede, os administradores devem abrir certas portas para comunicação.
Por exemplo: para permitir o acesso à porta 80 pelo firewall, adicione a seguinte regra:
[root@myServer ~ ] # iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
Isto permite que usuários naveguem as páginas da web que se comunicam utilizando a porta 80 padronizada. Para permitir o acesso a sites seguros (como https://www.example.com/), você deve abrir a porta 443 também, como se segue:
[root@myServer ~ ] # iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
Ao criar um conjunto de regras iptables, a ordem é muito importante.
Se uma regra especifica que qualquer pacote de sub-rede 192.168.100.0/24 pode ser derrubado, e é seguido de uma regra que permite os pacotes do 192.168.100.13 (que está dentro da sub-rede restrita derrubada), então a regra adicionada é ignorada.
A regra para permitir pacotes de 192.168.100.13 deve preceder a regra que derruba o lembrete do subnet.
Para inserir uma regra em um local específico em uma corrente existente, use a opção -I. Por exemplo:
[root@myServer ~ ] # iptables -I INPUT 1 -i lo -p all -j ACCEPT
A regra é inserida como a primeira no conjunto INPUT para permitir o tráfego do dispositivo loopback local.
Quando você solicitar acesso remoto à uma LAN, use serviços seguros como o SSH, para conexões remotas criptografadas à serviços LAN.
Administradores com recursos baseados em PPP (tais como, bancos de modem ou grupos de contas ISP) podem utilizar acesso discado para driblar as barreiras firewall de forma segura. Como as conexões são diretas, as conexões de modem estão sempre atrás de um firewall/gateway.
No entanto, para usuários remotos com conexões de banda larga existem exceções para casos especiais. Você pode configurar iptables para aceitar conexões de clientes SSH remotos. Por exemplo, as seguintes regras permitem um acesso remoto SSH:
[root@myServer ~ ] # iptables -A INPUT -p tcp --dport 22 -j ACCEPT [root@myServer ~ ] # iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
Estas regras permitem o acesso de entrada e saída para um único sistema, como um PC conectado diretamente à Internet ou firewall/porta de comunicação (gateway). No entanto, não permitem que os nódulos por trás do firewall/porta de comunicação acessem estes serviços. Para permitir o acesso LAN a estes serviços, você pode usar a Conversão de Endereços de Rede (Network Address Translation - NAT) com regras de filtragem do iptables.