Responder 
 
Avaliação do Tópico:
  • 0 Votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Squid
04/04/2007, 22:14
Resposta: #1
Squid
Galera, estou com um problema e gostaria muito da ajuda de vocês pra resolver esse problema. Instalei o Debian 31. R5, nele tenho um firewall e um proxy rodando, só que é ai que está o problema. O meu proxy é transparente, porem, acesso todos os sites, mas não consigo acessar o email do homail e nem o messenger. Mesmo com ele transparente, se eu for nas opções de Internet/configirações de lan e colocar o ip e a porta continuo acessando todos os sites, so que dessa maneira acesso o email do hotmail, mas não acesso o messenger. Galer ajuda ai que meu chefe já ta com a faca na minha garganta. Agradeço desde já
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
04/04/2007, 22:21
Resposta: #2
 
Bom, precisaríamos ver como estão definidas suas acl's e configurações de firewall, poste-as para vermos como estão ...
Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
07/04/2007, 22:27
Resposta: #3
 
Blz então, segue abaixo o meu firewall e meu squid.conf

firewall.conf

#!/bin/sh
#set -x

SYSCTL="/sbin/sysctl -w"

IPT="/sbin/iptables"
IPTS="/sbin/iptables-save"
IPTR="/sbin/iptables-restore"

# Local Interface Information
LOCAL_IFACE="eth1"
LOCAL_IP="172.16.0.1"
LOCAL_NET="172.16.0.0/255.255.255.0"
LOCAL_BCAST="172.16.0.255"

# Ext Interface
EXT_IFACE="ppp+"
EXT_ADDRESS=""

# Localhost Interface

LO_IFACE="lo"
LO_IP="127.0.0.1"

# Save and Restore arguments handled here
if [ "$1" = "save" ]
then
echo -n "Saving firewall to /etc/sysconfig/iptables ... "
$IPTS > /etc/sysconfig/iptables
echo "done"
exit 0
elif [ "$1" = "restore" ]
then
echo -n "Restoring firewall from /etc/sysconfig/iptables ... "
$IPTR < /etc/sysconfig/iptables
echo "done"
exit 0
fi


echo "Loading kernel modules ..."
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe ipt_owner
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_conntrack_irc



if [ "$SYSCTL" = "" ]
then
echo "1" > /proc/sys/net/ipv4/ip_forward
else
$SYSCTL net.ipv4.ip_forward="1"
fi

if [ "$SYSCTL" = "" ]
then
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
else
$SYSCTL net.ipv4.conf.all.rp_filter="1"
fi


# This option allows a subnet to be firewalled with a single IP address.
# It's used to build a DMZ. Since that's not a focus of this firewall
# script, it's not enabled by default, but is included for reference.
# See: http://www.sjdjweis.com/linux/proxyarp/
#if [ "$SYSCTL" = "" ]
#then
# echo "1" > /proc/sys/net/ipv4/conf/all/proxy_arp
#else
# $SYSCTL net.ipv4.conf.all.proxy_arp="1"
#fi


###############################################################################
#
# Flush Any Existing Rules or Chains
#

echo "Flushing Tables ..."

# Reset Default Policies
$IPT -P INPUT ACCEPT
$IPT -P FORWARD ACCEPT
$IPT -P OUTPUT ACCEPT
$IPT -t nat -P PREROUTING ACCEPT
$IPT -t nat -P POSTROUTING ACCEPT
$IPT -t nat -P OUTPUT ACCEPT
$IPT -t mangle -P PREROUTING ACCEPT
$IPT -t mangle -P OUTPUT ACCEPT

# Flush all rules
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F


# Erase all non-default chains
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X

if [ "$1" = "stop" ]
then
echo "Firewall completely flushed! Now running with no firewall."
exit 0
fi

$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
echo "Create and populate custom rule chains ..."

$IPT -N bad_packets
$IPT -N bad_tcp_packets
$IPT -N icmp_packets
$IPT -N udp_inbound
$IPT -N udp_outbound
$IPT -N tcp_inbound
$IPT -N tcp_outbound

$IPT -A bad_packets -p ALL -m state --state INVALID -j LOG \
--log-prefix "Invalid packet:"
$IPT -A bad_packets -p ALL -m state --state INVALID -j DROP
$IPT -A bad_packets -p tcp -j bad_tcp_packets
$IPT -A bad_packets -p ALL -j RETURN

$IPT -A bad_tcp_packets -p tcp -i $LOCAL_IFACE -j RETURN
$IPT -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG \
--log-prefix "New not syn:"
$IPT -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A bad_tcp_packets -p tcp -j RETURN


$IPT -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPT -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
$IPT -A icmp_packets -p ICMP -j RETURN

$IPT -A udp_inbound -p UDP -s 0/0 --destination-port 53 -j ACCEPT
$IPT -A udp_inbound -p UDP -s 0/0 --destination-port 5060 -j ACCEPT
$IPT -A udp_inbound -p UDP -s 0/0 --destination-port 137 -j DROP
$IPT -A udp_inbound -p UDP -s 0/0 --destination-port 138 -j DROP
$IPT -A udp_inbound -p UDP -j RETURN

$IPT -A udp_outbound -p UDP -s 0/0 -j ACCEPT

$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 20 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 21 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 25 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 53 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 80 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 110 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 443 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 1100 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 1863 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 3130 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 3389 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 5060 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 5222 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 8000 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 8021 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 10000 -j ACCEPT
$IPT -A tcp_inbound -p TCP -s 0/0 --destination-port 41472 -j ACCEPT
$IPT -A tcp_inbound -p TCP -j RETURN
$IPT -A tcp_outbound -p TCP -s 0/0 -j ACCEPT



echo "Process INPUT chain ..."
$IPT -A INPUT -p ALL -i $LO_IFACE -j ACCEPT
$IPT -A INPUT -p ALL -j bad_packets
$IPT -A INPUT -p ALL -i $LOCAL_IFACE -s $LOCAL_NET -j ACCEPT
$IPT -A INPUT -p ALL -i $LOCAL_IFACE -d $LOCAL_BCAST -j ACCEPT


$IPT -A INPUT -p ALL -i $EXT_IFACE -m state --state ESTABLISHED,RELATED \
-j ACCEPT
$IPT -A INPUT -p TCP -i $EXT_IFACE -j tcp_inbound
$IPT -A INPUT -p UDP -i $EXT_IFACE -j udp_inbound
$IPT -A INPUT -p ICMP -i $EXT_IFACE -j icmp_packets
$IPT -A INPUT -p ALL -d 255.255.255.255 -j DROP
$IPT -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-prefix "INPUT packet died: "

echo "Process FORWARD chain ..."
$IPT -A FORWARD -p tcp -i $LOCAL_IFACE -j tcp_outbound
$IPT -A FORWARD -p udp -i $LOCAL_IFACE -j udp_outbound
$IPT -A FORWARD -p ALL -i $LOCAL_IFACE -j ACCEPT
$IPT -A FORWARD -i $EXT_IFACE -p tcp -d $LOCAL_NET --dport 80 \
-j ACCEPT
$IPT -A FORWARD -i $EXT_IFACE -p tcp -d $LOCAL_NET --dport 3389 \
-j ACCEPT

$IPT -A FORWARD -i $EXT_IFACE -m state --state ESTABLISHED,RELATED \
-j ACCEPT
$IPT -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-prefix "FORWARD packet died: "



echo "Process OUTPUT chain ..."
$IPT -A OUTPUT -m state -p icmp --state INVALID -j DROP

$IPT -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPT -A OUTPUT -p ALL -o $LO_IFACE -j ACCEPT
$IPT -A OUTPUT -p ALL -s $LOCAL_IP -j ACCEPT
$IPT -A OUTPUT -p ALL -o $LOCAL_IFACE -j ACCEPT
$IPT -A OUTPUT -p ALL -o $EXT_IFACE -j ACCEPT
$IPT -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-prefix "OUTPUT packet died: "


