Squid Cache (squid.conf)

Proxy Transparente

Categoria: Segurança

Software: Squid Cache

[ Hits: 145.030 ]

Por: Alencar Gazola


Fiz este arquivo para a configuração de um squid básico, porém transparente. Tirei os comentários para ficar mais leve.
Depois do squid instalado e do arquivo copiado para /etc/squid/squid.conf é preciso usar o iptables ou ipchains para direcionar os pacotes para o squid. As regras de iptables também estarão no arquivo.


hierarchy_stoplist cgi-bin ?
cache_mem 16 MB
cache_swap_low 90
cache_swap_high 95
maximum_object_size 4096 KB
cache_dir ufs /var/cache/squid 1000 16 256
cache_access_log /var/log/squid/access.log
ftp_user Squid@
# ACLS
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  # 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
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow all
icp_access allow all
visible_hostname on
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on


#IPTABLES
#Estas linhas deverão ser acrescentadas em algum arquivo ex.: /etc/rc.local
#. /etc/rc.d/init.d/functions
#. /etc/sysconfig/network

#       echo 1 > /proc/sys/net/ipv4/ip_forward
#        /sbin/modprobe iptable_nat
#        iptables -F
#        iptables -t nat -F
#       iptables -t nat -A PREROUTING -s 0/0 -p tcp --dport 80 -j REDIRECT --to-port 3128
#       iptables -t nat -A PREROUTING -s 0/0 -p udp --dport 80 -j REDIRECT --to-port 3128
#       iptables -t nat -A POSTROUTING -s 0/0 -o eth1 -j MASQUERADE
  


Comentários
[1] Comentário enviado por [IG]_D-TOX em 26/09/2003 - 10:14h

Estava à procura de um artigo sobre squid para um trabalho que estou a fazer, vou experimentar.

Muito Obrigado

[2] Comentário enviado por maksg2003 em 24/11/2005 - 11:35h

Muito bom seu artigo alencar, claro e direto. Sem rodeios. Sem complicações. E foi muito úitl como base nas minhas aulas de Segurança de Rede para firewall(iptables) e proxy(squid). Parabéns !!

[3] Comentário enviado por sergioalsp em 23/02/2006 - 12:54h

Olá Alencar,

Faz um tempão que venho tentando implantar o proxy transparente na empresa em que eu trabalho, vendo aqui no viva o linux gostei da tua conf; fiz algumas modificações para a minha rede mais infelizmente vem dando este erro, que a muito tempo venho tentando descobrir o porq deste erro. Socorro alguem me ajude..... eheheh ( Minha Distrib. é Slacware 10.1).

root@centralserv:/etc# squid
2006/02/23 13:54:49| Memory pools are 'off'; limit: 2.00 MB
2006/02/23 13:54:49| parseConfigFile: 'squid.conf' line 32 unrecognized: 'httpd_ accel_host virtual'
2006/02/23 13:54:49| parseConfigFile: 'squid.conf' line 33 unrecognized: 'httpd_ accel_port 80'
2006/02/23 13:54:49| parseConfigFile: 'squid.conf' line 34 unrecognized: 'httpd_ accel_with_proxy on'
2006/02/23 13:54:49| parseConfigFile: 'squid.conf' line 35 unrecognized: 'httpd_ accel_uses_host_header on'

[4] Comentário enviado por marx599 em 22/03/2006 - 00:41h

Vlw kra, tentei colocar o transparente aqui no meu squid e num funfou vou tentar do seu jeito.

Flw ...

[5] Comentário enviado por fabinhorocha em 20/04/2006 - 11:24h

Cara, é só vc criar o swap...
digite no console: squid -z
depois digite: RunCache
só para verificar se não vai dar erro

[6] Comentário enviado por sergioalsp em 17/06/2006 - 13:22h

ae Fabio valeu....

[7] Comentário enviado por lobon em 10/08/2006 - 21:53h

fabinhorocha, estou usando o kurumin 6. estou tendo o mesmo problema do sergioalsp. criei um arquivo swap. (nao sei se é isso que vc quiz dizer).. e continua dando o mesmo erro...
onde errei?

[8] Comentário enviado por removido em 01/09/2006 - 23:20h

sergioalsp,

seu squid provavelmente é a versao 2.6 e ao invés dos comando q estão dando erro vc coloca "transparent" após http_port 3128

fica da seguinte forma: http_port 3128 transparent

não esqueca de comentar essas linhas que esta dando erro. Espero ter ajudado.

[9] Comentário enviado por heliosauro em 13/11/2006 - 09:54h

Olá Alencar !!
tudo blza !!??
Cara, estou tentando configurar o meu squid para que ele funcione
transparente e não estou conseguindo ... Você poderia me ajudar ?



Abaixo está o meu rc.firewall e logo depois o squid.conf
Você poderia verif. e fazer alguns comentários sobre esses arquivos ?
Sou iniciante no linux e estou precisando implementar esse proxy transparente na empresa onde trabalho ....
desde já agradeço ...



RC.FIREWALL


#!/bin/sh
# Versão 2.6
############ Configuracoes ##############################
[ -f /etc/tupiserver/tupidef ] && . /etc/tupiserver/tupidef
#########################################################

# Localhost
LO_IFACE="lo"
LO_IP="127.0.0.1"

IPTABLES="iptables"
######### Carregando Modulos ###################################
# depmod -a
modprobe ip_tables
modprobe ip_conntrack
modprobe iptable_filter
modprobe iptable_mangle
modprobe ipt_LOG
modprobe ipt_limit
modprobe ipt_state
modprobe ipt_multiport
modprobe ip_conntrack_ftp

###### Setando /proc ############################################

echo "0" > /proc/sys/net/ipv4/conf/all/proxy_arp
echo "0" > /proc/sys/net/ipv4/ip_dynaddr
echo "1" > /proc/sys/net/ipv4/ip_forward
####### Politicas ################################################

$IPTABLES -F
$IPTABLES -F -t nat

$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP

# Pacotes defeituosos

$IPTABLES -N bad_tcp_packets
# Chains separadas para ICMP, TCP e UDP

$IPTABLES -N allowed
$IPTABLES -N icmp_packets
$IPTABLES -N tcp_packets
$IPTABLES -N udpincoming_packets

####### Regras Basicas #############################################
# chain para pacotes TCP defeituosos
#$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW j LOG --log-pr
efix "PACOTE nao SYN:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW --dport ! 8080
-j LOG --log-prefix "PACOTE nao SYN:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP

$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP

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

############################ INPUT CHAIN ############################
# Pacotes defeituosos
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets

#### virus W32.Blaster.Worm
$IPTABLES -A INPUT -p tcp --dport 4444 -j DROP
$IPTABLES -A INPUT -p tcp --dport 135 -j DROP
$IPTABLES -A INPUT -p udp --dport 69 -j DROP

# Pacotes da Internet
$IPTABLES -A INPUT -p ICMP -i $WAN -j icmp_packets

# Acesso SSH
$IPTABLES -A INPUT -p tcp -s $REDE -d $LAN_IP --dport 22 -j ACCEPT
# Acesso WWW Server
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 80 -j ACCEPT
# Acesso SMTP
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 25 -j ACCEPT
# Acesso POP3
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 110 -j ACCEPT
# Acesso DNS Server
$IPTABLES -A INPUT -p udp -d $WAN_IP --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 53 -j ACCEPT

# Da interface LAN para LAN firewall IP
$IPTABLES -A INPUT -p ALL -i $LAN -d $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LAN -d $LAN_BROD -j ACCEPT

# From Localhost interface to Localhost IP's
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $WAN_IP -j ACCEPT

# Regra para DHCP
#$IPTABLES -A INPUT -p UDP -i $LAN --dport 67 --sport 68 -j ACCEPT

# Entrada de todos os pacotes estaveis
$IPTABLES -A INPUT -p ALL -d $WAN_IP -m state --state ESTABLISHED,RELATED -j ACC
EPT

# Logar todos os pacotes mortos
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level
DEBUG --log-prefix "IPT INPUT packet died: "

############################ FORWARD CHAIN #########################
# Pacotes defeituosos
$IPTABLES -A FORWARD -p tcp -j bad_tcp_packets

# LAN section
$IPTABLES -A FORWARD -i $LAN -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Log weird packets that don't match the above.
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG --log-leve
l DEBUG --log-prefix "IPT FORWARD packet died: "

############################ OUTPUT CHAIN ##########################

# Bad TCP packets we don't want.
$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets

# Special OUTPUT rules to decide which IP's to allow.
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $WAN_IP -j ACCEPT

# Log weird packets that don't match the above.
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level
DEBUG --log-prefix "IPT OUTPUT packet died: "

##############################Proxy Transparente #####################

$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 80 REDIRECT --to-port 8080


############################# NAT ###################################

## Generico
$IPTABLES -t nat -A POSTROUTING -s $REDE -o $WAN -j MASQUERADE
################################### FIM ############################
/sbin/iptables-save > /etc/sysconfig/iptables
root@1[rc.d]# vi rc.firewall
# Bad TCP packets we don't want.
$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets

# Special OUTPUT rules to decide which IP's to allow.
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $WAN_IP -j ACCEPT

# Log weird packets that don't match the above.
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "

##############################Proxy Transparente #####################

$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 80 REDIRECT --to-port 8080


############################# NAT ###################################

## Generico
$IPTABLES -t nat -A POSTROUTING -s $REDE -o $WAN -j MASQUERADE
################################### FIM ############################
/sbin/iptables-save > /etc/sysconfig/iptables








SQUID.CONF


#!/bin/sh
# Script criado por Andre Pinheiro Ribas
# Versão 2.6
############ Configuracoes ##############################
[ -f /etc/tupiserver/tupidef ] && . /etc/tupiserver/tupidef
#########################################################

# Localhost
LO_IFACE="lo"
LO_IP="127.0.0.1"

IPTABLES="iptables"
######### Carregando Modulos ###################################
# depmod -a
modprobe ip_tables
modprobe ip_conntrack
modprobe iptable_filter
modprobe iptable_mangle
modprobe ipt_LOG
modprobe ipt_limit
modprobe ipt_state
modprobe ipt_multiport
modprobe ip_conntrack_ftp

###### Setando /proc ############################################

