Vous êtes sur la page 1sur 42

Segurana

Curso: Sistemas de Informao


Professor: Edilmarcio Reis
Linux Controle de Redes
IP Tables - Protocolo
Modelo de Referncia OSI
Modelo de Referncia TCP/IP






IP Tables






IP Tables






IP Tables
Protocolo TCP
Caractersticas
Estabelecimento e Trmino de conexes
Multiplexao
Controle de Fluxo
Confiabilidade
IP Tables
Protocolo TCP
Estabelecimento e Trmino da Conexo
Estabelecimento de Conexo
Trmino de Conexo







IP Tables
Protocolo TCP
Multiplexao
Codifica informaes de uma fonte de dados em canal nico
Ex:
192.168.0.1:1026-192.168.0.254:21 (TCP)
192.168.0.2:1027-192.168.0.254.21 (TCP)
192.168.0.1:1028-192.168.0.254:21 (TCP)
IP Tables
Protocolo TCP
Controle de Fluxo
Campo (Windows) do Cabealho
Valor em Bits
Mximo que o host poder receber a cada envio de dados



IP Tables
Protocolo TCP
Confiabilidade




IP Tables
Protocolo UDP
No orientado a conexo
Destinados a dados menos sensveis
udio e Vdeo

Protocolo IP
Encaminhamento de dados entre hosts
Datagramas no-confivel e desordenados
TCP (D confiabilidade para a aplicao)





IP Tables
Protocolo ICMP
transportado dentro do pacote IP
Auxilia o controle e administrao
Tipo de ICMP
0 Echo reply
3 Destination unreachable
4 Source quench
5 Redirect
8 Echo request
IP Tables - Firewall
Conceitos bsicos
Dispositivo de segurana com objetivo de filtrar os dados da
rede
Barreira que impe limites e controle todo trfego de dados

Tipos
Hardware
Software

IP Tables - Firewall
Conceitos bsicos
Dispositivo de segurana com objetivo de filtrar os dados da
rede
Barreira que impe limites e controle todo trfego de dados

IP Tables - Firewall
Alguns Tipo de Firewall
Packet Filtering
Proxy Services
Servidor Proxy (Squid)
Cliente Proxy (Browser ou SSH)
Circuit-Level Gateway
Monitora o handshking

IP Tables - Firewall
Arquitetura de Firewall
Dual-Homed Host
No so oferecidos servios para usurio fora da rede interna
Ideal para pequeno trfego
Menor custo e menor investimento em segurana
Desvantagens na questo da segurana e interoperabilidade
IP Tables - Firewall
Arquitetura de Firewall
Screened Host
Bastion Host + Packet Filter atuando como Screened Router
Duas camadas de segurana


IP Tables - Firewall
Arquitetura de Firewall
Screened Subnet Firewall
Conhecida como DMZ (DeMeliratized Zone)
Rede de permetro entre redes interna e externa


IP Tables - NetFilter
NetFilter
Mdulo do kernel do Linux (Framework no Linux)
Atua a nvel de kernel
Cadeias especficas
PREROUTING
INPUT
FORWARD
OUTPUT
POSROUTING

IP Tables
Roteamento

IP Tables
Tabelas
Filter
Nat
Mangle


IP Tables
Comandos (Inserindo Regras)
Iptables A : Insere uma nova regra
Iptables I : Insere uma nova regra no comeo
Iptables D : Deleta uma regra especifica
Iptables F : Remove todas as regras
Iptables L : Lista as regras
Iptables N : Cria uma nova chain
Iptables P : Altera a politica padro

IP Tables
Parmetros Genricos
-p : Protocolo
-s : Origem
-d : Destino
-i : Interface de entrada
-o : Interface de sada
-j : Ao tomada
-m : Estado da conexo


IP Tables
Alvos Padres
ACCEPT : Aceita os pacotes
DROP : Dropa os pacotes e a origem no ser avisada
REJECT : Rejeita os pacotes e retorna um erro ICMP
RETURN : Retorna o processamento para a chain anterior
LOG : Registra eventos no log do kernel


IP Tables
Comandos
iptables P INPUT DROP
iptables P FORWARD DROP
iptables P OUTPUT DROP

iptables A INPUT s 10.0.0.0/24 j ACCEPT
iptables A OUTPUT d 200.200.x.x j LOG
iptables A OUTPUT d 200.200.x.x j REJECT --reject-with icmp-host-unreachable


IP Tables
Comandos

--sport : porta de origem
iptables A INPUT p udp --sport ! 53 j REJECT

--dport : porta de destino
iptables A INPUT s ! 192.168.0.0/24 p tcp --dport 22 j REJECT


IP Tables
Log com IPTables
iptables A INPUT j LOG
iptables A OUTPUT j LOG
iptables A FORWARD j LOG

iptables A INPUT p tcp --dport 22 --syn j LOG
iptables A INPUT p tcp --dport 22 --syn j LOG

iptables A OUTPUT p tcp --dport 80 j LOG
Iptables A OUTPUT p tcp --dport 80 j ACCEPT






IP Tables
Comandos SNAD, DNAT e MASQUERADE
Compartilhando Conexo com a Internet
echo 1>/proc/sys/net/ipv4/ip_forward
iptables t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to 200.0.0.1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Comunicao entre Redes Privadas
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 j SNAT --to 10.0.0.1
iptables -t nat A POSTROUTING -s 192.168.0.0/24 -o eth0 j SNAT --to 10.0.0.1-
10.0.0.10


IP Tables
Comandos SNAD, DNAT e MASQUERADE
Usando o DNAT
iptables -t nat -A PREROUTING -s 200.200.x.x -i eth1 -j DNAT --to 192.168.0.10
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 3389 -j DNAT --to 192.168.0.2
DNAT para vrios Servidores
iptables -t nat A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.0.2-
192.168.0.4



