Amigo eu vo tentar te ajudar, li algumas coisas deste post e gostaria de fazer algumas perguntas. Qual distribuição que vc usa? O teu squid é gateway da rede? Vc sabe dirzer está usando proxy transparente? Vc criou o cache do squid?
Amigo eu vo tentar te ajudar, li algumas coisas deste post e gostaria de fazer algumas perguntas. Qual distribuição que vc usa? O teu squid é gateway da rede? Vc sabe dirzer está usando proxy transparente? Vc criou o cache do squid?
A distribuição é Fedora
Essa segunda pergunta eu sou iniciante e sinceramente eu não sei te responder..
o proxy transparente ta criado
tem essas linhas no squid.conf:
#proxy transparente
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
e essa no script d firewall:
/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
o cache ta criado veja os logs abaixo:
2007/01/19 10:00:55| Starting Squid Cache version 2.5.STABLE3 for i386-redhat-linux-gnu...
2007/01/19 10:00:55| Process ID 5679
2007/01/19 10:00:55| With 1024 file descriptors available
2007/01/19 10:00:55| DNS Socket created at 0.0.0.0, port 33132, FD 4
2007/01/19 10:00:55| Adding nameserver 200.255.125.211 from /etc/resolv.conf
2007/01/19 10:00:55| Adding nameserver 172.19.123.2 from /etc/resolv.conf
2007/01/19 10:00:55| User-Agent logging is disabled.
2007/01/19 10:00:55| Referer logging is disabled.
2007/01/19 10:00:55| Unlinkd pipe opened on FD 9
2007/01/19 10:00:55| Swap maxSize 2048000 KB, estimated 157538 objects
2007/01/19 10:00:55| Target number of buckets: 7876
2007/01/19 10:00:55| Using 8192 Store buckets
2007/01/19 10:00:55| Max Mem size: 65536 KB
2007/01/19 10:00:55| Max Swap size: 2048000 KB
2007/01/19 10:00:55| Rebuilding storage in /var/spool/squid (CLEAN)
2007/01/19 10:00:55| Using Least Load store dir selection
2007/01/19 10:00:55| Set Current Directory to /var/spool/squid
2007/01/19 10:00:55| Loaded Icons.
2007/01/19 10:00:55| Accepting HTTP connections at 0.0.0.0, port 3128, FD 10.
2007/01/19 10:00:55| Accepting ICP messages at 0.0.0.0, port 3130, FD 11.
2007/01/19 10:00:55| WCCP Disabled.
2007/01/19 10:00:55| Ready to serve requests.
2007/01/19 10:00:55| Done scanning /var/spool/squid swaplog (0 entries)
2007/01/19 10:00:55| Finished rebuilding storage from disk.
2007/01/19 10:00:55| 0 Entries scanned
2007/01/19 10:00:55| 0 Invalid entries.
2007/01/19 10:00:55| 0 With invalid flags.
2007/01/19 10:00:55| 0 Objects loaded.
2007/01/19 10:00:55| 0 Objects expired.
2007/01/19 10:00:55| 0 Objects cancelled.
2007/01/19 10:00:55| 0 Duplicate URLs purged.
2007/01/19 10:00:55| 0 Swapfile clashes avoided.
2007/01/19 10:00:55| Took 0.3 seconds ( 0.0 objects/sec).
2007/01/19 10:00:55| Beginning Validation Procedure
2007/01/19 10:00:55| Completed Validation Procedure
2007/01/19 10:00:55| Validated 0 Entries
2007/01/19 10:00:55| store_swap_size = 0k
2007/01/19 10:00:56| storeLateRelease: released 0 objects
Beleza, então faz o seguinte, pra fazer um teste, comenta aquelas linhas do proxy transparente, retira nas suas regras iptables o redirecionamento para 3128, executa o comando squid-z que vai criar o cache do squid e depois e depois tu restarta o serviço do squid, instalar o pacote sysvconfig com esse pacote vc podes stopar, restartar, startar serviços é bem simples aí vc usa o comando service squid restart.
Verifica isso e tenta lá
não bloqueou não.. =[ sera q algo q tem no meu script d firewall pode estar atrapalhando?
#!/bin/sh
#/sbin/rmmod ipchains
# Inicializacao do IPTABLES
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
#/sbin/modprobe ip_gre.o
/sbin/modprobe ipip
/sbin/iptables -F
/sbin/iptables -t nat -F;
/sbin/iptables -t mangle -F
#
#Sites proibidos
#
/sbin/iptables -A FORWARD -s 172.19.123.5/32 -d orkut - Login -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.3/32 -d orkut - Login -j ACCEPT
/sbin/iptables -A FORWARD -d orkut - Login -j DROP
/sbin/iptables -A FORWARD -d orkut.com -j DROP
/sbin/iptables -A FORWARD -d www.meebo.com -j DROP
/sbin/iptables -A FORWARD -d YouTube - Broadcast Yourself. -j DROP
/sbin/iptables -A FORWARD -d .|.Dedada Digital.|. -j DROP
/sbin/iptables -A FORWARD -d Search Results for "clubedaputaria.com" -j DROP
/sbin/iptables -A FORWARD -d .::PLAYBLOG::.Seu Clube Diário de Putaria, Karina Bacchi,Danielle Sobreira, Flávia Alessandra na Playboy, Vivi Fernandez, Noiva Infiel, Márcia Imperator, clube dos desocupados, dedada digital, diario da putaria, daniela Cicarelli fudendo, clube da pu -j DROP
/sbin/iptables -A FORWARD -d Diário da Putaria - www.diariodaputaria.com - Filme da Gretchen - La Conga Sex! -j DROP
/sbin/iptables -A FORWARD -d Web Messenger ILoveIM.com -j DROP
/sbin/iptables -A FORWARD -d mafiadospingaiadas.com -j DROP
/sbin/iptables -A FORWARD -d : : : PLAYBOY.COM.BR : : : -j DROP
/sbin/iptables -A FORWARD -d Online messaging with web and mobile e-messenger -j DROP
/sbin/iptables -A FORWARD -d Web and Mobile messenger everywhere - eBuddy former e-messenger -j DROP
/sbin/iptables -A FORWARD -d MSN2Go - Web-based MSN client, Web-based MSN Messenger client, MSN Java applet, Java MSN client -j DROP
/sbin/iptables -A FORWARD -d MSN2Go.com.br - Seu MSN em qualquer lugar! -j DROP
/sbin/iptables -A FORWARD -d Web Messenger - MessengerFX.com -j DROP
/sbin/iptables -A FORWARD -d PowerScrap :: Quem manda é você! -j DROP
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
#/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
#yahoo messenger
/sbin/iptables -A FORWARD -p tcp -d scsa.msg.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -p tcp --dport 5000:5100 -j REJECT
/sbin/iptables -A FORWARD -p tcp -d scsa.msg.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d cs.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d scsa.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d messenger.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d http.msg.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d webmessenger.msn.com -j REJECT
#/sbin/iptables -A FORWARD -d Yahoo! Brasil -j REJECT
/sbin/iptables -A FORWARD -d iloveim.com -j REJECT
#/sbin/iptables -A FORWARD -d Yahoo! -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d msg.edit.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d http.pager.yahoo.com -j REJECT
/sbin/iptables -A FORWARD -d onlinemessenger.nl -j REJECT
#Usina do som
#
/sbin/iptables -A INPUT -d 200.162.192.163 -j DROP
/sbin/iptables -A FORWARD -d Sign In -j DROP
# MSN Messenger
/sbin/iptables -A FORWARD -s 172.19.123.3/32 -p tcp --dport 1863 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.3/32 -d loginnet.passport.com -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.5/32 -p tcp --dport 1863 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.5/32 -d loginnet.passport.com -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.39/32 -p tcp --dport 1863 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.39/32 -d loginnet.passport.com -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.96/32 -p tcp --dport 1863 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.96/32 -d loginnet.passport.com -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -p tcp --dport 1863 -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d loginnet.passport.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d gateway.messenger.hotmail.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d messenger.hotmail.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d login.passport.net -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/24 -d svcs.microsoft.com -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.0/26 -d 207.46.104.20/24 -j REJECT
/sbin/iptables -A FORWARD -s 172.19.123.101/32 -d 207.46.104.20/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.102/32 -d 207.46.104.20/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.103/32 -d 207.46.104.20/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.104/32 -d 207.46.104.20/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 172.19.123.105/32 -d 207.46.104.20/24 -j ACCEPT
#
# Bloqueio de portas - KAZAA
# /sbin/iptables -A OUTPUT -p TCP --dport 1000:5000 -j REJECT
# /sbin/iptables -A FORWARD -d 213.248.112.0/24 -j REJECT
# /sbin/iptables -A FORWARD -d 206.142.53.0/24 -j REJECT
#Redirecionamento do Servidor Publico#
/sbin/iptables -t nat -A PREROUTING -p tcp -d 200.174.28.194 --dport 80 -j DNAT --to 172.19.123.2:80
/sbin/iptables -t nat -A PREROUTING -p tcp -d 200.174.28.194 --dport 5800 -j DNAT --to 172.19.123.11
/sbin/iptables -t nat -A PREROUTING -p tcp -d 200.174.28.194 --dport 5900 -j DNAT --to 172.19.123.11
/sbin/iptables -t nat -A POSTROUTING -s 172.19.123.0/24 -p tcp -d 172.19.123.1 --dport 80 -j SNAT --to 172.19.123.2
/sbin/iptables -t nat -A PREROUTING -p tcp -d 200.174.28.194 --dport 20 -j DNAT --to 172.19.123.2
/sbin/iptables -t nat -A PREROUTING -p tcp -d 200.174.28.194 --dport 21 -j DNAT --to 172.19.123.2
#
#NAT
#
/sbin/iptables -t nat -A POSTROUTING -s 172.19.123.0/24 -o eth0 -j SNAT --to 200.174.28.194
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#
# Habilita packet forwarding
#
echo 1 > /proc/sys/net/ipv4/ip_forward
tai.. antes eu bloqueava tudo por iptables.. agora q to mexendo no squid..
Faça assim.
Crie um firewall para ficar aberto.
Remova o squid e instale novamente.
Crie acls básicas e depois vai adaptando as suas necessidades.
Criar um firewall pra ficar aberto? pra q? n entendi.. e eu nem sei fazer isso.. sou iniciante.. =[ vc pode me ajudar a fazer? se não for pedir muito..
Bom , Primeira coisa.
Não crie regras de firewall para bloquear sites. Assim seu firewall vai ficar grande e quanto menor seu firewall mais ele se tornará melhor.
Para todo firewall você terá que determinar uma politica.
Então quando um pacote estiver entrando no seu firewall ele vai ser tratado, se alguma regra permitir o acesso do pacote ele vai ser aceito e tratado dentro do firewall, caso não coincida com nenhuma regra que você criou ele será da POLITICA, ou seja, ela decidirá o que fazer.
Para testes você está tentando configurar o squid e tem que ter um firewall nem que simples para realizar isso.
Portanto, deixe as suas politicas abertas
Pegue esse firewall aqui:
#!/bin/bash
########################################
echo # Realizando um Flush das Regras .
/usr/sbin/iptables -t filter -F
/usr/sbin/iptables -t filter -X
/usr/sbin/iptables -t nat -F
/usr/sbin/iptables -t nat -X
/usr/sbin/iptables -t mangle -F
/usr/sbin/iptables -t mangle -X
########################################
### Limpando Regras
echo "# Limpando as Regras: "
$IPTABLES -Z
$IPTABLES -X
$IPTABLES -F
$IPTABLES -t filter -F
$IPTABLES -t filter -X
$IPTABLES -t filter -Z
$IPTABLES -F INPUT
$IPTABLES -F OUTPUT
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
$IPTABLES -t nat -X
$IPTABLES -t nat -Z
$IPTABLES -t mangle -F
$IPTABLES -t mangle -X
$IPTABLES -t mangle -Z
### Definindo Politica
echo "# Definindo Politica: "
$IPTABLES -t filter -P INPUT ACCEPT
$IPTABLES -t filter -P FORWARD ACCEPT
$IPTABLES -t filter -P OUTPUT ACCEPT
# O CERTO É DEIXAR A POLITICA FORWARD COMO DROP E SOMENTE O OUTPUT # ACCEPT
$IPTABLES -t nat -P PREROUTING ACCEPT
$IPTABLES -t nat -P POSTROUTING ACCEPT
$IPTABLES -t nat -P OUTPUT ACCEPT
$IPTABLES -t mangle -P PREROUTING ACCEPT
$IPTABLES -t mangle -P INPUT ACCEPT
$IPTABLES -t mangle -P OUTPUT ACCEPT
$IPTABLES -t mangle -P FORWARD ACCEPT
### Carregando Módulos
echo "# Iniciando Firewall: "
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_MASQUERADE
echo "# Permitindo Regras ao FwL: "
#Liberando pacotes que realmente devem estabelecer conexão.
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
echo "# Permitindo Regras ao FwL: "
#Liberando pacotes que realmente devem estabelecer conexão.
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
/usr/sbin/iptables -A INPUT -i lo -j ACCEPT
/usr/sbin/iptables -A INPUT -s 192.168.1.0/255.255.255.0 -j ACCEPT
/usr/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/usr/sbin/iptables -A INPUT -p udp --dport 53 -j ACCEPT
/usr/sbin/iptables -A INPUT -p tcp --syn -m limit --limit 5/s -j ACCEPT
# Redirecionando as conexões da porta 80 para a do proxy 3128
iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/255.255.255.0 --dport 80 -j REDIRECT --to-ports 3128
#compartilhando a web na rede interna
iptables -t nat -A POSTROUTING -s 192.168.1.0/255.255.255.0 -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
Você já observou esse trecho comentado ...
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
#/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
se sim, (foi a nível de teste)
faça o seguinte.
crie um script com a regra simples de mascaramento e proxy transparente.
para ver se não tem algum problema em suas regras ...
-------------------------------------------- Script de Nat ----------------------------------------
#!/bin/sh
# Carregando os modulos
/sbin/modprobe ip_tables
/sbin/modprobe ipt_REDIRECT
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe ipt_MARK
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_TOS
/sbin/modprobe ipt_LOG
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_conntrack_irc
/sbin/modprobe ip_nat_irc
/sbin/modprobe ipt_mac
/sbin/modprobe ipt_state
/sbin/modprobe ipt_mark
# limpando as regras
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -F -t nat
/sbin/iptables -X -t nat
/sbin/iptables -F -t mangle
/sbin/iptables -X -t mangle
echo "Desabilita Encaminhamento de Pacotes do Kernel - OK"
echo 0 > /proc/sys/net/ipv4/ip_forward
echo "Iniciando Nat - OK"
/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
/sbin/iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
echo "Habilitando Encaminhamento de Pacotes do Kernel - OK"
echo 1 > /proc/sys/net/ipv4/ip_forward
#----------------------------------------------------- FIM -------------------------------------------------------
Falow ...
qualque resultado posta ai ...
Spyderlinux pegou direitinho man =) valeu msm kara!! e rootmaste brigado tb!! mais so uma ultima pergunta Spyder.. eu deixo meu firewall assim msm? ou eu dou um drop na forward? eh seguro deixar assim? valeuz.. =)
Cara, eu costumo adotar a politica sempre
DROP, ja tentei deixar até mesmo o OUTPUT DROP mas acaba dando muita dor de cabeça.
Então eu costumo deixar,
INPUT + FORWARD = DROP
OUTPUT = ACCEPT
Agora tem que adaptar as suas regras de acordo com as suas necessidades e dar uma focada mais no squid e iptables.
Falow, qualquer coisa estamos aí.
Resolvido =)
E seu firewall como está configurado ?
Veja se ele está fazendo um redirect para porta do seu squid, geralmente 3128.
# Squid Machine configuration.
# The following iptables rule to be made so as to redirect all the http traffic to squid # port 3128.
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
Fonte: Squid Tutorial
O msn utiliza a porta 80 também para conectar o msn e tal.
No squid, você terá que criar uma acl da seguinte forma.
acl LAN src 192.168.0.0/255.255.255.0 -> Essa acl informa qual a sua rede
acl MSN dstdomain loginnet.passport.com -> site de autenticação login do msn
acl MSNDLL url_regex -i gateway.dll -> Não sei do que é, só sei que filtrando com o tcpdump a conexão do msn, aparece muitas informações de gateway.dll
acl MSN2 req_mime_type -i ^application/x-msn-messenger$ -> Tb com tcpdump verifiquei isso
acl BLOCKTALK url_regex -i mail.google.com/mail/channel/bind -> Adquirida no fórum. Um cara explicou que essa url é do chat do gmail.
Depois você precisará ajustar os http_access da forma que você precise ou julgue importante aí.
http_access deny MSN MSNDLL MSN2 BLOCKTALK
Falow
Kara eu ja tinha pesquisado e encontrado essas acls mais só elas não bloquearam aki não.. por isso q eu fui tentar no iptables.. so q no iptables n funciona mais agora.. =[ eu vi pesquisando q era pra botar as regras do iptables antes d chamar o nat.. so q ai o scrip nem roda.. botando depois n bloqueia nada.. ai voltei pro squid =p vc conseguiu bloquear o MSN no seu squid só com essas regras? aki não rolou.. e eu ainda dropei a porta 1863 no iptables(se eh q dropou ja q ele n ta bloqueando nada..) a acl do google talk pega blz.. mais so na pagina.. se a pessoa tiver o programa instalado passa
Última edição por ThiagoOverseer; 24-01-2007 às 17:23.
Cara, olha só.
Se você chegou a pegar algumas configs e num está indo faz assim.
Remove tudo do seu squid ai e segue esse artigo aqui.
Impossível não funcionar. OK
É apenas uma copia do documento e seu squid estará rodando.
Linux e Software Livre - exerça seu direito de escolha ! - Instalando e Configurando Servidor Proxy Com Squid
Pode ser ainda permissões para buscar os seus arquivos OU seu squid não foi configurado corretamente.
Faça e informe posteriormente