DMZ no ubuntu 11.04 com iptables
	
	
		Olá,
Trabalho em uma empresa que gerencia acesso a internet e tenho uma necessidade que ainda não consegui sanar.
O  cliente (shopping) vende acesso a internet para suas lojas, até ai nada  demais, o problema é que algumas lojas têm serviços pela internet  (sites/email/...) e por isso foram fornecidos ips publicos. Agora  preciso colocar um servidor linux que entregue ips privados sem que as  lojas percam os seus serviços online.
A minha ideia é a loja receber  um ip privado (10.10.10.0/24) e o servidor redirecionar os pacotes de um  ip valido para esse ip privado.
 
A grande dificuldade é fazer  com que os ips usados pelas lojas sejam colocados no linux e possam  direcionar para cada loja correspondente.
ips usados hoje:
loja 1: 200.200.200.2
loja 2: 200.200.200.3
loja 3: 200.200.200.4
loja 4: 200.200.200.5
Exemplo: Com uma interface virtual na interface do link, usaria algumas regras que redirecionassem todas as requisições  com destino a interface virtual para o ip privado da loja 1, ou seja, o  servidor linux terá na sua placa de rede ligada no link o ip  200.200.200.1 e quando receber requisições para o ip 200.200.200.2  direcionar para o ip privado da loja 1.
Não consegui montar um conjunto de regras que eu consiga fazer isso. Abaixo algumas regras que eu tentei.
informando que a primeira regra do firewall é drop para tudo.
iptables -I FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -I PREROUTING -i eth0:1 -j DNAT -to 10.10.10.154
iptables -t nat -I PREROUTING -i eth0:1 -d 10.10.10.154 -j ACCEPT
iptables -t nat -I PREROUTING -i eth0:1 -p tcp REDIRECT -to 10.10.10.154
iptables -I PREROUTING -t nat -d 10.10.10.154 -j RETURN
iptables -I FORWARD -d 10.10.10.154 -j ACCEPT
Alguém pode me guiar para eu resolver isso?
	 
	
	
	
		Re: DMZ no ubuntu 11.04 com iptables
	
	
		
	Citação:
	
		
		
			
				Postado originalmente por 
eduoliv
				
			 
			Não consegui montar um conjunto de regras que eu consiga fazer isso. Abaixo algumas regras que eu tentei.
informando que a primeira regra do firewall é drop para tudo.
iptables -I FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -I PREROUTING -i eth0:1 -j DNAT -to 10.10.10.154
iptables -t nat -I PREROUTING -i eth0:1 -d 10.10.10.154 -j ACCEPT
iptables -t nat -I PREROUTING -i eth0:1 -p tcp REDIRECT -to 10.10.10.154
iptables -I PREROUTING -t nat -d 10.10.10.154 -j RETURN
iptables -I FORWARD -d 10.10.10.154 -j ACCEPT
Alguém pode me guiar para eu resolver isso?
			
		
	 
 
Vamos do começo...
1 - O iptables é "top-Down", ou seja, ele lê as regras de cima para baixo.  Se a primeira regra do seu firewall faz drop em tudo, ele desconsidera tudo que vem abaixo;
2 - a tabela "Nat" não é local para regras com "ACCEPT", estas devem ficar na tabela "filter".
3 - organize suas regras em um arquivo, de forma lógica e ordenada. Agrupe as regras que tratm de um mesmo "problema".
Você está no caminho certo, só colocando as coisas nos lugares errados...
	 
	
	
	
		Re: DMZ no ubuntu 11.04 com iptables
	
	
		Esquentei um pouco a cabeça mas consegui resolver com...
iptables -t nat -I PREROUTING -d 200.200.200.2 -p tcp -j DNAT --to 10.10.10.154
Posso ter feito uma coisa simples... mas to me sentindo "o cara"... :)
	 
	
	
	
		Re: DMZ no ubuntu 11.04 com iptables
	
	
		
	Citação:
	
		
		
			
				Postado originalmente por 
eduoliv
				
			 
			Esquentei um pouco a cabeça mas consegui resolver com...
iptables -t nat -I PREROUTING -d 200.200.200.2 -p tcp -j DNAT --to 10.10.10.154
Posso ter feito uma coisa simples... mas to me sentindo "o cara"... :)
			
		
	 
 É exatamente isso. E agora você consegue controlar o fluxo de dados (liberações e bloqueios) através da tabela filter, com regras de FORWARD.
Parabéns!
	 
	
	
	
		Re: DMZ no ubuntu 11.04 com iptables
	
	
		continuando com a situação... preciso que o pacote que chegou pelo ip 200.200.200.2 (interface virtual) e foi direcionado para 10.10.10.154 volte para o destino com o endereço de ip 200.200.200.2 no cabeçalho e não o ip que que está no router (200.200.200.1).
Isso é necessário pois o cliente que acessa um noip ou meuip.com.br veja no ip de saída o que é direcionado para ele.
Não encontrei regra onde eu possa especificar o ip que deve ser colocado quando mascarar...
Alguém pode me guiar para eu encontrar a solução?
	 
	
	
	
		Re: DMZ no ubuntu 11.04 com iptables
	
	
		Faz tempo que não mecho com iptables então pode estar errado... mas não custa tentar...
Como vc fez DNAT ( Destination NAT ) para o endereço local ( 10.10.... ) eu acredito que fazendo SNAT para o IP-externo funcione... rs mas não tenho certeza... me corrijam os mais experientes em iptables ae...
ex.:
                Código :
                
iptables -t nat -I POSTROUTING -s 10.10.10.154 -p tcp -j SNAT --to 200.200.200.2
  
Att.