Erro na liberação de IP [RESOLVIDO]

1. Erro na liberação de IP [RESOLVIDO]

emerson
cpdrede

(usa CentOS)

Enviado em 10/11/2010 - 13:56h

E ai pessoal, gostaria de pedir ajuda pra vcs, montei um proxy na empresa que trabalho e quando coloco uma acl para liberar algumas ips da rede interna, não funciona,alguem poderia dar uma olhada no conf que montei e se possivel me mostrar o erro.
PS - Os arquivos estão com opção de execução (755) e contem todos os ips da minha rede interna.
Segue o arquivo

##################################################
############## Configuracoes padrao ##############
### Porta padrao do Squid e Nome do Servidor ###
##################################################

http_port 192.168.1.1:3128
visible_hostname Servidor

#Nao salva paginas dinamicamentes
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

##################################################
######### Regras de Cache #########
##################################################
cache_mem 64 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 1024 16 256
cache_access_log /var/log/squid/access.log
client_netmask 255.255.255.0
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
error_directory /usr/share/squid/errors/Portuguese/
emulate_httpd_log on

##################################################
########## Configuracao Minima ##########
##################################################
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 80 443 563 70 210 280 488 59 777 901 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT

##################################################
########## Direitos de Acesso ##########
##################################################

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

##################################################
## Programa de autenticacao e arquivo de senhas ##
##################################################

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/usuarios
auth_param basic realm REDE PROTEGIDA POR SENHA
auth_param basic children 5
auth_param basic credentialsttl 5 minutes
auth_param basic casesensitive on

##################################################
########## Criacao das ACLS ##########
##################################################

acl ips_rede_liberados src "/etc/squid/arquivos/ips_rede_liberados"
acl autenticados proxy_auth REQUIRED
acl sites_permitidos url_regex -i "/etc/squid/arquivos/sites_permitidos"
acl dominios_bloqueados dstdomain "/etc/squid/arquivos/dominios_bloqueados"
acl sites_bloqueados url_regex -i "/etc/squid/arquivos/sites_bloqueados"
acl extencao_bloqueadas url_regex -i "/etc/squid/arquivos/extencao_bloqueadas"
acl palavras_proibidas urlpath_regex -i "/etc/squid/arquivos/palavras_proibidas"
acl ips_bloqueados dstdomain "/etc/squid/arquivos/ips_bloqueados"
acl ips_rede_bloqueados src "/etc/squid/arquivos/ips_rede_bloqueados"
acl max_conection maxconn 10

##################################################
########## Liberacoes das ACLS ##########
##################################################

http_access allow ips_rede_liberados
http_access allow autenticados

http_access allow sites_permitidos
http_access deny all

http_access deny dominio_sbloqueados
http_access deny sites_bloqueados
http_access deny palavras_proibidas
http_access deny ips_bloqueados
http_access deny ips_rede_bloqueados
http_access deny extencao_bloqueadas
http_access deny max_conection redelocal

acl redelocal src 192.168.1.0/24
http_access allow localhost
http_access allow redelocal

http_access deny all


  


2. Ordem das acl

Jefferson de Souza Santos
Jeffersonsdk

(usa Debian)

Enviado em 10/11/2010 - 14:12h

Boa tarde amigo,

Carinha no squid as ordem das acl são tudo, o squid le linha a linha, faça o seguinte as linhas referente a autenticação que se encontra acima da regra de criação das acls sobe la pra cima, ela deve existir acima da porta 3128, e já onde vc força a autenticação inverte com a acl de liberação ficando assim, acl autenticados proxy_auth REQUIRED
acl ips_rede_liberados src "/etc/squid/arquivos/ips_rede_liberados"

cria o arquivo debtro de /etc/squid/arquivos/ips_rede_liberados e adciona o ip que deseja liberar, lembrando que um abaixo do outro, restart o squid com o comando squid -k reconfigure e prontinho, testa e posta o resultado ae




3. Re: Erro na liberação de IP [RESOLVIDO]

emerson
cpdrede

(usa CentOS)

Enviado em 10/11/2010 - 14:49h

Opa blz, acho que me espressei mal.
A autenticção ta funcionando belezinha, e ja criei o arquivo com os ip e comentei os que quero que bloqueiem e tal, o que pega é que os ips que quero que fiquem fora do proxy, não funciona, não quero fazer isso via iptables, queria vi squid mesmo.


4. Re: Erro na liberação de IP [RESOLVIDO]

João Paulo Carneiro
jptudobem

(usa Debian)

Enviado em 10/11/2010 - 14:53h

0.0


5. Re: Erro na liberação de IP [RESOLVIDO]

emerson
cpdrede

(usa CentOS)

Enviado em 10/11/2010 - 18:25h

Então jptudobem, mesmo fazendo isso, bloqueando primeiro e liberando depois, o que acontece é que na acl de ips_rede_liberados, os ips que coloquei lá, eu tiro o proxy do browser e o mesmo não navega, olhei o arquivo dei permissão dei execução e tal e mesmo assim, esses ips não passam direto pelo proxy. Existe algo errado que ainda não consegui verificar.
Se alguem puder ajudar, acredito ser a dúvida de muitos outros colegas.


