+ Responder ao Tópico



  1. #1
    whinston
    Visitante

    Padrão Squid em 2 portas

    Galera, poderia simplesmente testar, mas gostaria de uma opinião de vcs antes.

    Tenho clientes que tem acesso liberado na porta 80 (alguns IPs "privilegiados") e a maioria tem que acessar via proxy autenticado.

    Estava pensando em colocar 2 instâncias do squid pra rodar, ou seja, deixar a grande maioria com o autenticado e colocar um squid transparente pro pessoal que tem acesso liberado.

    Isto porque este pessoal que tem acesso liberado diz que tem que ter acesso total e irrestrito porque tem coisa que o proxy não abre, etc.. Mas eu desconfio que eles tão acessando coisas que não deve, mas não tenho como comprovar.

    Tecnicamente é possível rodar um squid autenticado na porta 8080 e colocar um transparente na 3128, fazendo com que o tráfego da 80 nestes ips privilegiados passe pelo transparente ?

  2. #2
    whinston
    Visitante

    Padrão erro

    coloquei as 2 instâncias conforme falei acima.
    criei um diretório /usr/local/squid/auth e outro /usr/local/squid/transp
    em cada um destes diretórios tem todos os arquivos para cada squid
    testei ambos isoladamento e estão OK

    quando levando os 2 processos, o transparente na 3128 e o autenticado na 8080, apenas o autenticado funciona. quando tento acessar o transparente, ele diz que a conexão foi recusada, para procurar o admin do proxy, ou seja, vou até o espelho ou a under

  3. #3
    whinston
    Visitante

    Padrão mesmo .conf

    o morfético tá usando os mesmo parametros!
    negócio é compilar um pra transparente e outro pra autenticado

  4. #4
    Visitante

    Padrão Squid em 2 portas

    voce esta utilizando redirecionamento de porta com iptables pra fazer o proxy transparente ?

    caso sim vc tem que especificar quais source ip NAO serao redirecionados.
    ex :

    iptables -t nat -A PREROUTING -p tcp -s ! 1.2.3.4 -j REDIRECT --to-port 3128


    []´s

  5. #5
    whinston
    Visitante

    Padrão passo a passo

    na verdd ainda não cheguei neste passo dos testes
    estou informando via browser inicialmente, pra depois partir pras regras. abs

  6. #6
    whinston
    Visitante

    Padrão não vai

    Citação Postado originalmente por Anonymous
    voce esta utilizando redirecionamento de porta com iptables pra fazer o proxy transparente ?

    caso sim vc tem que especificar quais source ip NAO serao redirecionados.
    ex :

    iptables -t nat -A PREROUTING -p tcp -s ! 1.2.3.4 -j REDIRECT --to-port 3128


    []´s

    configurando no browser vai.. agora mesmo aplicando a regra de redirecionamento do tráfego, não funciona

  7. #7
    whinston
    Visitante

    Padrão o erro q da

    ERRO
    A URL solicitada não pode ser recuperada

    Na tentativa de recuperar a URL: /

    O seguinte erro foi encontrado:

    * URL inválida

    Alguns aspectos de requisições URL são incorretos. Possíveis causas:

    * Protocolo de acesso incorreto ou faltando (deve ser `http://` ou similar)
    * Faltou o hostname
    * Hostname com caracter inválido; não são permitidos underscores.

  8. #8
    whinston
    Visitante

    Padrão faltava coisa

    httpd_accel_host virtual
    httpd_accel_port 80
    httpd_accel_with_proxy on
    httpd_accel_uses_host_header on

    faltava isto no squid.conf do autenticado!
    agora tenho 2 proxys!! viva!!!

  9. #9

    Padrão Squid em 2 portas

    Q loco isso.....ta funcionando beleza???

  10. #10
    whinston
    Visitante

    Padrão ok

    Citação Postado originalmente por lacierdias
    Q loco isso.....ta funcionando beleza???
    ta sim kra, perfeito.
    a unica dica que daria eh pra compilar um squid pra cada função, pois mesmo informando o .conf a ser usado, ele não segue bem isto.

    então na hora de compilar, gera um /usr/local/squidauth e outro /usr/local/squidtransp por exemplo

  11. #11
    CRASH2k
    Visitante

    Padrão Re: ok

    Só para completar...

    Neste caso não é muito vantajoso fazer a compilação para cada um não. O problema que vc teve foi com o modo acelerado. A linha "httpd_accel_with_proxy on" é o que te permitiu a utilização do proxy manual e transparente ao mesmo tempo (isto funciona bem).

  12. #12
    whinston
    Visitante

    Padrão Re: ok

    Citação Postado originalmente por CRASH2k
    Só para completar...

    Neste caso não é muito vantajoso fazer a compilação para cada um não. O problema que vc teve foi com o modo acelerado. A linha "httpd_accel_with_proxy on" é o que te permitiu a utilização do proxy manual e transparente ao mesmo tempo (isto funciona bem).
    negativo amigo, pelo seguinte
    o squid tenta usar 2 arquivos .conf e se um é autenticado e outro transparente, sendo os .conf distintos, vc pode tentar informar na sintaxe, mas isto não tava sendo respeitado, por isto, recomendo compilar um apontando pra /usr/local/squidtransp e outro pra /usr/local/squidauth, sendo que cada um terá um etc e um .conf diferente

    abraços

  13. #13
    CRASH2k
    Visitante

    Padrão Re: ok

    Para configurar o Squid como proxy transparente vc precisa habilitar a configuração do modo acelerado. Fazendo isto, vc faz com que o squid se comporte como se fosse o servidor de destino final. Por isto a autenticação falha. Como é que vc poderia diferenciar qdo a solicitação de senha é do site remoto ou do Squid. É mais ou menos isto. Para usar em modo acelerado e proxy ao mesmo tempo vc precisa que o servidor tb aceite a configuração de proxy convencional. O que vc acha que significa a linha "httpd_accel_with_proxy"?

    Faz um teste e verá que é assim que funciona... dá uma olhada com calma na documentação do Squid que você verá que é exatamente o que estou dizendo.

  14. #14
    CRASH2k
    Visitante

    Padrão Re: ok

    Aliás, se o negócio é fazer que determinados usuário não precisem ser autenticados vc poderia criar um ACL que identificasse o IP ou MAC desses caras e faria a combinação das ACLs para validação de usuários, tipo:

    ...
    acl usuarios proxy_auth REQUIRED
    acl usu_priv src "/etc/squid/acl/usupriv"
    ...

    http_access deny !usuarios !usu_priv

    Ou seja, quem estiver no arquivo usupriv passa direto sem autenticação. E o lance do modo acelerado vc mata com a opção httpd_accel_with_proxy.

    Mas blz, sei que o seu esquema também funciona... não tô questinando como vc fez. Ambos funcionarão!!! É que esse seu esquema não é muito comum, mas blz! O importante é que funciona! (rs)

    Pelo iptables vc tb poderia fazer um bypass completo sobre o proxy (mesmo transparente) - faço isto para dois caras! É só usar o alvo RETURN.

  15. #15
    Visitante

    Padrão Re: ok

    hehehe, e para completar (novamente)...

    1. A combinação de ACLs que comentei, comigo só funcionou na sequencia (fui confirmar o que afirmei (rs)):

    http_access deny !usu_priv !usuarios

    2. A autenticação funcionará para quem configurar o proxy manualmente - do contrário, cairia no rolo de diferenciar a autenticação do servidor de destino e a do squid. Nada que o NATACL não resolvesse. Mas a porta para autenticação e proxy transparente pode ser a mesma (pelo menos é o que fiz). Vc quem escolhe.

    3. É claro que o REDIRECT só deve ser feito para quem não será autenticado. Para os demais vc não deve permitir o roteamento direto sob a porta 80. Ai blz!!!

    PS.: Qdo puder, faz esse teste... eu acho que vc terá um ganho em relação ao consumo de recursos do servidor e é mais simples que ficar analisando dois arquivos de configuração.

    Eu não faço mais isto... agora estou fazendo a combinação Dansguardian + Squid... fica bom heim!!!

  16. #16
    whinston
    Visitante

    Padrão Re: ok

    Citação Postado originalmente por CRASH2k
    Aliás, se o negócio é fazer que determinados usuário não precisem ser autenticados vc poderia criar um ACL que identificasse o IP ou MAC desses caras e faria a combinação das ACLs para validação de usuários, tipo:

    ...
    acl usuarios proxy_auth REQUIRED
    acl usu_priv src "/etc/squid/acl/usupriv"
    ...

    http_access deny !usuarios !usu_priv

    Ou seja, quem estiver no arquivo usupriv passa direto sem autenticação. E o lance do modo acelerado vc mata com a opção httpd_accel_with_proxy.

    Mas blz, sei que o seu esquema também funciona... não tô questinando como vc fez. Ambos funcionarão!!! É que esse seu esquema não é muito comum, mas blz! O importante é que funciona! (rs)

    Pelo iptables vc tb poderia fazer um bypass completo sobre o proxy (mesmo transparente) - faço isto para dois caras! É só usar o alvo RETURN.

    seu método é bem interessante e mais inteligente cara.. num fazia idéia que seria possível pois oq "fode" é aquela caixa do squid pedindo autenticação e tem muitos programas arcaicos (banco, governo, etc) que não funcionam desta forma.

    não entendi direito, vou dar umas relidas (várias) e tentar aplicar aqui, rs

  17. #17
    Visitante

    Padrão Re: erro

    Citação Postado originalmente por whinston
    coloquei as 2 instâncias conforme falei acima.
    criei um diretório /usr/local/squid/auth e outro /usr/local/squid/transp
    em cada um destes diretórios tem todos os arquivos para cada squid
    testei ambos isoladamento e estão OK

    quando levando os 2 processos, o transparente na 3128 e o autenticado na 8080, apenas o autenticado funciona. quando tento acessar o transparente, ele diz que a conexão foi recusada, para procurar o admin do proxy, ou seja, vou até o espelho ou a under
    Hã??? Hakuna Matata!