PROXY + FIREWALL + CONECTIVA 8.0 + SMTP + POP3
Galera!
Já tenho o proxy funcionando no Conectiva 8.0; queria implementar um firewall com iptables
para transformar o meu proxy em proxy transparente e poder habilitar o envio e recebimento
de e-mails (pop3 - smtp).
Tenho a seguinte estrutura de rede:
range: 172.16.64.0 - 172.16.64.255 (Vou distribuir a internet, smtp e ´pop3 somente para
esta rede)
netmask: 255.255.248.0
roteador cisco: integra a minha rede com a minha mantenedora - FrameRaley (estou integrado
a uma Wan)
ip do meu server proxy: 172.16.64.206
Como deve ser o meu arquivo firewall?
Fiz um assim:
/etc/iptables (Dei #chmod 775 iptables - para transformar o arquivo em executável);
Coloquei o arquivo iptables no /etc/rc.d/init.d - para ser executado durante a
inicialização do sistema.
Conteúdo do arquivo /etc/rc.d/init.d/iptables
#Início
#!/bin/bash
# Script de Firewall e Compartilhamento
# Apagando as regras antigas
iptables -F
#Setando o kernel para dinamico IP masquerado
if [ -e /proc/sys/net/ipv4/ip_dynaddr ]
then
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
fi
#
# Carrega os módulos
modprobe iptables
modprobe iptable_nat
# Compartilha a conexão
modprobe iptable_nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
#>Protege contra pacotes danificados
iptables -A INPUT -m unclean -j DROP
iptables -A FORWARD -m unclean -j DROP
# Porta de SSH # LOG --> /var/log/messages
iptables -A INPUT -p tcp --destination-port 22 -j LOG --log-prefix
iptables -A INPUT -p tcp --destination-port 22 -j ACCEPT
# Abre para a rede local
iptables -A INPUT -p tcp --syn -s 172.16.64.0/255.255.248.0 -j ACCEPT
#Transferindo da 80 para a 3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
#Fim do script
Alterei as seguintes linhas no meu squid.conf (Coloquei exatamente como está abaixo):
# HTTPD-ACCELERATOR OPTIONS
# ---------------------------------------
#
#
#
httpd_accel_port 80
httpd_accel_host virtual
E o Seguinte Grupo:
#
# TAG: httpd_accel_with_proxy
# --------------------------------------
#
#
httpd_accel_with_proxy on
#
#
# TAG: httpd_accel_uses_host_header on|off
#
#
httpd_accel_uses_host_header on
Observações:
- se eu seto na estação de trabalho o meu server proxy como gateway ...na rola navegação;
- se eu seto no brouser (se é proxy transparente pra que eu tenho que fazer isto?) a
navegação funciona normalmente;
- Como eu sei se o firewall (as regras que eu coloquei estão funcionando)?
- Se houver erros no script, onde estão localizados?
- como testar o firewall?
- como transformar o proxy em proxy transparente e habilitar o envio e recebimento de e-mail?
Agradeço todas as dicas.
Obrigado.
PROXY + FIREWALL + CONECTIVA 8.0 + SMTP + POP3
Cara, eu acho que vc ta esquecendo de informar a origem(rede) dos pacotes na sua regra do firewall, embora que vc tenha informado a saida mas não deu a origem, e isso pode ocasionar problemas, veja:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
faca o seguinte
iptables -t nat -A POSTROUTING -s 172.16.64.0/255.255.248.0 -j MASQUERADE
Esqueça isso
iptables -A INPUT -m unclean -j DROP
iptables -A FORWARD -m unclean -j DROP
Estes pacotes "unclean" ainda estão em fase de teste cheio de bugs, que ao inves de ajudar pode prejudicar o desempenho de sua lan. E tente fazer a seguinte instrução no iptables pra saber se sua regra esta funcionando
iptables -t nat -L
iptables -L
se sua regra não for listada, ela não tara funcionando. Outra coisa ao inves de vc criar um script como vc fez, digite todas as regras na linha de comando e depois save usando o "iptables-save > fire" e depois edit o rc.local e insira suas linhas principais tipo:
modprobe iptables
modprobe iptable_nat
iptables -F
iptables-restore < /home/fire
Outro ponto importante é politica do seu firewall veja se ela esta em DENY ou ACCEPT. quanto ao squid ta normal a configuração. Vc tem razão vc nãp precisa colocar configuração nenhuma de proxy no seu navegador, ja que que sua rede ta mascarada. Qual coisa posta ae.
PROXY + FIREWALL + CONECTIVA 8.0 + SMTP + POP3
Obrigado pelas dicas anônimo.....infelizmente só vou conseguir testar isso na segunda-feira (18/0<IMG SRC="images/forum/icons/icon_cool.gif">, pois estou com diversos problemas com um cliente no interior e me escalaram pra ir pra lá...mas tudo bem.....as demais dúvidas eu posto aqui....
Obrigado, é de gente como vc que a comunidade Linux precisa....
.!!!! <IMG SRC="images/forum/icons/icon_biggrin.gif"> <IMG SRC="images/forum/icons/icon_biggrin.gif"> <IMG SRC="images/forum/icons/icon_biggrin.gif">
PROXY + FIREWALL + CONECTIVA 8.0 + SMTP + POP3
Mudei algumas coisas no meu firewall!! (mas ainda não está funcionando)!!!
ficou assim:
no final do arquivo "/etc/rc.d/rc.local" inclui as seguintes linhas:
modprobe ip_conntrack
modprobe ipt_MASQUERADE
modprobe ipt_LOG
modprobe iptable_nat
modprobe iptable_nat_ftp
modprobe iptable_filter
iptable-restore < /etc/iptables
Conteúdo do arquivo iptables:
iptables -F
iptables -Z
iptables -t nat -F
iptables -t filter -P FORWARD DROP
iptables -t filter -A INPUT -i lo -s 0/0 -d 0/0 -j ACCEPT
iptables -t filter -A OUTPUT -o lo -s 0/0 -d 0/0 -j ACCEPT
iptables -t filter -A INPUT -i eth1 -m state --state NEW -j ACCEPT
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A FORWARD -d 0/0 -s 172.16.64.0/32 -o eth0 -j ACCEPT
iptables -t filter -A FORWARD -d 172.16.64.0./32 -s 0/0 -i eth0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t filter -A INPUT -s 172.16.64.0./32 -d 0/0 -j ACCEPT
iptables -t filter -A OUTPUT -s 172.16.64.0/32 -d 0/0 -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -s 192.168.0.0/24 -d 0/0 -j ACCEPT
iptables -t filter -A INPUT -p tcp -s 0/0 -d 0/0 --dport 22 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to 3128
Observações:
- quando digito "#iptables -L" as regras do arquivo iptables estão ativas.
- A Configuração das estações de trabalho estão assim: na placa de rede eu coloco o ip do meu
servidor como gateway; coloco os dois dns do meu provedor + 0 ip do server; no brouser falo para
ele procurar automaticamente; mas quando vou navegar não navega......falta configurar mais alguma
coisa? Tentei navegar só com ips, pois pensei que não estava resolvendo nomes, mas também não funcionou!!!
O que fazer? O que falta configurar? Está faltando alguma regra?
- se eu seto no brouser o ip do server e porta 3128 a navegação está normal; mas assim eu não quero!!!! pois o objetivo de implantação desse firewall, inicialmente é transformar o meu proxy em proxy transparente e depois que estiver funcionando assim, liberar o envio e recebimento de e-mails (smtp - pop3);
O que está faltando? Eu tenho que configurar um servidor de DNS?
Ajudem-me por favor....
Grato pelas respostas!!!
PROXY + FIREWALL + CONECTIVA 8.0 + SMTP + POP3
GALERA HELP-ME!!
ESTOU NA MESMA DA ANTERIOR!!! NÃO TÁ FUNCIONANDO.
obrigado.
PROXY + FIREWALL + CONECTIVA 8.0 + SMTP + POP3
Quando listo as minhas regras elas ficam assim, mas não está funcionando!!!
Chain INPUT (policy ACCEPT)
target prot opt source destination ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere state NEW
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all -- 172.16.64.0 anywhere LOG tcp -- anywhere anywhere tcp dpt:ssh LOG level warning
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all -- 172.16.64.0 anywhere
ACCEPT all -- anywhere 172.16.64.0
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- 172.16.64.0 anywhere
ACCEPT icmp -- 172.16.64.0 anywhere
HELP-ME!!!