Desculpe entrar no meio da briga :)
Mas n�o entendo sua l�gica, qual a diferen�a da sua configura��o com a
tradicional DMZ?
A �nica diferen�a que eu vejo � que os papeis se inverteram mas no fim
d� na mesma.
http://www.phoneboy.com/bin/view.pl/FAQs/SampleConfigurationWithNAT
Lembrando que ip's v�lidos s�o rote�veis na internet!
Outro ponto importante, o seu esquema � inseguro pelo fato de revelar
atrav�s de IP's v�lidos que voc� tem al�m de clientes, servidores com
v�rios IP's v�lidos. O fato de um servidor ter um ip inv�lido na
internet n�o significa que ele n�o vai funcionar, desde que,
configurado por uma pessoa capacitada ele deve funcionar de forma
totalmente transparente para o usu�rio.
De uma maneira ou de outra mesmo voc� n�o gostando de NAT voc� nessa
sua configura��o est� fazendo NAT, por isso n�o entendo sua l�gica,
que diferen�a tem fazer NAT de ip inv�lido para v�lido e ip v�lido
para ip inv�lido e ip v�lido novamente??? No final voc� tem um network
overhead desnecess�rio...
Seu exemplo
Internet ----| roteador |--------------| firewall |---------| rede interna
200.x.x.1 192.168.0.1 192.168.0.2 200.x.x.4 200.x.x.0/24
Meu exemplo
Internet ----| roteador |----------| firewall |------------------| rede interna
x.x.x.x__200.x.x.x___200.x.x.x___192.168.x.x__192.168.x.x/x
No seu exemplo voc� tem que fazer 2 processos de NAT e 2 roteamentos,
IP v�lido > Ip inv�lido > IP V�lido
No meu exemplo voc� tem que fazer 1 processo de roteamento e 1 NAT,
IP inv�lido > ip v�lido.
Por quest�es de funcionalidade, internamente ter um ip inv�lido n�o
deve reduzir em nada as funcionalidades dos servidores....Vamos por
exemplo pegar o cabe�alho de uma mensagem que envie de dentro do meu
servidor para o gmail.
Servidor de email: mail.interno.local
IP: 10.1.1.19
Dom�nio: empresa.com.br
Windows 2003 Active Directory Domain: interno.local
PS: mail.interno.local e empresa.com.br n�o tem nada haver uma com a
outra mas est�o dentro de uma mesma estrutura.
X-Gmail-Received: 685dfc4faca421efad5a466d98db2226241b26a0
Delivered-To: [EMAIL PROTECTED]
Received: by 10.54.5.65 with SMTP id 65cs11337wre;
Sat, 12 Feb 2005 09:32:13 -0800 (PST)
Received: by 10.38.89.1 with SMTP id m1mr44718rnb;
Sat, 12 Feb 2005 09:32:13 -0800 (PST)
Return-Path: <[EMAIL PROTECTED]>
Received: from mail.empresa.com.br (200-xxx-xxx-xx.empresa.com.br
[xxx.xxx.xxx.xx])
by mx.gmail.com with ESMTP id 64si183971rna.2005.02.12.09.32.10;
Sat, 12 Feb 2005 09:32:13 -0800 (PST)
Received-SPF: pass (gmail.com: domain of
[EMAIL PROTECTED] designates xxx.xxx.xxx.xx as
permitted sender)
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="----_=_NextPart_001_01C51131.7920C4AC"
Subject: Estamos usando NAT?
X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0
Date: Sat, 12 Feb 2005 15:34:23 -0300
Message-ID: <[EMAIL PROTECTED]>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: Firewall sample
Thread-Index: AcURMXkeTW/WtPqSTT++F0t0El670Q==
From: "Wellington Uemura" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Voc� n�o v� nenhum sinal de informa��o do servidor interno no
cabe�alho, como o IP 10.1.1.19 ou mail.empresa.local
Exemplo do firewall para SMTP:
#!/bin/sh
IPT="/sbin/iptables"
IP_EXT="xxx.xxx.xxx.xx"
$IPT -t filter -F
$IPT -t nat -F
#Protecao contra IP Spoofing
for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 > $i
done
#CONFIG
$IPT -t filter -P INPUT DROP
$IPT -t filter -P OUTPUT DROP
$IPT -t filter -P FORWARD DROP
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "8000" > /proc/sys/net/ipv4/ip_conntrack_max
# Previne Denial of Service Attack
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time
echo 1 > /proc/sys/net/ipv4/tcp_window_scaling
echo 0 > /proc/sys/net/ipv4/tcp_sack
echo 1280 > /proc/sys/net/ipv4/tcp_max_syn_backlog
# Definindo status de conex�es
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A OUTPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
# Prote��o contea Stealth Scans e TCP State Flags
# Todos os bits s�o apagados
$IPT -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$IPT -A FORWARD -p tcp --tcp-flags ALL NONE -j DROP
# Definindo SYN e FIN
$IPT -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$IPT -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
# Definindo SYN e RST
$IPT -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
$IPT -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
# Definindo FIN e RST
$IPT -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
$IPT -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
# Definindo apenas FIN, para aqueles que n�o acompanham um ACK
$IPT -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
$IPT -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j DROP
# Definindo apenas PSH, para aqueles que n�o acompanham um ACK
$IPT -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP
$IPT -A FORWARD -p tcp --tcp-flags ACK,PSH PSH -j DROP
# Definindo apenas URG, para aqueles que n�o acompanham um ACK
$IPT -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
$IPT -A FORWARD -p tcp --tcp-flags ACK,URG URG -j DROP
# INPUT
$IPT -t filter -A INPUT -i eth1 -p tcp -s $IP_EXT -d 10.1.1.19 --sport
1024:65535 --dport 25 -m state --state NEW,RELATED -j ACCEPT
# OUTPUT
$IPT -t filter -A OUTPUT -o eth1 -p tcp -s $IP_EXT -d 10.1.1.19
--dport 1024:65535 --sport 25 -m state --state NEW,RELATED -j ACCEPT
$IPT -t filter -A OUTPUT -o eth0 -p tcp -s 10.1.1.19 -d $IP_EXT
--sport 1024:65535 --dport 25 -m state --state NEW,RELATED -j ACCEPT
# FORWARD
$IPT -A FORWARD -i eth1 -o eth0 -p tcp --sport 1024:65535 -s $IP_EXT
-d 10.1.1.19 --dport 25 -m state --state NEW -j ACCEPT
$IPT -A FORWARD -i eth0 -o eth1 -p tcp --sport 25 -d $IP_EXT -s
10.1.1.19 --dport 1024:65535 -m state --state NEW -j ACCEPT
# NAT
$IPT -t nat -A PREROUTING -p tcp -i eth1 --dport 25 -j DNAT --to 10.1.1.19
Log...
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state
RELATED,ESTABLISHED
DROP all -- anywhere anywhere state INVALID
DROP tcp -- anywhere anywhere tcp
flags:FIN,SYN,RST,PSH,ACK,URG/NONE
DROP tcp -- anywhere anywhere tcp
flags:FIN,SYN/FIN,SYN
DROP tcp -- anywhere anywhere tcp
flags:SYN,RST/SYN,RST
DROP tcp -- anywhere anywhere tcp
flags:FIN,RST/FIN,RST
DROP tcp -- anywhere anywhere tcp
flags:FIN,ACK/FIN
DROP tcp -- anywhere anywhere tcp
flags:PSH,ACK/PSH
DROP tcp -- anywhere anywhere tcp
flags:ACK,URG/URG
ACCEPT tcp -- xxx.xxx.xxx.xx 10.1.1.19 tcp
spts:1024:65535 dpt:smtp state NEW,RELATED
Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state
RELATED,ESTABLISHED
DROP all -- anywhere anywhere state INVALID
DROP tcp -- anywhere anywhere tcp
flags:FIN,SYN,RST,PSH,ACK,URG/NONE
DROP tcp -- anywhere anywhere tcp
flags:FIN,SYN/FIN,SYN
DROP tcp -- anywhere anywhere tcp
flags:SYN,RST/SYN,RST
DROP tcp -- anywhere anywhere tcp
flags:FIN,RST/FIN,RST
DROP tcp -- anywhere anywhere tcp
flags:FIN,ACK/FIN
DROP tcp -- anywhere anywhere tcp
flags:PSH,ACK/PSH
DROP tcp -- anywhere anywhere tcp
flags:ACK,URG/URG
ACCEPT tcp -- xxx.xxx.xxx.xx 10.1.1.19 tcp
spts:1024:65535 dpt:smtp state NEW
ACCEPT tcp -- 10.1.1.19 xxx.xxx.xxx.xx tcp
spt:smtp dpts:1024:65535 state NEW
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- xxx.xxx.xxx.xx 10.1.1.19 tcp
spt:smtp dpts:1024:65535 state NEW,RELATED
ACCEPT tcp -- 10.1.1.19 xxx.xxx.xxx.xx tcp
spts:1024:65535 dpt:smtp state NEW,RELATED
Se feito corretamente como mostra o exemplo os resultados ser�o os
mesmos que o meu sem ter nenhuma perda de funcionalidade.
No caso do nosso amigo que deseja intercalar um firewall na rede as
op��es de regras valem para a sua configura��o, s� n�o sendo
necess�rio a linha que tem a op��o de NAT uma vez que voc� vai
trabalhar com IP's v�lidos dos dois lados, mas o ideal mesmo seria
trabalhar com ip inv�lido atr�s do firewall.
Espero que tenha ajudado.
T+
> N�o acho uma boa colocar servidores com IPs privativos. D�-lhes os IPs
> p�blicos de uma vez por todas. O �nico problema ser� a divis�o da sua
> rede.
>
> Uma op��o � fazer sub-redes, mas h� desperd�cio de IPs dessa maneira.
>
> O que eu recomendo � mais ou menos assim:
>
> Internet ----| roteador |--------------| firewall |---------| rede interna
> 200.x.x.1 192.168.0.1 192.168.0.2 200.x.x.4 200.x.x.0/24
---------------------------------------------------------------------------
Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utiliza��o da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html