A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Firewalls usando Linux. 1 IPChainsIPChains Sucessor do ipfwadmSucessor do ipfwadm Presente no Linux a partir do kernel 2.1.102Presente no Linux a partir.

Apresentações semelhantes


Apresentação em tema: "Firewalls usando Linux. 1 IPChainsIPChains Sucessor do ipfwadmSucessor do ipfwadm Presente no Linux a partir do kernel 2.1.102Presente no Linux a partir."— Transcrição da apresentação:

1 Firewalls usando Linux

2 1 IPChainsIPChains Sucessor do ipfwadmSucessor do ipfwadm Presente no Linux a partir do kernel 2.1.102Presente no Linux a partir do kernel 2.1.102 Estável e seguroEstável e seguro Não faz statefull packet inspectionNão faz statefull packet inspection

3 2 IPChainsIPChains Listas de regras (chains)Listas de regras (chains) Cada lista tem uma política defaultCada lista tem uma política default –ACCEPT –REJECT –DENY Listas podem ser criadas para melhor organizar as regrasListas podem ser criadas para melhor organizar as regras Cada regra tem um dos seguintes alvosCada regra tem um dos seguintes alvos –ACCEPT, REJECT, DENY –MASQ

4 3 IPChainsIPChains Como os pacotes passam pelos filtros...Como os pacotes passam pelos filtros... R INPUTFORWARDOUTPUT Processos Locais IF

5 4 IPChainsIPChains ReferênciasReferências –Firewall and Proxy Server HOWTO –Linux IPCHAINS-HOWTO –Linux IP Masquerade HOWTO –todos podem ser encontrados em http://www.linuxdoc.org

6 5 NetFilterNetFilter Sucessor do IPChainsSucessor do IPChains Presente no Linux a partir do kernel série 2.4.xPresente no Linux a partir do kernel série 2.4.x –compatível com ipchains e ipfwadm Statefull Packet InspectionStatefull Packet Inspection Tabelas (tables)Tabelas (tables) Listas (chains) de RegrasListas (chains) de Regras

7 6 NetFilterNetFilter NetFilter FrameworkNetFilter Framework R PRE_ROUTINGFORWARDPOST_ROUTING Processos Locais LOCAL INPUTLOCAL OUTPUT IF

8 7 NetFilterNetFilter Filter Table Filter Table Filtragem de pacotes de acordo com regras Filtragem de pacotes de acordo com regras Ação típica: DROP, ACCEPT, REJECT, LOG Ação típica: DROP, ACCEPT, REJECT, LOG

9 8 NetFilterNetFilter Filter TableFilter Table R PRE_ROUTINGFORWARDPOST_ROUTING IF Processos Locais INPUTOUTPUT

10 9 NetFilterNetFilter NAT Table NAT Table DNAT: redirecionar o acesso para um host interno DNAT: redirecionar o acesso para um host interno SNAT: redirecionar o acesso de hosts internos para o firewall SNAT: redirecionar o acesso de hosts internos para o firewall MASQUERADE: como SNAT, mas mais flexível, operando com IPs dinâmicos MASQUERADE: como SNAT, mas mais flexível, operando com IPs dinâmicos

11 10 NetFilterNetFilter NAT TableNAT Table –Source NAT (S-NAT): Masquerading –Destination NAT (D-NAT): balanceamento, transparent proxy D-NAT S-NAT R PREROUTINGFORWARDPOSTROUTING IF Processos Locais LOCAL INPUTOUTPUT

12 11 NetFilterNetFilter Mangle Table Mangle Table Não deve ser usada para filtragem ou NAT Não deve ser usada para filtragem ou NAT Uso: manipulação de campos Uso: manipulação de campos Exemplo típico: alteração de TTL e TOS Exemplo típico: alteração de TTL e TOS

13 12 NetFilterNetFilter Mangle TableMangle Table R PREROUTINGFORWARDPOST_ROUTING IF Processos Locais LOCAL INPUTOUTPUT