echo "Load rules for nat table ..."

$IPT -t nat -A PREROUTING -p tcp -i $LOCAL_IFACE -s $LOCAL_NET \
-d 200.255.42.71 --dport 80 -j ACCEPT


$IPT -t nat -A PREROUTING -p tcp -i $LOCAL_IFACE -s $LOCAL_NET \
--dport 80 -j REDIRECT --to-ports 3128


$IPT -t nat -A POSTROUTING -o $EXT_IFACE -s $LOCAL_NET \
-j MASQUERADE


squid.conf

http_port 172.16.0.1:3128
icp_port 3130

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY


# cache_mem 8 MB
# cache_swap_low 90
# cache_swap_high 95
maximum_object_size 40 MB
# minimum_object_size 0 KB
# maximum_object_size_in_memory 8 KB
# ipcache_size 1024
# ipcache_low 90
# ipcache_high 95
# fqdncache_size 1024

cache_dir diskd /var/spool/squid 2048 64 64

cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log none

ftp_user [email protected]

dns_retransmit_interval 5 seconds
dns_timeout 1 minutes

# dns_defnames off
connect_timeout 2 minutes


# shutdown_lifetime 10 seconds


acl all src 0.0.0.0/0.0.0.0
acl interno src '/etc/squid/acl/maquinas.txt'
acl liberado url_regex -i '/etc/squid/acl/liberado.txt'
acl proibido url_regex -i '/etc/squid/acl/proibido.txt'
acl msn_ip src 172.16.0.0/24
acl libmsn dstdomain loginnet.passport.com
acl libmsnmessenger url_regex -i gateway.dll
acl lib_msn req_mime_type -i ^application/x-msn-messenger$
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 # unregistered 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 CONNECT method CONNECT

# CORRIGE O BUG DO SITE HOTMAIL.COM
acl hotmail_domains dstdomain .hotmail.msn.com
header_access Accept-Encoding deny hotmail_domains

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny proibido
http_access allow msn_ip
http_access allow libmsn
http_access allow libmsnmessenger
http_access allow lib_msn
http_access allow interno
http_access allow liberado
http_access deny all

icp_access allow interno

miss_access deny proibido
miss_access allow msn_ip
miss_access allow libmsn
miss_access allow libmsnmessenger
miss_access allow lib_msn
miss_access allow liberado
miss_access allow interno

ident_lookup_access allow interno
ident_lookup_access deny all

cache_mgr suporte

httpd_accel_host virtual
httpd_accel_port 80 443
# httpd_accel_single_host off
httpd_accel_with_proxy on
httpd_accel_uses_host_header on


dns_testnames localhost.localdomain

logfile_rotate 2

forwarded_for on

buffered_logs on

snmp_port 0

ie_refresh on
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
09/04/2007, 17:09
Resposta: #4
 
Legal, olha só, aqui fiz dessa forma com níveis de privilegios, faça um teste com este arquivo.

Código:
acl nivel01 proxy_auth "/etc/squid/nivel01"     #acesso restrito
acl nivel02 proxy_auth "/etc/squid/nivel02"     #acesso total menos musicas e streaming
acl nivel03 proxy_auth "/etc/squid/nivel03"     #acesso total


acl sites-bloqueados url_regex  "/etc/squid/sites-bloqueados"
acl sites-liberados  url_regex  "/etc/squid/sites-liberados"
#acl streaming rep_mime_type ^video/x-ms-asf
acl multimidia urlpath_regex -i "/etc/squid/multimidia"
acl download url_regex -i "/etc/squid/download"
acl conteudo url_regex -i "/etc/squid/conteudo"
# A lista malware é atualizada de 4 em 4 horas na base de dados
# através do gerenciador de download (wget) e agendador de tarefas (cron)
# no site www.malware.com.br
acl malware_block_list url_regex -i "/etc/squid/malware_block_list.txt"
##########################################################################
acl streaming_url url_regex -i "/etc/squid/streaming_url"
acl palavras url_regex -i "/etc/squid/palavras"
acl busca_url url_regex -i "/etc/squid/busca_url"
acl web_proxy url_regex -i "/etc/squid/web_proxy"