6. Re: Erro na liberação de IP [RESOLVIDO]

Leyzen
leyzen

(usa openSUSE)

Enviado em 10/11/2010 - 19:41h

cpdrede, você está querendo liberar os ips do proxy, mantendo o ip do proxy lá nas opções de internet?


7. Re: Erro na liberação de IP [RESOLVIDO]

emerson
cpdrede

(usa CentOS)

Enviado em 10/11/2010 - 19:49h

Então leyzen, eu quero liberar algumas máquinas da minha rede para passarem direto pelo proxy.
Nas opções de internet do browser, vou tirar, não estou usando proxy transparente.
Quero que algumas máquinas passem direto, sem ter que fazer isso via IPTABLES, por enquanto não consegui ainda, por iptables sim, mas quero por squid.
Essas máquinas não vão pedir autenticação para navegar, quando eu faço algumas alteração no squid.conf, e nas maquinas que quero que passem direto, no browser, da erro de coneção.



8. Re: Erro na liberação de IP [RESOLVIDO]

João Paulo Carneiro
jptudobem

(usa Debian)

Enviado em 11/11/2010 - 09:49h

Entendi, bom... já que seu Squid é autenticado, porque não faz o liberação por usuários? Dessa forma você não fica preso às máquinas. Esses usuários tem acesso liberado de qualquer computador.

acl usuarios_liberados proxy_auth_regex "/etc/squid/arquivos/usuarios_liberados.txt"
http_access allow usuarios_liberados




9. Re: Erro na liberação de IP [RESOLVIDO]

emerson
cpdrede

(usa CentOS)

Enviado em 11/11/2010 - 10:40h

Opa, muito obrigado pelas dicas jptudobem, mas ai que mora a questão.
Eu já tinha feito isso, mas como os ips a serem liberados são da diretoria e presidencia da empresa, não queria isso, pois só tive dor de cabeça.
Gostaria realmente de liberar direto pelo squid e não por usuario.
Agradeço a sua atenção e muito obrigado.


10. Re: Erro na liberação de IP [RESOLVIDO]

João Paulo Carneiro
jptudobem

(usa Debian)

Enviado em 11/11/2010 - 11:53h

Retificando o que eu disse no primeiro post, o Squid para na regra em que ele se encaixa, ou seja:

http_access deny ips_rede_liberados
http_access allow ips_rede_liberados

Os ips cadastrados na acl serão bloqueados, mesmo que tenha uma regra que o libere depois.

O certo é ter o allow primeiro.

Agora sim, vamos por partes:

- Você está deixando o browser dessas máquinas liberadas configurado com proxy?

Se não, está errado, tem que estar configurado. O iptables está direcionando todo o tráfego que passa pela porta 80 para a porta 3128. Por isso, mesmo liberando no Squid, não vai navegar.

A única maneira de você deixar o browser sem configuração de proxy é liberando essas máquinas via iptables o que, sinceramente, é o mais certo de se fazer.

Entenda a lógica:

Máquina -> Firewall -> Squid -> Internet

- O que você quer realmente? Deixar essas máquinas fora da autenticação do Squid; fazer com que essas máquinas não sofram bloqueio do Squid; ou fora do Squid completamente?

Se for fora do Squid, você terá que inevitávelmente fazer a regra no iptables.

Se for fora das regras de bloqueio, basta colocar um "http_access allow ips_rede_liberados" acima de todas as regras http_access deny.


11. Re: Erro na liberação de IP [RESOLVIDO]

emerson
cpdrede

(usa CentOS)

Enviado em 11/11/2010 - 14:34h

Então jptudobem, seguindo a idéia, fiz o seguinte, conforme vc me comentou.
No squid, eu liberei os ips que gostaria que ficassem sem pedir autenticação. No browser eu deixo configurado o ip do proxy e passa normalmente, sem pedir autenticação, nas outras estações, pede normal o usuário e senha.
No rc.firewall eu coloquei uma regra com iptables que libera o ip por completo, posso deixar o browser sem nenhuma configuração ou com a configuração do proxy que mesmo assim passa normalmente.
Mas ai vem a minha pergunta.
Se eu fizer conforme falei pelo rc.firewall, e tiver uma máquina com dois browser e no IE por exemplo eu quiser que a navegação seja autenticado e no Mozilla seja direto, como fazer para ter essa situação resolvida.


12. Re: Erro na liberação de IP [RESOLVIDO]

João Paulo Carneiro
jptudobem

(usa Debian)

Enviado em 11/11/2010 - 15:38h

Bom, se você liberou os ips pelo firewall, não há necessidade de colocar a regra no Squid para ignorar a autenticação. Sem essa regra de autenticação você deixa um navegador sem configuração de proxy que vai navegar normalmente, e o outro você deixa com as configurações de proxy, assim vai pedir a autenticação em um e no outro vai passar direto.

Atente-se que, uma vez o navegador configurado com o proxy, mesmo você tendo liberado o ip no firewall, ele vai passar por todas as regras do Squid. Para não ser bloqueado no Squid, basta colocar a regra que disse acima para liberar usuários autenticados já que nesse caso o importante é a autenticação.




01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts