Squid + Samba

1. Squid + Samba

Tiago Frutuoso
tiagopaulista

(usa Debian)

Enviado em 09/06/2011 - 22:49h

Boa noite senhores,

Estou tendo um problema com um servidor squid, não esta conectando na internet, segue abaixo o squid.conf:

eth0 192.168.1.250 mask 255.255.255.0 gateway 192.168.1.254
eth1 192.168.0.250 mask 255.255.255.0 gateway 0.0.0.0

eth0 vem do modem
eth1 rede local


##########################################################
# Detalhes das configurações
# Desenvolvido por: TJT Tecnologia - Soluções em T.I.
# Data: 04/06/2011
##########################################################

##########################################################
# http_port: determina a porta que será usada pelo servidor.
# visible_hostname: defina o nome de exibição do servidor.
# cache_mgr: defina o e-mail do administrador para receber mensagem em casos graves.
##########################################################

http_port 3128
visible_hostname server
cache_mgr suporte@tjttecnologia.com.br

##########################################################
# Defini o idioma das páginas de mensagem de erros em português brasileiro.
##########################################################

error_directory /usr/share/squid3/errors/pt-br

##########################################################
# hierarchy_stoplist: defina palavras que se for encontradas na url, a página irá ser carregada direto do cache.
# cache_mem: defina a quantidade de memória que o servidor irá usar para o cache.
# maximum_object_size_in_memory: defina o tamanho máximo do objeto que poderá ser armazenado na memória, senão será armazenado no disco rígido.
# maximum_object_size: defina o tamanho máximo do objeto que poderá ser armazenado no disco rígido, senão será descartado o objeto.
##########################################################

hierarchy_stoplist cgi-bin ?
#cache_men 32 MB
#maximun_object_size_in_memory 64 KB
#maximun_object_size 100 MB

##########################################################
# Especificar o diretório do cache, aonde será armazenado os objetos e atribuir 2GB de espaço de armazenamento no cache.
##########################################################

cache_dir ufs /var/spool/squid3 2048 16 256

##########################################################
# Parte de autenticação com o SAMBA.
##########################################################

#auth_param basic program /usr/lib/squid/pam_auth
auth_param basic children 40
auth_param basic realm Acesso Restrito
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

##########################################################
# Agora vamos definir o tempo de vida dos objetos no cache, para que sempre o Squid for verificá-los, saber se é necessário atualizá-los ou não.
#
# 1ª coluna: defina o tempo em minutos, em cada acesso, quando deve verificar se houve modificação no objeto.
# 2ª coluna: defina a porcentagem mínima da modificação do objeto que deve ter para ser atualizado.
# 3ª coluna: defina o tempo em minutos, quando deve efetuar uma atualização mesmo não ter sido modificado.
##########################################################

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

##########################################################
# Especificar o caminho do Log de acesso do Squid
##########################################################

access_log /var/log/squid3/access.log

##########################################################
# Criação de duas acl com o tipo src (IP de origem) adicionando o IP do servidor e o IP da rede.
##########################################################

acl localhost src 127.0.0.1/32
acl localnet src 192.168.0.0/24

##########################################################
# Criação de uma acl com o tipo proto (protocolo) e adicione o protocolo "cache_object".
# O protocolo "cache_object" é usado para obter informações sobre o estado do Squid.
# Só o servidor pode obter as informações do Squid
##########################################################

acl manager proto cache_object
http_access allow manager localhost
http_access deny manager

##########################################################
# Criação de uma acl do tipo method (método de requisição) e adicione o método PURGE.
# O método de requisição PURGE serve para limpar/excluir objetos armazenados no cache.
# Para permitir que apenas o servidor possa exclua objetos, adicione a seguinte regra.
##########################################################

acl purge method PURGE
http_access allow purge localhost
http_access deny purge

##########################################################
# Criação de uma acl do tipo port (porta) e adicione as portas que serão liberadas.
##########################################################

acl Safe_ports port 21 # ftp
acl Safe_ports port 70 # gopher
acl Safe_ports port 80 # http
acl Safe_ports port 210 # wais
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 443 # https
acl Safe_ports port 488 # gss-http
acl Safe_ports port 563 # nntps
acl Safe_ports port 591 # filemaker
acl Safe_ports port 631 # cups
acl Safe_ports port 777 # multiling http
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # swat
acl Safe_ports port 1025-65535 # unregistered ports

##########################################################
# Para bloquear o acesso em portas que não foram liberadas, adicione a seguinte regra.
##########################################################

http_access deny !Safe_ports

##########################################################
# Criação de uma acl do tipo method (método de requisição) e adicione o método CONNECT, que permite fazer conexão direta.
##########################################################

acl connect method CONNECT

##########################################################
# Criação de uma acl do tipo port (porta) e adicione as portas dos protocolos com SSL que foram adicionadas na acl "Safe_ports"
# e devem ser liberadas para conexão direta.
##########################################################

acl SSL_ports port 443 # https
acl SSL_ports port 563 # nntps
acl SSL_ports port 873 # rsync

##########################################################
# Para bloquear o acesso em portas que não foram liberadas para conexão direta.
##########################################################
http_access deny connect !SSL_ports

##########################################################
# Bloqueios por usuarios
##########################################################

acl USUARIOS proxy_auth REQUIRED
acl USUARIOS_NAO_ORKUT proxy_auth "/etc/squid3/rules/users-orkut.rules"
acl USUARIOS_NAO_YOUTUBE proxy_auth "/etc/squid3/rules/users-youtube.rules"
acl USUARIOS_NAO_TWITTER proxy_auth "/etc/squid3/rules/users-twitter.rules"
acl USUARIOS_NAO_GMAIL proxy_auth "/etc/squid3/rules/users-gmail.rules"
acl USUARIOS_NAO_EVOSERVER proxy_auth "/etc/squid3/rules/users-evoserver.rules"
acl USUARIOS_NAO_MEEBO proxy_auth "/etc/squid3/rules/users-meebo.rules"
acl USUARIOS_NAO_LIVE proxy_auth "/etc/squid3/rules/users-live.rules"
http_access deny USUARIOS_NAO_ORKUT ORKUT
http_access deny USUARIOS_NAO_YOUTUBE YOUTUBE
http_access deny USUARIOS_NAO_GMAIL GMAIL
http_access deny USUARIOS_NAO_EVOSERVER EVOSERVER
http_access deny USUARIOS_NAO_TWITTER TWITTER
http_access deny USUARIOS_NAO_MEEBO MEEBO
http_access deny USUARIOS_NAO_LIVE LIVE

http_access allow USUARIOS

##########################################################
# Bloqueios por Dominios
##########################################################

acl domains dstdomain "/etc/squid3/domains"
http_access deny domains

##########################################################
# Bloqueios por Palavras
##########################################################
acl words url_regex -i "/etc/squid3/words"
http_access deny words

##########################################################
# Bloqueios por Extenções
##########################################################

acl extensions urlpath_regex -i "/etc/squid3/extensions"
http_access deny extensions

##########################################################
# Sem mais acl para criar, adicione a seguinte regra para permitir que apenas as máquinas da
# rede e o servidor sejam liberados para acessar a Internet.
##########################################################

http_access allow localnet
http_access allow localhost
http_access deny all

o que eu estou precisando saber o que esta faltando para squid funcionar, sera que esta faltando alguma configuração no iptable:


  


2. Re: Squid + Samba

Reginaldo de Matias
saitam

(usa Slackware)

Enviado em 10/06/2011 - 10:00h

Se quiser usar proxy transparente, coloca no squid.conf
http_port 3128 transparent
Depois adiciona essa regra no script de firewall
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

E nas máquinas clientes coloca o ip do servidor proxy como sendo o gateway da rede

Cenário
|Internet|---------|Proxy|---------|Cliente|

O Cliente é obrigado ter que passar pelo proxy para poder poder acessar internet, por isso que deve colocar o ip do servidor proxy como sendo o gw da rede.




3. Re: Squid + Samba

Tiago Frutuoso
tiagopaulista

(usa Debian)

Enviado em 10/06/2011 - 10:05h

Bom dia Brother,

E se for fazer com autenticação por usuarios, teria que fazer algo a mais.

Att,


4. Re: Squid + Samba

Reginaldo de Matias
saitam

(usa Slackware)

Enviado em 10/06/2011 - 14:26h

Bom para Proxy autenticado leia esse tutorial

http://www.vivaolinux.com.br/artigo/SQUID-autenticado-Bloqueando-o-acesso-dos-usuarios-por-grupos/?p...

e http://www.hardware.com.br/livros/servidores-linux/proxy-com-autenticacao.html

A diferença entre proxy transparente e autenticado, é que no transparente adiciona uma regra no firewall e pronto, já no autenticado precisa em cada estação configurar manualmente no navegador colocando o ip do servidor proxy.
Não funciona os dois juntos, ou seja, ou é proxy transparente ou é proxy autenticado.


5. Autenticação

MARCELO HENRIQUE BERNARDES RODRIGUES
marcelohbr

(usa CentOS)

Enviado em 10/06/2011 - 15:31h

Mano, tb achu q ta faltando algo pra fazer a autenticação. No squid 2.6 eh assim:


#auth_param basic program /usr/lib/squid/pam_auth
#auth_param basic children 2
#auth_param basic realm Senha de acesso a Internet
#auth_param basic credentialsttl 2 hours
#auth_param basic casesensitive on
#acl senha proxy_auth REQUIRED

#http_access deny !senha

Na sua versao nao sei como eh, mas da uma olhadinha ae se essa funfa!


6. Re: Squid + Samba

Tiago Frutuoso
tiagopaulista

(usa Debian)

Enviado em 10/06/2011 - 18:47h

Opa pessoal,

a versão do meu squid é o 3.

Att,






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts