Como configurar corretamente o squid como proxy transparente com autenticação

1

Eu configurei o iptables e o squid com sucesso, agora eu tento executar a autenticação do proxy. Meu squi.conf parece da seguinte maneira:

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/proxy_users
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours

acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32

acl localnet src 10.0.0.0/8     # RFC1918 possible internal network
acl localnet src 172.16.0.0/12  # RFC1918 possible internal network
acl localnet src 192.168.7.0/24
acl passwd proxy_auth REQUIRED

http_access allow localnet passwd
http_access allow localhost
http_access deny all

É de acordo com o livro. Ele funciona na medida em que quando eu inicio o navegador, ele me entrega uma página "Acesso negado". Mas não tenho chance de me autenticar! Ouvi dizer que pode ser que o firefox automaticamente entregue um usuário qualquer, o que, é claro, é negado.

Como posso forçar o navegador a abrir uma caixa de autenticação?

    
por Kai 02.11.2011 / 20:27

4 respostas

4

Sinto muito. Transparente significa que o navegador é redirecionado para o proxy sem saber. Isso implica que o navegador não configurou nenhum proxy, portanto, não configurou nenhuma autenticação de proxy. Ainda mais, o HTTP usado para falar com um proxy é diferente daquele usado em um navegador normal - talk no servidor web.

Como exatamente você está tentando fazer autenticação misturada com proxy transparente? Eu embora de forma imediata, verifiquei o google e confirmei. Onde quer que eu olhe, diz que isso não pode ser feito.

    
por 02.11.2011 / 21:29
2

link

Interception Proxying works by having an active agent (the proxy) where there should be none. The browser is not expecting it to be there, and it's for all effects and purposes being cheated or, at best, confused. As an user of that browser, I would require it not to give away any credentials to an unexpected party, wouldn't you agree? Especially so when the user-agent can do so without notifying the user, like Microsoft browsers can do when the proxy offers any of the Microsoft-designed authentication schemes such as NTLM (see ../ProxyAuthentication and Features/NegotiateAuthentication).

In other words, it's not a squid bug, but a browser security feature.

link

WARNING: authentication can't be used in a transparently intercepting proxy as the client then thinks it is talking to an origin server and not the proxy. This is a limitation of bending the TCP/IP protocol to transparently intercepting port 80, not a limitation in Squid.

    
por 16.01.2012 / 00:36
0

Seu IP está sendo rejeitado, pois somente localnet e localhost são permitidos. Então, adicione outro acl com seu IP, ou faixa de IP. acl myisp src your.ip.goes.here

http_access allow myisp passwd

Em seguida, reinicie e você deverá ser questionado sobre seu nome de usuário e senha.

Para referência futura, verifique /var/log/squid/access.log para futuros erros de autenticação do squid.

    
por 02.11.2011 / 21:22
0

Você não pode.

link

Se o seu problema for a configuração automática dos clientes, verifique o WPAD.

    
por 02.11.2011 / 21:28