echo "0" > /proc/sys/net/ipv4/conf/all/proxy_arp
echo "0" > /proc/sys/net/ipv4/ip_dynaddr
echo "1" > /proc/sys/net/ipv4/ip_forward
####### Politicas ################################################

$IPTABLES -F
$IPTABLES -F -t nat

$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP

# Pacotes defeituosos

$IPTABLES -N bad_tcp_packets
# Chains separadas para ICMP, TCP e UDP

$IPTABLES -N allowed
$IPTABLES -N icmp_packets
$IPTABLES -N tcp_packets
$IPTABLES -N udpincoming_packets

####### Regras Basicas #############################################
# chain para pacotes TCP defeituosos
#$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW j LOG --log-pr
efix "PACOTE nao SYN:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW --dport ! 8080
-j LOG --log-prefix "PACOTE nao SYN:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP

$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP

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

############################ INPUT CHAIN ############################
# Pacotes defeituosos
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets

#### virus W32.Blaster.Worm
$IPTABLES -A INPUT -p tcp --dport 4444 -j DROP
$IPTABLES -A INPUT -p tcp --dport 135 -j DROP
$IPTABLES -A INPUT -p udp --dport 69 -j DROP

# Pacotes da Internet
$IPTABLES -A INPUT -p ICMP -i $WAN -j icmp_packets

# Acesso SSH
$IPTABLES -A INPUT -p tcp -s $REDE -d $LAN_IP --dport 22 -j ACCEPT
# Acesso WWW Server
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 80 -j ACCEPT
# Acesso SMTP
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 25 -j ACCEPT
# Acesso POP3
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 110 -j ACCEPT
# Acesso DNS Server
$IPTABLES -A INPUT -p udp -d $WAN_IP --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -d $WAN_IP --dport 53 -j ACCEPT

# Da interface LAN para LAN firewall IP
$IPTABLES -A INPUT -p ALL -i $LAN -d $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LAN -d $LAN_BROD -j ACCEPT

# From Localhost interface to Localhost IP's
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $WAN_IP -j ACCEPT

# Regra para DHCP
#$IPTABLES -A INPUT -p UDP -i $LAN --dport 67 --sport 68 -j ACCEPT

# Entrada de todos os pacotes estaveis
$IPTABLES -A INPUT -p ALL -d $WAN_IP -m state --state ESTABLISHED,RELATED -j ACC
EPT

# Logar todos os pacotes mortos
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level
DEBUG --log-prefix "IPT INPUT packet died: "

############################ FORWARD CHAIN #########################
# Pacotes defeituosos
$IPTABLES -A FORWARD -p tcp -j bad_tcp_packets

# LAN section
$IPTABLES -A FORWARD -i $LAN -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Log weird packets that don't match the above.
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG --log-leve
l DEBUG --log-prefix "IPT FORWARD packet died: "

############################ OUTPUT CHAIN ##########################

# Bad TCP packets we don't want.
$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets

# Special OUTPUT rules to decide which IP's to allow.
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $WAN_IP -j ACCEPT

# Log weird packets that don't match the above.
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level
DEBUG --log-prefix "IPT OUTPUT packet died: "

##############################Proxy Transparente #####################

$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 80 REDIRECT --to-port 8080


############################# NAT ###################################

## Generico
$IPTABLES -t nat -A POSTROUTING -s $REDE -o $WAN -j MASQUERADE
################################### FIM ############################
/sbin/iptables-save > /etc/sysconfig/iptables



#########################
cache_effective_user proxy
cache_effective_group proxy
visible_hostname jerry

#########################
deny_info ERR_ACCESS_IP bloqueioip
deny_info ERR_ACCESS_URL bloq_sites
deny_info ERR_ACCESS_TURL tupisites
deny_info ERR_ACCESS_MALWARE malware_block_list
#########################
deny_info ERR_ACCESS_FILE palavra
deny_info ERR_ACCESS_TFILE tupipalavra
#########################
deny_info ERR_ACCESS_DOWN bloq_extensao
#########################
error_directory /usr/share/squid/errors/Portuguese/
#########################
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
#########################



Me ajuda !??


[10] Comentário enviado por chaplinux em 18/12/2006 - 16:36h

Caro heliosauro , tu misturou legal ai as coisa! num da pra distinguir o que é Firewall o que é squid.conf, ou seja estão intramelados.

começe por baixo, use exemplos mais simples e vai implementando. e esqueça esse seu script ai.

[11] Comentário enviado por Yrrak em 08/02/2007 - 09:10h

heliosauro seu problema com relação ao proxy transparente é o mesmo que o sergioalsp apresentou acima.

Pra você resolve-lo basta substituir a linha "http_port 3128" por "http_port 3128 transparent" e comentar as linhas abaixo:
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

Depois é só reiniciar o squid e correr pro abraço.

heliosauro uma outra coisa que seria bom você fazer é separar as coisas, tem muito comando dentro do squid.conf que é do iptables. O que você pode fazer é criar um arquivo de configuração do firewall dentro de /etc/init.d com todas as configs dentro dele, fica muito mais fácil para você dar manutenção posteriormente.

Espero ter ajudado!

[12] Comentário enviado por nandinh0 em 19/04/2007 - 09:14h

