2. Sumrio
3. Conceitos bsicos 4. Diagramas de tabelas e cadeias 5. Principais comandos 6. Principais filtros 7. Principais aes 8. Referncias 9. Iptables
10. O iptables o programa capaz de gerenciar a configurao do netfilter 11. Principais caractersticas
12. Filtragem considerando o estado do pacote 13. Suporte a NAT, tanto para endereos de rede ou portas 14. Flexvel, com suporte a plugins 15. Conceitos bsicos
16. cadeias : locais onde as regras podem ser agrupadas. As regras so processadas em ordem pelo firewall. 17. Toda cadeia tem uma poltica padro, definida pelo usurio. 18. A cadeia percorrida at uma regra ser atingida. As seguintes so ignoradas. 19. Regras com erro so ignoradas. 20. Se nenhuma regra atingida, usa-se a regra da poltica padro. Regra 1 Regra 2 Regra 3 Regra n ... Cadeia ... Nenhuma regra atingida. Usa a poltica da cadeia Regra atingida Analise a cadeia 21. Conceitos bsicos
22. OUTPUT 23. FORWARD Tabelanat : tabela usada para NAT (gera outras conexes)
24. OUTPUT 25. POSTROUTING 26. Conceitos bsicos
27. INPUT 28. FORWARD 29. OUTPUT 30. POSTROUTING Tabelaraw : marca pacotes para rastreio posterior 31. Organizao das tabelas do iptables
PROCESSO LOCAL FORWARD INPUT OUTPUT
interface de sada interface de entrada 32. Organizao das tabelas do iptables
PROCESSO LOCAL PREROUTING POSTROUTING OUTPUT
interface de entrada interface de sada 33. Organizao das tabelas do iptables
PROCESSO LOCAL FORWARD PREROUTING POSTROUTING INPUT OUTPUT
interface de entrada interface de sada 34. Organizao das tabelas do iptables
PROCESSO LOCAL PREROUTING POSTROUTING OUTPUT
interface de entrada interface de sada 35. Organizao das tabelas do iptables
PROCESSO LOCAL FORWARD PREROUTING POSTROUTING INPUT OUTPUT
36. mangle 37. nat (DNAT) 38. raw
39. mangle
40. mangle 41. nat (DNAT)
42. nat (SNAT)
interface de entrada
43. mangle interface de sada 44. Salvando e restaurando regras no iptables
45. iptables-[save|restore] executam a operao em um s passo, de maneira mais segura (sem brechas temporrias) e rpida. 46. Salvando:
Restaurando:
possvel salvar os contadores com -c 47. Formato geral das regras do iptables
Especifique a tabela que deseja usar. A tabela filter a tabela default. O que ser feito: adicionar uma regra, remover, etc. Deve vir no incio. Detalhamento que ir permitir a filtragem do pacote. IPs de origem, taxas, portas, etc. Ao a ser tomada. Por exemplo, DROP, ACCEPT, pular para outra cadeia, etc. 48. Principais comandos de manipulao de cadeias no iptables
-N: cria uma nova cadeia
-F: apaga as regras da cadeia
-X: apaga uma cadeia vazia
-Z: zera todos os contadores da cadeia
49. Principais comandos de manipulao de cadeias no iptables
-L: listar regras da cadeia (adicione -n para no resolver nomes e --line-numbers para ver o nmero das regras)
-D: apagar uma regra da cadeia. Pode usar tambm a linha
50. iptables -D INPUT 5 -R: trocar uma regra por outra
-I: insere uma regra em um ponto especfico da cadeia
51. Principais filtros no iptables
52. iptables -A INPUT -p ! tcp -j DROP -s : especifica o endereo de origem. Aceita IPs, redes, IP/mscara, IP/nn (notao CIDR) e tambm a negao com !.
53. iptables -A INPUT -s ! 10.1.1.0/24 -j DROP -d : especifica o endereo de destino (mesmas regras do -s)
54. Principais filtros no iptables
55. iptables -A INPUT -i ppp+ -j DROP-o : especifica a interface de sada. Vlida em OUTPUT, POSTROUTING e FORWARD. Usa as mesmas regras de -i.
56. Principais filtros no iptables
57. iptables -A INPUT -p tcp --sport 1:1023 -j REJECT 58. iptables -A INPUT -p tcp --sport 1024: -j ACCEPT --dport : especifica a porta de destino. Mesmas regras do --sport.
59. Principais filtros no iptables(TCP, -ptcp necessrio)
60. iptables -A INPUT -p tcp --tcp-flags ! SYN,FIN,ACK SYN -j DROP --syn: Uma abreviao para selecionar pacotes que estejam relacionados com um processo de abertura de conexo. Poderia ser escrito tambm como: --tcp-flags SYN,RST,ACK SYN
61. Principais filtros no iptables(icmp)
62. --icmp-type : filtra por tipo de pacotes ICMP. Por exemplo, 8 o ping, mas echo-request poderia ser usado. Veja a lista completa com iptables -p icmp help
63. Principais filtros no iptables(filtros explcitos)
64. -m iprange: permite especificar faixas de IPs para origem (--src-range) e destino (--dst-range)
-m length --length : permite selecionar pacotes usando o seu tamanho como referncia. 65. -m limit: limita quantas vezes uma regra pode ser casada dentro de um intervalo de tempo. Por exemplo, -m limit --limit 3/s ou -m --limit 1000/hour. possvel especificar limites de rajadas junto com--limit-burst. Por exemplo -m limit --limit 5/s --limit-burst 10. 66. -m mac --mac-source xx:xx:xx:xx:xx:xx: filtra por MACs 67. Isto s um amostra, existem muitas opes -m 68. Principais aes no iptables
DROP: descarta o pacote
REJECT: rejeita o pacote, informando ao host de origem. Vlida em INPUT, OUTPUT e FORWARD.
LOG: coloca no log informaes sobre o pacote. Uma opo interessante o --log-prefix mensagem, que permite a adio de um prefixo. O log no interrompe o processamento, fique atento.
69. iptables -A INPUT -p tcp --dport 23 -j DROP 70. Principais aes no iptables(MASQUERADE)
71. iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE No esquea de habilitar o forwarding, colocando 1 em em /proc/sys/net/ipv4/ip_forward, usando uma das formas abaixo:
72. # echo 1 > /proc/sys/net/ipv4/ip_forward firewall internet intranet eth1 eth0 73. Principais aes no iptables(SNAT)
74. iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 200.210.10.1-200.210.10.10:1024:32000 75. Principais aes no iptables(REDIRECT)
Na configurao do squid, use a seguinte linha:
proxy+fw :3128 intranet cliente Acesso a internet na porta 80 eth1 76. Principais aes no iptables(DNAT)
77. Caso de uso tpico para criao de virtual servers, onde preciso regras para quem vem de fora, para mquina na intranet e para o prprio firewall.
78. iptables -t nat -A POSTROUTING -p tcp -d 172.16.0.10 --dport 80 -j SNAT --to-source 172.16.0.1 79. iptables -t nat -A OUTPUT -p tcp -d 65.10.20.31 --dport 80 -j DNAT --to-destination 172.16.0.10 firewall internet intranet WWW cliente 200.210.1.2 172.16.0.10 172.16.0.1 65.10.20.31 80. Principais aes no iptables (redirecionando cadeias)
Ao terminar, caso nenhuma regra tenha sido acionada, o fluxo volta para quem redirecionou e o processamento continua. Caso contrrio, interrompido.
81. iptables -A INPUT -p tcp --dport 80 -j internet Regra 1 -j internet Regra 3 Regra n ... INPUT ... Regra 1 Regra 2 Regra 3 Regra m ... internet ... Regra no atingida: aplica poltica padro da cadeia e retorna se possvel 82. Referncias
O guia foca Linux, como sempre:
A pgina do projeto netfilter (com alguns docs em PT_BR):
Top Related