14 13 NetFilterNetFilter R NAT PREROUTING IF Processos Locais MANGLE PREROUTING FILTER INPUT MANGLE INPUT MANGLE OUTPUT NAT OUTPUT FILTER OUTPUT MANGLE POSTROUTING NAT POSTROUTING FILTER FORWARD MANGLE FORWARD

15 14 NetFilterNetFilter Estados de uma conexão Estados de uma conexão New: o primeiro pacote de uma conexão New: o primeiro pacote de uma conexão Established: tráfego de uma conexão nos dois sentidos Established: tráfego de uma conexão nos dois sentidos Related: tráfego relacionado a uma outra conexão já estabelecida (established) Related: tráfego relacionado a uma outra conexão já estabelecida (established) Invalid: tráfego não identificado ou não pertencente a nenhum outro estado Invalid: tráfego não identificado ou não pertencente a nenhum outro estado

16 15 NetFilterNetFilter Formato básico de uma regra Formato básico de uma regra iptables [-t table] command [match] [target/jump] table: mangle, filter, nat command: append (A), delete (D), replace (R), insert (I), list (L), flush (F), policy (P), etc match: genérico, TCP, UDP, ICMP, especial target/jump: o que fazer/para onde desviar

17 16 NetFilterNetFilter Matches Matches -p tcpprotocolo = tcp -s 192.168.10.0/24ip de origem = 192.168.10.x -d !192.168.0.1ip de destino distinto de 192.168.0.1 -i eth0interface de entrada = eth0 -o eth1interface de saída = eth1 -p tcp --sport 22:80porta de origem entre 22 e 80 -p tcp --dport 1024:porta de destino de 1024 a 65535 -p tcp --tcp-flags SYN,FIN,ACK SYN testa por syn=1, fin=0 e ack=0 -p tcp --syntesta por syn=1, rst=0, e ack=0 -p udp -dport 53porta de destino 53

18 17 NetFilterNetFilter Matches Matches -p icmp --icmp-type 8 -m limit --limit 3/hour -m mac --mac-source 00:00:00:00:00:01 -p tcp -m multiport --source-port 22,53,80,110 -p tcp -m multiport --port 22,53,80,110 -m owner --uid-owner 500 -m state --state RELATED,ESTABLISHED -p tcp -m tos --tos 0x16 -m ttl --ttl 60

19 18 NetFilterNetFilter targets targets iptables -A INPUT -p tcp -j tcp_packets desvia o processamento para a cadeia tcp_packets iptables -A INPUT -p tcp --dport 80 -j ACCEPT aceita pacotes tcp para a porta 80 iptables -A INPUT -p tcp --dport 23 -j DROP descarta pacotes tcp para a porta 23

20 19 NetFilterNetFilter targets targets iptables -t nat -A PREROUTING -p tcp -d 15.45.23.67 --dport 80 -j DNAT --to-destination 192.168.1.1- 192.168.1.10 --dport 80 -j DNAT --to-destination 192.168.1.1- 192.168.1.10 iptables -A FORWARD -p tcp -j LOG --log-tcp-options iptables -t nat -A POSTROUTING -p TCP -j MASQUERADE --to-ports 1024-31000 iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080

21 20 NetFilterNetFilter targets targets iptables -A FORWARD -p TCP --dport 22 -j REJECT --reject-with tcp-reset iptables -t nat -A POSTROUTING -p tcp -o eth0 -j SNAT --to-source 194.236.50.155-194.236.50.160:1024-32000 iptables -t mangle -A PREROUTING -i eth0 -j TTL --ttl-inc 1

22 21 NetFilterNetFilter Exemplo: rc.firewall.txtExemplo: rc.firewall.txt Onde buscar mais informações (HOW-TOs)Onde buscar mais informações (HOW-TOs) –http://www.netfilter.org


Carregar ppt "Firewalls usando Linux. 1 IPChainsIPChains Sucessor do ipfwadmSucessor do ipfwadm Presente no Linux a partir do kernel 2.1.102Presente no Linux a partir."

Apresentações semelhantes


Anúncios Google