Meu erro é o mesmo que o do sérgio, eu ja rodei o squid -z para criar o diretório virtual e o RunCache. O proxy funciona normalmente, só que não consigo coloca-lo como transparent.


########### Configuração ################

http_port 3128 transparent vhost vport
visible_hostname localhost
#always_direct allow all
#controle de cache do proxy
cache_mem 32 MB
maximum_object_size_in_memory 64 KB
minimum_object_size 0 KB
maximum_object_size 4096 MB

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
ftp_user Squid@
#protocolos
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280

#lista de controle de acesso
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
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl Safe_ports port 901

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
#bloqueios por arquivo e horário
acl almoco time 12:00-13:00
http_access allow almoco
acl bloqueados url_regex -i /etc/squid/bloqueados
http_access deny bloqueados
acl nomesproibidos dstdom_regex "/etc/squid/nomesproibidos"
http_access deny nomesproibidos

#redes onde o acesso é permitido
acl redelocal src 10.0.0.0/8
http_access allow localhost
http_access allow redelocal
icp_access allow all
http_access deny all
#proxy transparente
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

[13] Comentário enviado por gzanatta00 em 21/08/2007 - 18:40h

sergio e nandinho . blza mocada...

este erro esta ocorrendo por causa q este cofigo eh pra squid 2.5 e vc provavelmente deve tar com 2.6
mas eh so deixar assim
http_port 3128 transparent

e no lugar de:
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

colocar:
always_direct allow all


e so reiniciar o squid e pau na mula
espero ter ajudado...quando mudei a versao do meu squid precisei alterar somente isso
abraco

[14] Comentário enviado por jb.juniordeb em 19/11/2007 - 00:17h

bem amigo o seu proxy transparente não funcionol em razão da falta da regra de redirecionamento que e feito pelas seguintes linhas de comando que vc pode adicionar no fim do arquivo

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

iptables -t nat -A PREROUTING -s 192.168.0.1/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -s 192.168.0.1/24 -p udp --dport 80 -j REDIRECT --to-port 3128

estas linhas redirecionam da porta de 80 que a porta comun da internet para a porta 3128 que a do squid, fazendo com que ele passe a funcionar e a conexão

[15] Comentário enviado por guilherme.cmaia em 06/08/2008 - 14:31h

vlw
ajudou
bastante

[16] Comentário enviado por rosemberg em 04/09/2008 - 00:54h

Pessoal quem poder me dar uma ajuda agradeço.
Seguinte aonde trabalho tem um squid funcionando beleza só que ao mandar analisar o log com um script que achei na net simplesmente o log não armazena todas as transações de navegação.
Pensei que o script estava com erro e fui ver o log com tail e para minha surpresa o script estava certo alguns hosts simplesmente não aparecem no log do squid.
Alguém saberia o que pode esta acontecendo ???
===============*=======================

OK Vacilei acontece nas melhores famílias seguinte não estava sendo declarado na guia de conexões do navegador a opção ( Usar Proxy tal.... ) estava para Detectar o proxy automaticamente.
Mudei isso nas estações e ta funcionando lindo, lindo, lindo.

[17] Comentário enviado por livyorocha em 01/04/2009 - 11:42h

Também estou precisando de uma ajudinha com o squid. Aqui na empresa são 06 estações e estava querendo colocara o squid para bloquear o acesso a internet de 4 computadores e liberar somente 9 sites de bancos e etc.

IP's: 192.168.100.11 até 192.168.100.17
Sendo que queria liberar todos os acesso a internet para 192.168.100.11 / 192.168.100.15
As demais máquinas só teriam acesso a internet, a 9 sites liberados para eles. (banco, caixa economica e etc)


Tenho no servidor somente uma placa de rede a eth0, Ubuntu 8.10.

Se alguem poder me ajudar eu agradeço...

[18] Comentário enviado por jbflira em 17/07/2009 - 22:01h

Ola livyorocha, posso te ajudar com o necessário: é so colocar no firewall a regra de bloqueio dos ip´s ou no squid uma regra de
possiveis e não possiveis acessar a internet caso não saiba me mande um email para joao.lira@terra.com.br e eu faço as regras
para vc...

[19] Comentário enviado por ---Anonymous--- em 08/03/2010 - 00:12h

Velho, só uma pergunta, FUNCIONA HTTPS E FTP com essa sua configuração???
Você ta ligado que uma vez feito proxy transparente, temos que configurar "algo a mais" pra funcionar FTP e sites HTTPS né???
Não é tão simples assim só jogar a palavra "transparent" na frente de "http_port 3128".
Um exemplo, entre no site CONECTIVIDADE SOCIAL da caixa econômica e vá a fundo pra ver se funciona.
Foi o que eu vi no livro do MORIMOTO em SERVIDORES LINUX.
Dê uma olhada cara, é bem bacana o livro do japa.

[20] Comentário enviado por tx@ig.com.br em 07/04/2010 - 22:26h

Esse é o meu "FIREWALL e "PROXY TRANSPARENTE" funcionando 100%......





#####################################################################################################################################
########################## squid.conf (configuração) ################################################################################
########################## Por Alexandre Starck de Oliveira #########################################################################
########################## e-mail starck2007@hotmail.com ############################################################################