IP Tables
Comandos SNAD, DNAT e MASQUERADE
Usando o REDIRECT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT
--to-port 3128
iptables -t nat -A PREROUTING s 192.168.0.0/24 -p tcp --dport
80 -j REDIRECT --to-port 3128
iptables -s ! 192.168.0.0/24 p tcp --dport 3128 --syn -j DROP



Balanceamento de Link




Balanceamento de Link
Interfaces - Endereos
eth0: 192.168.0.1
eth1: 200.0.0.2 200.0.0.1
eth2: 189.0.0.2 189.0.0.1

Criando as tabelas de roteamento
echo 10 link1 >>/etc/iproute2/rt_tables
echo 20 link2 >>/etc/iproute2/rt_tables


Balanceamento de Link
Configurar links nas suas respectivas tabelas criadas
ip route add 200.0.0.0/24 dev eth1src 200.0.0.2 table link1
ip route add default via 200.0.0.1 table link1
ip route add 189.0.0.0/24 dev eth2 src 189.0.0.2 table link2
ip route add default via 189.0.0.1 table link2
Configurar links na tabela padro do sistema
ip route add 200.0.0.0/24 dev eth1 200.0.0.2
ip route add 189.0.0.0/24 dev eth2 189.0.0.2
Indicar rota-padro do sistema
ip route add default via 200.0.0.1

Balanceamento de Link
Acrescentando regras das rotas adicionadas
ip rule add from 200.0.0.2 table link1
ip rule add from 189.0.0.2 table link2

Configurando as rotas internas nas tabelas criadas
ip route add 192.168.0.0/24 dev eth0 table link1
ip route add 189.0.0.0/24 dev eth2 table link1
ip route add 127.0.00/8 dev lo table link1
ip route add 192.168.0.0/24 dev eth0 table link2
ip route add 200.0.0.0/24 dev eth1 table link2
ip route add 127.0.0.0/8 dev lo table link2

Balanceamento de Link
Agora o balanceamento
ip route add default nexthop via 200.0.0.1 dev eth1 weigth 1 nexthop via 189.0.0.1 dev eth2 weigth 1

Priorizar um link com maior velocidade
ip route add default nexthop via 200.0.0.1 dev eth1 weigth 3 nexthop via 189.0.0.1 dev eth2 weigth 1

OBS:
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter










Balanceamento por porta
Marcando os pacotes
iptables t mangle A PREROUTING i eth0 p tcp dport 80 j MARK set-mark 100
iptables t mangle A PREROUTING i eth0 p tcp dport 443 j MARK set-mark 200
iptables t mangle A PREROUTING i eth0 p tcp dport 25 j MARK set-mark 200
iptables t mangle A PREROUTING i eth0 p tcp dport 110 j MARK set-mark 100
iptables t mangle A PREROUTING i eth0 p tcp dport 3389 j MARK set-mark 200
iptables t mangle A PREROUTING i eth0 p tcp dport 22 j MARK set-mark 100











Balanceamento por porta
Indicando qual marcao sai por qual link
ip rule add fwmark 100 table 10
ip rule add fwmark 200 table 20

Indicando GW de cada tabela
ip route add default via 200.0.0.1 dev eth1 table link1
ip route add default via 189.0.0.1 dev eth2 table link2









Exemplos
#!/bin/bash
modprobe
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter

iptables P INPUT DROP
iptables P FORWARD DROP
iptables P OUTPUT ACCEPT

iptables -t nat A POSTROUTING -o eth2 j MASQUERADE
iptables -t nat A POSTROUTING -o eth0 j MASQUERADE

iptables -t nat A PREROUTING i eth1 p tcp dport 80 j REDIRECT to-port 3128









Exemplos
iptables A INPUT i eth1 j ACCEPT
iptables A INPUT p tcp --dport 21
iptables A INPUT p tcp --dport 80
iptables A INPUT p tcp --dport 3389
iptables A INPUT p tcp --dport 22
iptables A INPUT p tcp --dport 8080 #Camras
iptables A INPUT p tcp --dport 9090 #Impressora













Exemplos

iptables t nat A PREROUNTING i eth2 p tcp --dport 3389 j DNAT to-destination
192.168.0.101

iptables t nat A PREROUNTING i eth2 p tcp --dport 9090 j DNAT to-destination
192.168.0.251:80

iptables t nat A PREROUNTING i eth2 p tcp --dport 8080 j DNAT to-destination
192.168.0.147:80








Exemplos

iptables A INPUT p tcp --syn j DROP

iptables A INPUT m state --state ESTABLISHED, RELATED j ACCEPT

iptables A INPUT p udp --dport 0:1023 j DROP

iptables A INPUT p icmp --icmp-type echo-request j DROP







QoS
TOS
usado para setar ou alterar o campo: Tipo de servio do pacote. Podendo ser usado
para montar uma politica de prioridades em sua rede

Tipo de TOS
Espera Minima = 16 ou 0x10
Mximo Processamento = 8 ou 0x08
Mxima Confiana = 4 ou 0x04
Custo Mnimo = 2 ou 0x02
Prioridade Normal = 0 ou 0x00





QoS
TOS

Regra
Iptables t mangle A TARGET j TOS set-tos prioridade

Exemplos
SSH = Iptables t mangle A PREROUTING p tcp --dport 22 j TOS --set-tos 16
DNS = Iptables t mangle A OUTPUT -o eth1 p tcp --dport 53 j TOS --set-tos 0x10
HTTP = Iptables t mangle A OUTPUT -o eth1 p tcp --dport 80 j TOS --set-tos 16

Vous aimerez peut-être aussi