acl all src 0.0.0.0/0.0.0.0                                                                                                  
acl autenticacao proxy_auth REQUIRED

http_access deny malware_block_list

#acesso geral
http_access allow nivel03

http_access deny conteudo
http_access deny web_proxy
http_access deny streaming_url
http_access deny download
http_access allow sites-liberados
#http_reply_access deny streaming
http_access deny multimidia
http_access allow busca_url
http_access deny palavras
#acesso geral sem streaming
http_access allow nivel02

#acesso mais restrito possivel
http_access deny sites-bloqueados !sites-liberados

http_access allow nivel01

acl manager proto cache_object

http_access allow autenticacao
http_access deny all
#################################################################

acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563      # https, snews
acl SSL_ports port 873          # rsync
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  # unregistered 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 631         # cups
acl Safe_ports port 873         # rsync
acl Safe_ports port 901         # SWAT
acl purge method PURGE
acl CONNECT method CONNECT

Bastaria somente vc trocar algum grupo pelo que está precisando utilizar, ou criar uma acl permitindo o hotmail ...
Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
09/04/2007, 20:11
Resposta: #5
 
poxa Leandro, valeu mesmo pela ajuda, mas tentei e nao deu certo. Eu já tentei vários tipos de squid.conf, mas até gora nada, já tow pra ficar doido, sem contar na cobrança em cima de mim, o pior é nos logs não aparece nada, simplesmente não acessa e pronto. Valeu veio...
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
09/04/2007, 20:31
Resposta: #6
 
Bom, faz o seguinte, amanha te mando meu firewall, entre em contato comigo ...
Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
09/04/2007, 20:43
Resposta: #7
 
cara, muito obrigado mesmo, não sei nem como agradecer. é por isso que eu amo o Linux. valeu mesmo veio.
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
10/04/2007, 20:23
Resposta: #8
 
E então Leandro! você pediu pra eu entrar em contato contigo pra você mandar o seu firewall. Valeu veio!
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
10/04/2007, 20:50
Resposta: #9
 
Opa cara beleza... me manda seu email, pois tenho os arquivos direitinho lá no trampo, e se resover seu caso postamos ele aqui no forum ...

abraço
Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
10/04/2007, 20:54
Resposta: #10
 
bla pura cara,

[email protected]
[email protected]

mais uma vez muito obrigado pela atenção, paciência e principalmente pela ajuda. Precisando estou as ordens

valei vei
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
10/04/2007, 21:06
Resposta: #11
 
Beleza, pode contar no que for preciso, é que não lembro todas as regras de cabeça, mais sem falta amanhã de manhã te passo, qqr coisa estou no msn também o dia todo ...
Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
10/04/2007, 21:44
Resposta: #12
 
blz cara, sem problema, aguardo ate amanha ou ate mais. valeu mesmo.

grande abraço
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
11/04/2007, 19:18
Resposta: #13
 
e ai Leandro,blz pura? cara sem querer incomodar, mas já incomodando, vc pode mandar o firewall que vc falou? deculpa pelo incomodo e obrigado pelo interesse. valeu

abraço
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
17/04/2007, 00:08
Resposta: #14
 
Galera ainda estou com o mesmo problema, serei bastante grato a quem poder me ajudar de verdade.

Valeu galera

_________________________
Darlan Sales
Viva a liberdade. Viva o Linux
Visitar o website do usuário Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
17/04/2007, 08:29
Resposta: #15
 
Então, mais no firewall vc alterou corretamente a classe da rede como estávamos falando?
Encontrar todas as respostas deste usuário
Citar esta mensagem em uma resposta
Responder 


Ir ao Fórum:


Usuários visualizando este tópico: 1 Visitantes

Entre em Contato | Fórum Debian | Voltar ao Topo | Voltar ao Conteúdo | Modo Leve (Arquivo) | Feeds RSS