###############################################################################################################################################
### Nessa versão é bem diferente as configurações de proxy transparente, não é necessário mais acrescentar essas linhas no arquivo squid.conf:

# httpd_accel_port 80
# httpd_accel_host virtual
# httpd_accel_with_proxy on
# httpd_accel_uses_host_header on

# >> Agora só precisa colocar:

# http_port 3128 transparent vhost vport

# always_direct allow all

# >> O restante da configuração é o padrão do Squid.

###############################################################################################################################################



http_port 3128 transparent 192.168.10.1:3128
error_directory /usr/share/squid3/errors/pt-br
visible_hostname Servidor # como root digite hostname
dns_nameservers 200.149.55.140 200.165.132.147
always_direct allow all A

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 21 22 80 139 443 563 70 210 280 488 59 777 901 1025-65535
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

#####################################################################################################################################
############################# Aqui entra todas as Regras ACL's ######################################################################

# *** Define a lista de palavras impróprias

acl palavras dstdomain -i "/etc/squid/list/palavras"
http_access deny palavras

# *** Define a lista de sites impróprios

acl sites url_regex -i "/etc/squid/list/sites"
http_access deny sites

#####################################################################################################################################

acl Rede src 192.168.10.0/24
http_access allow localhost
http_access allow Rede
http_access deny all

#####################################################################################################################################
########### OBS: Não esquecendo de inserir os DNS's,IP's e GATEWAY nas "Máquinas Virtuais".##########################################
########### IMPORTANTE: Usar cabo "crossouver" para as máquinas locais <<SEMPRE>>.###################################################
#####################################################################################################################################






###<<<< FIM >>>>###







#!/bin/bash

####################################################################################################################################################
########################## Firewall,configurado e montado por: Alexandre Starck de Oliveira ########################################################
########################## Para esse arquivo ser iniciado no boot deve ser colocado de acordo com as regras abaixo: ################################


### 1º)-Dar permissão de arquivo executável Ex: chmod +x /etc/init.d/firewall

### 2º)-Primeira opção,para ser iniciado no boot.Colocar o diretório completo no arquivo rc.local Ex:

# vim /etc/rc.local
# /etc/init.d/firewall # esse diretório deve ser colocado na última linha do arquivo rc.local

### 3º)-Outra opção é criar um link simbólico. Ex: ln -s /etc/init.d/firewall /etc/rc5.d/S99Firewall
# O link apontará para o arquivo /etc/init.d/firewall, que é o nosso script, o S99 do arquivo de link significa:
# o "S" de Start (iniciar) e o 99 é a ordem que ele será executado juntamente com o sistema.

#####################################################################################################################################################


# Compartilhando a Internet
echo 1 > /proc/sys/net/ipv4/ip_forward

# Variáveris #
LanExt=eth1 # placa de internet
LanInt=192.168.10.1/24
Rede=192.168.10.0/24 # minha rede local

# Módulos #
/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_state
/sbin/modprobe ipt_REDIRECT
/sbin/modprobe ipt_owner
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp

####################
### Função START ###
####################

firewall_start() {
echo "Iniciando o Firewall....................................................[ OK ]"

# Limpa as regras #
iptables -X
iptables -Z
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F -t nat
iptables -F -t mangle

# Politicas padrao #
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT ACCEPT
iptables -t filter -P FORWARD DROP
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT

# Manter conexoes jah estabelecidas para nao parar
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Aceita todo o trafego vindo do loopback e indo pro loopback
iptables -t filter -A INPUT -i lo -j ACCEPT

#######################
### LOG DO FIREWALL ###
#######################

#iptables -A INPUT -d $LanExt -p tcp --dport 22 -j LOG --log-level 6 --log-prefix "FIREWALL: SSH EXT 22"
#iptables -A INPUT -d $LanExt -p tcp --dport 21 -j LOG --log-level 6 --log-prefix "FIREWALL: FTP EXT 21"
#iptables -A INPUT -d $LanInt -p tcp --dport 22 -j LOG --log-level 6 --log-prefix "FIREWALL: SSH INT 22"
#iptables -A INPUT -d $LanInt -p tcp --dport 21 -j LOG --log-level 6 --log-prefix "FIREWALL: FTP INT 21"


###############################
# Proteções #
###############################

# Protege contra os "Ping of Death"
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 20/m -j ACCEPT
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 20/m -j ACCEPT

# Protege contra port scanners avançados (Ex.: nmap)
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 20/m -j ACCEPT

# Bloqueando tracertroute
iptables -A INPUT -p udp -s 0/0 -i eth1 --dport 33435:33525 -j REJECT

# Protecoes contra ataques
iptables -A INPUT -m state --state INVALID -j REJECT


###############################
# TABELA Input #
###############################
### Destino Externo ###

# Liberando Porta 22 (SSH)
#iptables -A INPUT -d $LanExt -p tcp --dport 22 -j LOG --log-level 6 --log-prefix "FIREWALL: SSH EXT 2222"
iptables -A INPUT -d $LanExt -p tcp --dport 22 -j ACCEPT

# Liberando Porta 21 (ftp)
#iptables -A INPUT -d $LanExt -p tcp --dport 21 -j LOG --log-level 6 --log-prefix "FIREWALL: FTP EXT 21"
iptables -A INPUT -d $LanExt -p tcp --dport 21 -j ACCEPT

### Destino Interno ###

# Liberando Porta 22 (SSH)
#iptables -A INPUT -d $LanInt -p tcp --dport 22 -j LOG --log-level 6 --log-prefix "FIREWALL: SSH INT 22"
iptables -A INPUT -d $LanInt -p tcp --dport 22 -j ACCEPT

# Liberando porta 3128 (Squid)
iptables -A INPUT -d $LanInt -p tcp --dport 3128 -j ACCEPT

# Liberando Porta 80 (http)
#iptables -A INPUT -d $LanInt -p tcp --dport 80 -j LOG --log-level 6 --log-prefix "FIREWALL: HTTP INT 80"
iptables -A INPUT -d $LanInt -p tcp --dport 80 -j ACCEPT


# Liberando Porta 21 (ftp)
#iptables -A INPUT -d $LanInt -p tcp --dport 21 -j LOG --log-level 6 --log-prefix "FIREWALL: FTP INT 21"
iptables -A INPUT -d $LanInt -p tcp --dport 21 -j ACCEPT

# Liberando porta 3000 (NTOP)
iptables -A INPUT -d $LanInt -p tcp --dport 3000 -j ACCEPT

###############################
# TABELA Forward #
###############################


# Libera computador das regras do firewall
iptables -A FORWARD -s 192.168.4.13 -p tcp -j ACCEPT
iptables -A FORWARD -s 192.168.4.13 -p udp -j ACCEPT

### MSN ###

# Libera msn para o IP #


# nome
iptables -A FORWARD -s 192.168.4.11 -p tcp --dport 1863 -j ACCEPT


# Bloqueio de MSN #


#iptables -A FORWARD -s 192.168.4.0 -p tcp --dport 1863 -j DROP
#iptables -A FORWARD -s 192.168.4.0 -d loginnet.passport.com -j DROP
#iptables -A FORWARD -s 198.164.4.0/24 -p tcp --dport 1863 -j DROP
#iptables -A FORWARD -s 198.164.4.0/24 -d loginnet.passport.com -j DROP
#iptables -A FORWARD -s 198.164.4.0/24 -d messenger.hotmail.com -j DROP
#iptables -A FORWARD -s 198.164.4.0/24 -d webmessenger.msn.com -j DROP
#iptables -A FORWARD -p tcp --dport 1080 -j DROP
#iptables -A FORWARD -s 198.164.4.0/24 -p tcp --dport 1080 -j DROP
#iptables -A FORWARD -p tcp --dport 1863 -j DROP
#iptables -A FORWARD -d 64.4.13.0/24 -j DROP

# Liberando Porta 2222 (SSH)
iptables -A FORWARD -s $Rede -p tcp --dport 2222 -j ACCEPT

# Liberando Porta 22 (SSH)
iptables -A FORWARD -s $Rede -p tcp --dport 22 -j ACCEPT
# Liberando Porta 110 (pop-3)
iptables -A FORWARD -s $Rede -p tcp --dport 110 -j ACCEPT

# Liberando Porta 995 (spop-3)
iptables -A FORWARD -s $Rede -p tcp --dport 995 -j ACCEPT

# Liberando Porta 25 (smtp)
iptables -A FORWARD -s $Rede -p tcp --dport 25 -j ACCEPT

# Liberando Porta 465 (smtp-s)
iptables -A FORWARD -s $Rede -p tcp --dport 465 -j ACCEPT

# Liberando Porta 2121 (ftp)
iptables -A FORWARD -s $Rede -p tcp --dport 2121 -j ACCEPT

# Liberando Porta 21 (ftp)
iptables -A FORWARD -s $Rede -p udp --dport 21 -j ACCEPT
iptables -A FORWARD -s $Rede -p udp --dport 20 -j ACCEPT

# Liberando porta 53 (DNS)
iptables -A FORWARD -s $Rede -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -s $Rede -p udp --dport 53 -j ACCEPT

# Regras forward para o funcionamento de redirecionamento de portas (NAT)
# Redirecionando porta 5900 (VNC)
#iptables -A FORWARD -p tcp --dport 5900 -j ACCEPT
#ptables -A FORWARD -p tcp --dport 5800 -j ACCEPT

###############################
######### TABELA NAT ## #######
###############################

# Redireconamento de portas
# VNC Para algum micro (192.168.1.31 = nome da pessoa)
#iptables -t nat -A PREROUTING -d $LanExt -p tcp --dport 5900 -j DNAT --to 192.168.0.77:5900

# Mascaramento de rede para acesso externo #
# iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

#Bloqueia todo o resto
#iptables -A INPUT -p tcp -j LOG --log-level 6 --log-prefix "FIREWALL: GERAL "
iptables -A INPUT -p tcp --syn -j DROP
iptables -A INPUT -p tcp -j DROP
iptables -A INPUT -p udp -j DROP

}

##################
### Função STOP ##
##################

firewall_stop() {

echo "Parando firewall e funcionando apenas com mascaramento........................[ OK ]"

# Limpa as regras #

iptables -X
iptables -Z
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F -t nat
iptables -F -t mangle

# Politicas padrao #

iptables -t filter -P INPUT ACCEPT
iptables -t filter -P OUTPUT ACCEPT
iptables -t filter -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT

# Manter conexoes jah estabelecidas para nao parar
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Aceita todo o trafego vindo do loopback e indo pro loopback
iptables -t filter -A INPUT -i lo -j ACCEPT

###############################
# TABELA Forward #
###############################

### MSN ###

# Libera msn para o IP #


# nome
#iptables -A FORWARD -s 192.168.0.34 -p tcp --dport 1863 -j ACCEPT

# nome
#iptables -A FORWARD -s 192.168.0.5 -p tcp --dport 1863 -j ACCEPT


# Bloqueio de MSN #

#iptables -A FORWARD -s 192.168.1.0 -p tcp --dport 1863 -j DROP
#iptables -A FORWARD -s 192.168.1.0 -d loginnet.passport.com -j DROP
#iptables -A FORWARD -s 198.164.1.0/24 -p tcp --dport 1863 -j DROP
#iptables -A FORWARD -s 198.164.1.0/24 -d loginnet.passport.com -j DROP
#iptables -A FORWARD -s 198.164.1.0/24 -d messenger.hotmail.com -j DROP
#iptables -A FORWARD -s 198.164.1.0/24 -d webmessenger.msn.com -j DROP
#iptables -A FORWARD -p tcp --dport 1080 -j DROP
#iptables -A FORWARD -s 198.164.1.0/24 -p tcp --dport 1080 -j DROP
#iptables -A FORWARD -p tcp --dport 1863 -j DROP
#iptables -A FORWARD -d 64.4.13.0/24 -j DROP

###############################
######### TABELA NAT ## #######
###############################


# Mascaramento de rede para acesso externo #
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

# Efetivando o PROXY TRANPARENTE
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 # (Redireciona para o squid) - eth1 -> Placa de rede local
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j REDIRECT --to-port 3128
iptables -A INPUT -p tcp --dport 3128 -j ACCEPT




echo "Regras Limpas e Firewall desabilitado...........................................[ << ATENÇÂO >> FIREWALL DESATIVADO ]"

firewall_restart() {

echo "Reiniciando Firewall.............................................................................[ OK ]"

firewall_stop
sleep 3
firewall_start

echo "Firewall Reiniciado..............................................................................[ OK ]"

}

case "$1" in
'start')
firewall_start

echo "Firewall Iniciado................................................................................[ OK ]"

;;
'stop')
firewall_stop
;;
'restart')
firewall_restart
;;
*)
echo "Opções possíveis:"
echo "firewall start"
echo "firewall stop"
echo "firewall restart"
esac



### <<<FIM>>>###




Regras muito simples .....mas grandes resultados.....

E viva o tio " TUX "

[21] Comentário enviado por jessetbr em 12/07/2010 - 23:19h

Ola, boa noite, tenho um servidor de internet rodando normal, porem com apenas 2 Mb de cache
ja tentei de todas as formas configurar um sevidor com um cache bom mas sempre da erro ate que desanimei,
porem gostaria de saber se tem como eu apena inserir um cache no squid que ja esta rodando, tenho um pc bom como servidor:
intel core 2 duo e7500 2.9, 3M de cache, 8 GB memoria, 1Tb de HD rede 100/1000. Com uma configuração dessa é uma vergonha ter apenas 2 Mb de cache, então se for possivel por favor me ajudem
grato

[22] Comentário enviado por daniloaguiar em 10/09/2010 - 11:35h

Olha Pessoal estou começando a usar o linux agora...

Minha duvida é para um servidor proxy vou precisar de duas placas de rede? qual o melhor em modo grafico ou modo texto?

Obrigado!!!

[23] Comentário enviado por Jandairs em 03/01/2011 - 11:56h

Ola daniloaquiar

Pra vc q esta iniciando aconcelharia vc a instalar modo texto/grafico. e usar 2 placas de rede uma recebe a net a outra compartilha, o bom seria vc dar uma lida em umas apostilas vc encontra facilmente no apostilando.com

[24] Comentário enviado por lsveneziano em 01/03/2011 - 15:50h

Pessoal, tenho 2 problemas aqui na empresa:

Sempre que reinicia o linux as configurações de squid voltam ao default. Exemplo: 4shared o squid avisa acesso negado e tinha sido configurado para acessar.

Outra coisa: Quando reinicia o router linux a internet fica lenta uns 40 minutos. o adm diz que está "esquentando o cache", tem soluções para estes problemas?

Sou novo aqui e nao sei se posso colocar este post aqui mesmo, tendo em vista que estamos falando de config do firewall e etc...

Grato e um abraço.

[25] Comentário enviado por Jandairs em 01/03/2011 - 16:32h

Boa tarde
Lsveneziano
Primeiramente qual Linux tu esta usando qual versão
pois cada um tem uma solução lembrando a vc q eu estou falando do Debian 5 ok

1> Problema sua configuração deve estar voltando pra default devido as permissão do squid pois se ele estiver sem pode acontecer de voltar pra default, ou vc tem 2 squid instalado e esta acessando o segundo e não o primeiro. Verifique no seu init.d pra ver qual esta start ando, outro pode ser o seu editor q não esta salvando simplesmente temporário, ou vc não tem permissão pra editar seus squid , logue com root para ter toda permissão adequada.

2> Pode ser o seu cache q esta com pouco espaço de armazenamento conferi no squid pra ver se não colocou muito pequeno o grande demais ok

qualquer duvida estou a disposição e se conseguir a solução posta ai pra gente blza.

[26] Comentário enviado por modred em 13/11/2013 - 07:56h

Dae pessoal blz? seguinte tenho meu squid (Debian 7)autenticando com meu AD, no AD tenho os grupo Web_Basico, Web_Intermediario e Web_Avancado estou tentando configura para que bloqueie tudo e cada um desses grupos tenha uma lista de acesso liberado, ja fiz vários testes e não consegui fazer essa liberação, do jeito que esta agora esta bloqueando. Segue o meu squid.conf, se alguem tiver alguma sugestão para melhorar esse squid tb aceito dicas.


cache_access_log /var/log/squid/access.log
error_directory /etc/squid/errors/
cache_store_log /var/log/squid/store.log
maximum_object_size 2 MB
ie_refresh on

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


auth_param ntlm program /usr/bin/ntlm_auth (servidor windows) --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 20
auth_param ntlm keep_alive on
auth_param basic program /usr/bin/ntlm_auth (servidor windows) --helper-protocol=squid-2.5-basic
auth_param basic children 20
auth_param basic realm "Controle acesso"
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
authenticate_cache_garbage_interval 10 seconds
authenticate_ttl 0 seconds
external_acl_type nt_group children=20 %LOGIN /usr/lib/squid/wbinfo_group.pl


refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

acl Proxy proxy_auth REQUIRED
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 to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563 2100
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 purge method PURGE
acl CONNECT method CONNECT



acl WEBBasico external nt_group WEB_Basico
acl WEBIntermediario external nt_group WEB_Intermediario
acl WEBAvancado external nt_group WEB_Avancado


acl SITES_ACESSO_DIRETO url_regex -i "/etc/squid/config/sites_acesso_direto"
acl Sites_Basico url_regex -i "/etc/squid/config/sites_basico"
acl Sites_Intermediario url_regex -i "/etc/squid/config/sites_intermediario"
acl Sites_Avancado url_regex -i "/etc/squid/config/sites_avancado"
#acl SITES_BLOQUEADOS dstdom_regex -i "/etc/squid/config/sites_bloqueados"
acl MIME_BLOQUEADOS rep_mime_type -i "/etc/squid/config/mime_bloqueados"


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


always_direct allow SITES_ACESSO_DIRETO
http_access allow Sites_Basico
http_access deny WEBBasico !Sites_Basico
http_access allow Sites_Intermediario
http_access deny WEBIntermediario !Sites_Intermediario
http_access allow Sites_Avancado
https_access deny WEBAvancado !Sites_Avancado
#http_access deny SITES_BLOQUEADOS



http_access deny all
http_reply_access allow all
icp_access allow all
visible_hostname proxyCSCTESTE
coredump_dir /var/spool/squid/cache

[27] Comentário enviado por mauriciodesousa2 em 14/07/2014 - 16:03h

AJUDA!!!!

explicação, para não ficar solicitando usuário e senha a todo instante criei um usuário "LIMITADO", com permissões
apenas para acessar a "whitelist", e o usuário autenticados para acesso total.

porem o usuário limitado, não esta funcionando, mesmo informando o usuário e senha continua solicitando o login.

segue meu squid.conf para analise. OBRIGADO.

##########squid.conf##########
#
#
acl localnet src 192.168.1.0/24 # RFC1918 possible internal network
acl localnet src 192.168.0.0/24 # RFC1918 possible internal network
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
acl extensoes url_regex -i \.scr$ \.bat$ \.zip$ \.pdf$ \.doc$ \.docx$ \.tiff$ \.xls$ \.xlsx$ \.afx$ \.ms$ \.asp$

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
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

acl hotmail dstdomain hotmail.com
http_access allow hotmail


#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access allow extensoes
http_access deny manager


# Deny requests to certain unsafe ports
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports


#LIBERA ATUALIZACOES MICROSOFT
acl update dstdomain -i Windowsupdate.microsoft.com au.download.Windowsupdate.com
http_access allow update

#LIBERA CAIXA ECONOMICA FEDERAL (conectividade social)
acl caixa dstdomain -i .caixa.gov.br
http_access allow caixa
always_direct allow caixa

####regras para autenticao####
auth_param basic program /usr/bin/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Digite sua senha
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
################################

acl autenticados proxy_auth REQUIRED
acl whitelist url_regex -i "/etc/squid/acl/whitelist"
acl limitados proxy_auth "/etc/squid/passwd1"


http_access allow whitelist
http_access allow autenticados
http_access deny limitados !whitelist
http_access deny localnet
http_access allow localhost

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
http_port 3128

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# Uncomment and adjust the following to add a disk cache directory.
#cache_dir ufs /var/spool/squid 100 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid



Contribuir com comentário

  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts