Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

1. Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

Eduardo Henrique
dupotter

(usa )

Enviado em 10/09/2007 - 11:40h

Galera, to com um problema que nem eu sei explicar ao certo como é.
Eu configurei um servidor para ser meu firewall/proxy da internet, está rodando CentOS 5, iptables 1.3.5-1 e squid 2.6.
Configurei o firewall de acordo com umas dicas de um colega, essa máquina roda squid com autenticação, um webserver e um redirecionamento para um server windows que eu tenho aqui na empresa.
Uma das regras do firewall é para permitir o tráfego de emails apenas do meu server de email.
Agora vamos aos problemas:

Meus clientes de email não conseguem conectar no servidor de email que eu possuo (mail.haiala.com.br), porém se eu configurar para tentar acessar o 208.101.34.16 (o ip do servidor), os usuários baixam e recebem emails normalmente. Ou seja, o firewall tá bloqueando o acesso por nome, mas não era pra bloquear.

Outra coisa, se eu digito no navegador http://proxyserver, era pra abrir a página do Apache, pois proxyserver é o nome da minha máquina, mas não vai nem a pau, mas se eu digitar http://198.164.1.100 que é o ip, vai tranquilo, mesma coisa com o compartilhamento do samba, só abre pelo ip. Resumindo, o firewall esta bloqueando nomes, acredito que por isso não consigo utilizar o mail.haiala.com.br nos meus clientes e penso que a navegação só esta fucionando devido ao squid.

Abaixo segue meu firewall, o que esta comentado eu comentei agora, mas não fez diferença:

################################################################################
#!/bin/bash #
# Script de firewall para a Haiala Metalurgica #
# By gilmar@agrovale.com.br #
# Editado por eduardo@haiala.com.br #
# Logica das regras: 1 Regras de NAT, 2 Regras de Input, 3 Regras de Forward #
################################################################################

# eth0 rede interna
# eth1 rede externa

# -- Definindo uma variavel para facilitar a escrita do script
IPTABLES=/sbin/iptables


#-- Carrega Modulos do Iptables
modprobe ip_tables
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_nat_ftp
modprobe ipt_REJECT
modprobe ipt_MASQUERADE


# -- Definindo quais maquinas poderao acessar o firewall
CONFIAVEL1=198.164.1.10


# -- Definindo Rede
REDEMASQ=198.164.1.0/24
REDEEXTERNA=200.103.98.78
REDEPROXY=198.164.1.100
REDEMAQ=00:15:17:25:C1:68
IF_INTERNA=eth0
IF_EXTERNA=eth1
MAIL=208.101.34.16
PORT=20,25,110,21,995,465,22,2631,5017,8017,80,3389,3456,40920,24001
PORT2=88,137,138,139 #,5573


# -- Limpando as regras antigas --
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -X
$IPTABLES -X -t nat


# -- Definindo uma politica restritiva
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP


# -- Habilitando o repasse entre as placas de rede --
echo "1" > /proc/sys/net/ipv4/ip_forward


# Permitir acesso a Conectividade Social e CMT da caixa
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -s $REDEMASQ -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p all -s 200.201.174.207 -j ACCEPT
$IPTABLES -t nat -A PREROUTING -i $REDEPROXY -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPTABLES -t nat -A PREROUTING -p tcp -d 200.201.173.68 --dport 80 -j DNAT --to 200.201.173.68:80
$IPTABLES -I FORWARD -p tcp -s 0.0.0.0/0 -d 200.201.173.68/32 --dport 80 -j ACCEPT
$IPTABLES -t nat -A PREROUTING -p tcp -d 200.201.166.200 --dport 80 -j DNAT --to 200.201.166.200:80
$IPTABLES -I FORWARD -p tcp -s 0.0.0.0/0 -d 200.201.166.200/32 --dport 80 -j ACCEPT
$IPTABLES -t nat -A PREROUTING -p tcp -d 200.201.174.207 --dport 80 -j DNAT --to 200.201.174.207:80
$IPTABLES -t nat -A PREROUTING -i $REDEPROXY -p tcp -d ! 200.201.174.207 --dport 80 -j REDIRECT --to-port 3128


#Ativando o proxy
echo "Ativando proxy"
$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 #Dir. port p/ squid
$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 3128 #Dir. port p/ squid
$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 563 -j REDIRECT --to-port 3128 #Dir. port p/ squid


# VPN - Liberando acesso
echo "Ativando rede virtual privada - VPN"
iptables -A INPUT -j ACCEPT -p tcp --dport 1723
iptables -A INPUT -i eth0 -s 0/0 -d 0/0 -p 43 -j ACCEPT
iptables -A INPUT -i eth1 -s 0/0 -d 0/0 -p 43 -j ACCEPT
iptables --append INPUT --protocol 47 --jump ACCEPT
iptables --append INPUT --protocol tcp --match tcp --destination-port 1723 --jump ACCEPT
iptables -A FORWARD -i ppp+ -j ACCEPT
iptables -A FORWARD -o ppp+ -j ACCEPT


# Redirecionamento de portas para intranet
echo "Ativando o redirecionamento para maquina na intranet"
$IPTABLES -t nat -A PREROUTING -i eth1 -d $REDEEXTERNA -p tcp --dport 8181 -j DNAT --to 198.164.1.3 #Ser. Rwindows 2003
$IPTABLES -t nat -A PREROUTING -i eth1 -d $REDEEXTERNA -p tcp --dport 80 -j DNAT --to 198.164.1.100 #Ser. Rwindows 2003
$IPTABLES -t nat -A PREROUTING -i eth1 -d $REDEEXTERNA -p tcp --dport 3389 -j DNAT --to 198.164.1.3

# Permitir pacotes com estado "estabelecido/relacionado"
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Ativar o mascaramento (nat).
$IPTABLES -t nat -F POSTROUTING
#$IPTABLES -t nat -A POSTROUTING -o eth1 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o eth1 -s $REDEMASQ -j SNAT --to $REDEEXTERNA ### Regra Gilmar beicola

#-- Controle de Acesso usando o IP x MAC --
i$IPTABLES -t filter -A FORWARD -d 0/0 -s $REDEPROXY -m mac --mac-source $REDEMAQ -j ACCEPT
$IPTABLES -t filter -A FORWARD -d $REDEPROXY -s 0/0 -j ACCEPT
$IPTABLES -t filter -A INPUT -s $REDEPROXY -d 0/0 -m mac --mac-source $REDEMAQ -j ACCEPT
$IPTABLES -t nat -A POSTROUTING -s $REDEPROXY -o eth0 -j MASQUERADE


# -- PERMITE A SAIDA NA WWW, MAIL, FTP, SSH
$IPTABLES -t nat -A PREROUTING -p tcp -i $IF_EXTERNA -d $REDEEXTERNA -m multiport --dport $PORT -j DNAT --to $MAIL
$IPTABLES -t nat -A POSTROUTING -p tcp -o $IF_INTERNA -m multiport --dport $PORT -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -p tcp -o $IF_INTERNA -m multiport --dport $PORT2 -j MASQUERADE


# -- SAINDO DA REDE WWW, MAIL FTP, DNS, SSH
$IPTABLES -t nat -A POSTROUTING -p tcp -o $IF_EXTERNA -m multiport --dport $PORT -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -p tcp -o $IF_EXTERNA -m multiport --dport $PORT2 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -p udp -o $IF_EXTERNA --dport 53 -j MASQUERADE


echo "Liberar porta para apache"
$IPTABLES -A INPUT -p tcp --destination-port 80 -j ACCEPT


echo "Permitindo o retorno dos pacotes do redirecionamento"
$IPTABLES -A FORWARD -p tcp --dport 8181 -j ACCEPT # Serv. Rwindows 2003
$IPTABLES -A FORWARD -p tcp --dport 3389 -j ACCEPT # Serv. Rwindows 2003 TS

# Permitir qualquer solicitacao de Internet que parta da rede interna 198.164.1.0/24
$IPTABLES -A FORWARD -i eth0 -s $REDEMASQ -j ACCEPT

echo "Ativando acesso ao firewall"
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


#echo "Gerando log da pora 3128"
$IPTABLES -A FORWARD -p tcp --dport 3128 -j LOG --log-prefix "Auditoria proxy via forward:"


echo "Ativando acesso administrativo ao ssh"
# Criando um perfil para acesso administrativo via secure shell (ssh)
#$IPTABLES -N ADMIN
#$IPTABLES -A ADMIN -i eth0 -p tcp --dport 2229 --syn -j LOG --log-level info --log-prefix "[Acesso Admin]:"
#$IPTABLES -A ADMIN -i eth0 -p tcp --dport 2229 --syn -j ACCEPT


# Aplicando a permissao de acesso as maquinas acessarem o firewall
#$IPTABLES -A INPUT -i eth0 -s $CONFIAVEL1 -j ADMIN
#$IPTABLES -A INPUT -i eth0 -p tcp --dport 2229 -j REJECT

echo "Ativando entrada de requisicoes ao proxy"
$IPTABLES -A INPUT -i eth0 -p tcp --dport 3128 --syn -j ACCEPT

echo "Libera acesso a rede interna"
$IPTABLES -A INPUT -p tcp --syn -s 198.164.1.0/255.255.255.0 -j ACCEPT

# Libera ping ao firewall
$IPTABLES -A INPUT -i eth0 -p icmp -d 0/0 -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p icmp -d 0/0 -j ACCEPT

#-- Bloqueia qualquer pacote (INPUT) que nao liberado por regras anteriores,
#-- impedindo que novas regras sejam adicionadas por append
$IPTABLES -P FORWARD DROP
$IPTABLES -P INPUT DROP

# Habilitando o trafego Ip, entre as Interfaces de rede
echo "1" > /proc/sys/net/ipv4/ip_forward







  


2. MELHOR RESPOSTA

Julian Castaman
maninhx

(usa Slackware)

Enviado em 19/06/2009 - 15:49h

amigos. resolvi abrindo as portas 1622 e 1621

iptables -A INPUT -p udp --dport 1621 -j ACCEPT
iptables -A INPUT -p tcp --dport 1621 -j ACCEPT
iptables -A INPUT -p udp --dport 1622 -j ACCEPT
iptables -A INPUT -p tcp --dport 1622 -j ACCEPT

usei o iptraf e vi que quando pingava pra internet usava essa porta, aí liberei ela e funcionou.

3. Re: Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

Eduardo Henrique
dupotter

(usa )

Enviado em 11/09/2007 - 08:27h

algúem?


4. Re: Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

Eduardo Henrique
dupotter

(usa )

Enviado em 12/09/2007 - 15:25h

up.


5. Porta DNS

Juno Kim
juno

(usa Linux Mint)

Enviado em 14/09/2007 - 11:56h

Cara,
Libera a porta 53 do teu firewall .

Falou =)


6. Re: Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

Leandro Totino Pereira
tatototino

(usa Slackware)

Enviado em 14/09/2007 - 12:43h

você registrou seu dominio no registro.br?

O firewall não é porque está aceitando tudo

# -- Definindo uma politica restritiva
IPTABLES -P INPUT ACCEPT

ainda você coloca "politica restritiva", srss


7. Re: Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

Julian Castaman
maninhx

(usa Slackware)

Enviado em 19/06/2009 - 11:34h

estou com um problema semelhante.
meu firewall ta bloqueando o seguinte.

se eu pingar google.com.br, terra.com.br ou qualquer outro site não funcionar.

mas se ping 200.180.112.1 ou 200.176.2.10 ele pinga certinho.
por nomes ele nao pinga, e preciso pingar senão meu squid não funciona.




8. Resposta

Leonardo Berbert Gomes
leoberbert

(usa Debian)

Enviado em 19/06/2009 - 11:50h

Posta aqui a configuração do teu squid... To achando que pode ser ele... Outra coisa...
Tem o Bind instalado ai...?

Aguardando.

[]`s leoberbert


9. nmap

Leonardo Berbert Gomes
leoberbert

(usa Debian)

Enviado em 19/06/2009 - 12:09h

Roda um nmap localhost ai e cola aqui pra eu ver!

[]`s leoberbert


10. Re: Firewall bloqueia resolução de nomes interno/externo [RESOLVIDO]

Julian Castaman
maninhx

(usa Slackware)

Enviado em 19/06/2009 - 15:29h

mesmo depois de colocar as regras para porta 53 eu digitei

#nmap -p 53 localhost

deu porta fechada.
53/tcp closed domain






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts