jorgerabello
(usa Ubuntu)
Enviado em 13/10/2015 - 20:37h
Olá @saitam obrigado pela resposta rápida é claro que sua solução funciona, eu que devo estar fazendo algo de muuito errado....
Tentei utilizar o parâmetro url_rewrite_program mas mesmo assim tenho o mesmo resultado, a página em branco. Acho que devo estar configurando algo errado , pois quando configuro o squid como transparente funcionar normal.
Se não for pedir muito (e eu sei que é ><) segue meu squid conf e script de firewall, nesse servidor tenho o LAMP (apache2, mysql5 e php5) testados e o apache2 executando na porta 80 e os arquivos .php estão em /var/www/html.
EU devo estar fazendo algo de errado ou no script de firewall ou no squid.conf.
------------------------------------------------------------------------------------------------------------------------------------------------------------
SCRITP DE FIREWALL
------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash
#Reseta as regras do Firewall
iptables -F
iptables -X
iptables -F -t nat
#Libera a interface lo (autoteste loopback)
iptables -A INPUT -i lo -j ACCEPT
#Carrega os módulos
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
#Regra para o redirecionamento do squid
#Regra de Redirecionamento do Squid
#Tudo que chegar o servidor antes de ser roteado pela interface eth0 com destino a #porta 80 e utilizando o protocolo tcp
#sera redirecionado para a porta 3128
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
#Libera o acesso da rede atraves da porta 3128 quando utilizar protocolo tcp
iptables -A INPUT -p tcp -s 10.0.0.0/8 --dport 3128 -j ACCEPT
#Libera o acesso da rede atraves da porta 3128 quando utilizar protocolo tcp
iptables -A INPUT -p udp -s 10.0.0.0/8 --dport 3128 -j ACCEPT
#Ativa o roteamento nat
iptables -t nat -A POSTROUTING -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
------------------------------------------------------------------------------------------------------------------------------------------------------------
squid.conf
------------------------------------------------------------------------------------------------------------------------------------------------------------
#Aqui definimos a porta que o servidor utilizara e que o acesso sera transparente
http_port 3128
url_rewrite_program /var/www/html/index.php
#Aqui definimos o nome do host na rede
visible_hostname localhost
#Aqui definimos o email do administrador de rede
cache_mgr jorge.pinto@sp.senai.br
#Aqui definimos o diretorio que contem as mensagens de erros em portugues
error_directory /usr/share/squid3/errors/Portuguese
#Define palavras que se for encontradas na url, a pagina sera ser carregada direto do cache.
hierarchy_stoplist cgi-bin ?
#Define a quantidade de memoria que o servidor ira usar para o cache.
cache_mem 256 MB
#Define o tamanho máximo do objeto que poderá ser armazenado na memória, senão será armazenado no disco rÃÂgido.
maximum_object_size_in_memory 2 MB
#Define o tamanho máximo do objeto que poderá ser armazenado no disco rÃÂgido, senão será descartado o objeto.
maximum_object_size 8 MB
#Especifica o diretório do cache, aonde será armazenado os objetos
#cache_dir [sistema_arquivos] [diretorio] [tamanho cache] [qtde_diretorios] [qtde_subdoretorios]
cache_dir ufs /var/spool/squid3 256 128 256
#Define o tempo de vida dos objetos no cache, para que sempre o squid for verificá-los e saber se é necessário atualizá-los ou não.
#refresh_pattern [objeto] [tempo em minutos] [porcentagem de alteracao] [tempo em minutos]
refresh_pattern ^ftp: 360 20% 10080
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
#Define o caminho para o log de acessos
access_log /var/log/squid3/access.log
#Define o caminho para o log do cache
cache_log /var/log/squid3/cache.log
#Define duas acl (localhost e minharede) do tipo src (IP de origem) e adiciona o ip do servidor e o ip da rede
acl all src all
acl localhost src 127.0.0.1/32
acl minharede src 10.0.0.0/8
#Crie uma acl (manager) 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.
#acl manager proto cache_object
#Permite que apenas o servidor tenha acesso a informacoes do servidor
http_access allow manager localhost
#Nega o acesso aos demais
http_access deny manager
#Cria 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.
acl purge method PURGE
#Configura para que apenas o servidor tenha permissao de excluir objetos do cache
http_access allow purge localhost
#Nega a exclusao de objetos do cache aos demais
http_access deny purge
#Cria 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
#Bloqueia o acesso em portas que não foram liberadas
http_access deny !Safe_ports
#Cria 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
#Crie uma acl do tipo port (porta) e adiciona as portas dos protocolos com SSL
acl SSL_ports port 443 # https
acl SSL_ports port 563 # nntps
acl SSL_ports port 873 # rsync
#Bloqueia o acesso em portas que não foram liberadas para conexão direta,
http_access deny connect !SSL_ports
#ACLS DE CONTROLE DE ACESSOS#
#Cria uma acl do tipo src (IP de origem) e adicione os ips que serao bloqueados
#Cria uma acl do tipo src (IP de origem) e adicione os ips que serao liberad os
acl ips_liberados src "/etc/squid3/restricoes/ips_liberados"
acl ips_bloqueados src "/etc/squid3/restricoes/ips_bloqueados"
#Cria uma acl do tipo url_regex (expressão regular na url) que sera utilizad a para bloquear palavras
acl palavras url_regex -i "/etc/squid3/restricoes/palavras"
#A acl do tipo urlpath_regex é semelhante a url_regex, só que é ignorado o d omÃÂnio e protocolo
#Vamos utilizar para bloquear extensoes de arquivos
acl download_bloqueado urlpath_regex -i "/etc/squid3/restricoes/download_bloqueado"
acl download_liberado urlpath_regex -i "/etc/squid3/restricoes/download_bloqueado"
#Cria uma acl (sites_liberados) do tipo dstdomain (domÃÂnio de destino) e adicione um dóminio iniciando com o ponto
acl sites_liberados dstdomain "/etc/squid3/restricoes/sites_liberados"
#Cria uma acl (sites_bloqueados) do tipo dstdomain (domÃÂnio de destino) e adicione um dóminio iniciando com o ponto
acl sites_bloqueados dstdomain "/etc/squid3/restricoes/sites_bloqueados"
#Permite o acesso irrestrito aos ips bloqueados
http_access allow ips_liberados
#Nega o acesso aos ips bloqueados
http_access deny ips_bloqueados
#Nega o acesso a acl download bloqueado
http_access deny download_bloqueado
#Permite o acesso a acl download_liberado
http_access allow download_liberado
#Nega o acesso a acl sites_bloqueados
http_access deny sites_bloqueados
#Permite o acesso a acl sites_liberados
http_access allow sites_liberados
#Nega o acesso as palavras da acl palavras
http_access deny palavras
#Permite que somente a rede e o servidor acessem a internet pelo proxy
#Essa regra tem de estar sempre no final do arquivo de configuracao
http_access allow minharede
http_access allow localhost
#Nega os demais
http_access deny all
VALEU XD