Pop3 + Banco do Brasil -programa. [RESOLVIDO]

1. Pop3 + Banco do Brasil -programa. [RESOLVIDO]

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 11/08/2009 - 01:34h

Olá comunidade

Estou com o seguinte problema e gostaria que alguém por favor me ajudasse:
Administro uma pequena rede que tem um modem ADSL roteado fornecendo um ip 192.168.254.x por dhcp pela eth0 para um servidor samba que agora tem tb um squid para controle de acessos.
minha rede sai pela eth1 sob a rede 192.168.1.0/24. Por ela forneço tb dhcp para as máquinas da rede interna.

O problema é que quando pus em funcionamento o squid, ele derrubou tb o pop3, smtp e o programinha do banco do brasil. Alguém poderia me ajudar a liberar estas coisas? Segue abaixo meu squid.conf

Já tentei vários tutoriais mas sem resultado! Se puderem por favor me ajudem.

squid.conf:

http_port 3128
visible_hostname Servidor
cache_mem 32 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid/ 2048 16 256
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistred ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#
acl bloqueados url_regex -i "/etc/squid/bloqueados.txt"
http_access deny bloqueados
#
acl msn dstdomain loginnet.passport.com
http_access deny msn
#
acl msnm dstdomain login.live.com
http_access deny msnm
#
acl messenger dstdomain rad.msn.com
http_access deny messenger
#
acl msnmessenger url_regex -i gateway.dll
http_access deny msnmessenger
#
acl webmsn dstdomain webmessenger.msn.com
http_access deny webmsn
#
acl redelocal src 192.168.1.0/24
http_access allow redelocal
http_access allow localhost
#
http_access deny all


  


2. MELHOR RESPOSTA

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 11/08/2009 - 14:14h

A linha tá certa, pois a "!" significa exceto, ou seja, bloqueie tudo exceto a acl Safe_ports, entendeu?

3. Re: Pop3 + Banco do Brasil -programa. [RESOLVIDO]

Leandro Nascimento de Souza
spikey

(usa Debian)

Enviado em 11/08/2009 - 09:42h

Quando tenta acessar algum destes, o que aparece em /var/log/squid/access.log? DENY?


4. Vou olhar e te digo.

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 11/08/2009 - 13:19h

Ainda não olhei mas assim que estiver no cpd vou dar uma olhada. Como disse é a primeira vez que tive este problema, mas tb é a primeira vez monto uma rede com esta topologia. Normalmente as máquinas acessam a ppp0 e não a eth0 pra sair pelo modem. Obrigado pela dica. logo retorno com o resultado do log.


5. Re: Pop3 + Banco do Brasil -programa. [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 11/08/2009 - 13:24h

Adicione essas linhas ae junto das acl's Safe_ports:

acl Safe_ports port 25 # smtp
acl Safe_ports port 110 # pop3
acl Safe_ports port 143 # imap

Com relação ao programinha do banco do brasil, é necessário saber qual é a porta q ele utiliza para liberar. Descobrindo isso, use o exemplo:

acl Safe_ports port <porta>

incluindo na ordem do seu squid.conf das acl's, ok?


6. valeu

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 11/08/2009 - 13:52h

Ok Renato, vou fazer isso assim que estiver no servidor. Mas me tira uma dúvida: No meu squid.con tem a seguinte linha - "http_access deny !Safe_ports"
Isso não bloqueia as Safe_ports não? Se sim, tenho que dar um allow nesta linha?



7. Ahhhh tá!

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 11/08/2009 - 14:41h

Ah! entendi agora! Poxa cara, valeu mesmo!!! já monto squid básico há um tempão e nunca entendi direito a "!". Agora você deu uma clareada legal na minha mente! Muito obrigado mesmo por me ensinar isso. Assim que eu estiver no servidor vou colocar em prática sua dica. Valeu mesmo! Volto com o resultado e posto aqui.


8. Não foi!

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 11/08/2009 - 18:21h

Olá pessoal

Acrescentei as linhas e nada! no access.log não aparece sequer uma linha dizendo que a conexão foi tentada pelo outlook express.


9. Re: Pop3 + Banco do Brasil -programa. [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 11/08/2009 - 23:27h

Então deve t algum firewall ae q tá bloqueando. Poste as regras do seu iptables aki pra gente dá uma olhada, ok?


10. Re: Pop3 + Banco do Brasil -programa. [RESOLVIDO]

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 12/08/2009 - 14:15h

Aí é que está o problema! não coloquei nenhum firewall pra rodar! Vou dar uma revisada nas configurações gerais e nos logs e depois posto aqui.
Valeu por tudo!


11. Re: Pop3 + Banco do Brasil -programa. [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 12/08/2009 - 15:10h

Tava pensando aki... tenho a impressão q vc colocou na ordem errada essas acl's q eu pedi, mas pra t certeza, vou colocar sua regra já com as novas acl's inseridas, OK? Confira se vc fez certo msm...

-----------------------------------------------------------------------------------------------------

http_port 3128
visible_hostname Servidor
cache_mem 32 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid/ 2048 16 256
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistred ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 901 # SWAT
acl Safe_ports port 25 # smtp
acl Safe_ports port 110 # pop3
acl Safe_ports port 143 # imap
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#
acl bloqueados url_regex -i "/etc/squid/bloqueados.txt"
http_access deny bloqueados
#
acl msn dstdomain loginnet.passport.com
http_access deny msn
#
acl msnm dstdomain login.live.com
http_access deny msnm
#
acl messenger dstdomain rad.msn.com
http_access deny messenger
#
acl msnmessenger url_regex -i gateway.dll
http_access deny msnmessenger
#
acl webmsn dstdomain webmessenger.msn.com
http_access deny webmsn
#
acl redelocal src 192.168.1.0/24
http_access allow redelocal
http_access allow localhost
#
http_access deny all

-------------------------------------------------------------------------------------------------------


12. UFFAA!!!

Cleber Rocha
cl2b2r

(usa Debian)

Enviado em 14/08/2009 - 15:04h

Olá pessoal

Obrigado por toda a ajuda prestada. Finalmente consegui resolver o problema. O que aconteceu foram duas coisas:
1º - Ao rotear o modem e receber por ele dhcp na eth0 o conteúdo do arquivo hosts foi apagado e a entrada de DNS foi substituída pelo ip de loopback. Resolvi isto instlando o bind9 como DNS cache e colocando o ip da eth1 ( que é dafault gateway da rede interna) no arquivo citado.
2 - apesar do tráfego de internet ter ficado mais rápido foi necessário, ainda assim, adicionar regras de firewall num script na inicialização para abrir a conexão nas portas que eu necessitava. a propósito! A porta do programa do Banco do Brasil é 446!
Segue abaixo o script para análise:

Firewall.sh

echo 0 > /proc/sys/net/ipv4/ip_forward

LAN_NIC1='eth0'
LAN_NIC2='eth1'
LAN_ADDR='192.168.x.x/24'
WAN_NIC='ppp0'

# Zera tudo
iptables -F
iptables -t nat -F
iptables -t mangle -F

# Politica inicial dos chains é apenas aceitar a saida, esta é que libera o NAT
iptables -A FORWARD -j ACCEPT -i $LAN_NIC1 -s $LAN_ADDR
iptables -A FORWARD -j ACCEPT -i $LAN_NIC2 -s $LAN_ADDR
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Serviços disponiveis
#
iptables -A INPUT -j ACCEPT -p tcp --dport 3050
#
iptables -A INPUT -j ACCEPT -p tcp --dport 1049
#
iptables -A INPUT -j ACCEPT -p tcp --dport 443
#
iptables -A INPUT -j ACCEPT -p tcp --dport 1999
#
iptables -A INPUT -j ACCEPT -p udp --dport 1999
#
iptables -A INPUT -j ACCEPT -p tcp --dport 4662
#
iptables -A INPUT -j ACCEPT -p udp --dport 4672
#
iptables -A INPUT -j ACCEPT -p tcp --dport 22
#
iptables -A INPUT -j ACCEPT -p tcp --dport 25
#
iptables -A INPUT -j ACCEPT -p tcp --dport 139
#
iptables -A INPUT -j ACCEPT -p tcp --dport 53
#
iptables -A INPUT -j ACCEPT -p tcp --dport 445
#
iptables -A INPUT -j ACCEPT -p tcp --dport 631
#
iptables -A INPUT -j ACCEPT -p tcp --dport 3128
#
iptables -A INPUT -j ACCEPT -p tcp --dport 8080
#
iptables -A INPUT -j ACCEPT -p tcp --dport 3306
#
iptables -A INPUT -j ACCEPT -p tcp --dport 10000
#
iptables -A INPUT -j ACCEPT -p tcp --dport 445
#
iptables -A INPUT -j ACCEPT -p tcp --dport 953
#
iptables -A INPUT -j ACCEPT -p tcp --dport 23
#
iptables -A INPUT -j ACCEPT -p tcp --dport 110
#
iptables -A INPUT -j ACCEPT -p tcp --dport 143
#
#
# Libera todas as portas para a rede interma
#
iptables -A INPUT -j ACCEPT -p tcp -i ! $LAN_NIC1
#
iptables -A INPUT -j ACCEPT -p udp -i ! $LAN_NIC1
#
iptables -A INPUT -j ACCEPT -p icmp -i ! $LAN_NIC1
#
# STATE RELATED for router
#
# Sem isso, é necessário colocar -P INPUT ACCEPT. Deve ser por causa do
#
# 3-way handshaking.
#
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#
# Redirecionamento de portas para Outlook e Skype
#
#iptables -t nat -A PREROUTING -s 192.168.x.x/24 -i eth1 -p TCP --dport 80 -j REDIRECT --to-port 3128
#
iptables -t nat -A PREROUTING -s 192.168.x.x/24 -i eth1 -p UDP --dport 80 -j REDIRECT --to-port 3128
#
iptables -t nat -A PREROUTING -s 192.168.x.x/24 -i eth0 -p TCP --dport 80 -j REDIRECT --to-port 3128
#
iptables -t nat -A PREROUTING -s 192.168.X.X/24 -i eth0 -p UDP --dport 80 -j REDIRECT --to-port 3128
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p tcp --dport 25 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p tcp --dport 110 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p tcp --dport 995 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p tcp --dport 465 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p udp --dport 53 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p udp --dport 443 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p tcp --dport 443 -o eth0
#
iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.X.X/24 -p tcp --dport 446 -o eth0
#
# Habilita o forward
#
echo 1 > /proc/sys/net/ipv4/ip_forward
clear
echo "REGRAS DO FIREWALL HABILITADAS!!!"
sleep 5
iptables -L
sleep 5
clear
iptables -t nat -L
exit 0
#---------------x--------------#

Espero que isto possa ajudar a mais alguém! Obrigado também a todos que me ajudaram.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts