Squid com problemas usando Load Balance



  • Pessoal,

    Estou com problemas no squid quando eu uso o load balance.. o mesmo não está funcionado quando o link principal cai.. e o outro assume, não possível navegar com o link secundário.. será necessário fazer alguma configuração extra ??  Na opção está marcado somente LAN e o habilitado proxy transparante..



  • Você precisa criar uma regra de balanceamento na floating rules para funcionar



  • Marcello. Boa Noite.

    Voce poderia explicar com um passo a passo a criação da regra de load balance? O topico relacionado está um pouco confuso. Creio que isso esteja confundindo alguns colegas. Se tiver como explicar de uma forma detalhada a criação desta regra eu me proponho a fazer um tutorial explicativo dela.

    Abraços.

    ATT

    Breno Alencar



  • A mesma regra que você criou na lan, você cria na aba floating.

    As regras no pfsense são criadas na interface de origem do pacote. O squid, como esta instalado no próprio servidor, inicia suas comunicações pelo localhost.

    Estou no telefone agora, quando chegar em casa, mando um screenshot.



  • Marcello. Aguardo ancioso pela sua resposta. Vamos tentar de uma vez por todas sanar todas as duvidas no que diz respeito a regras e configuração do loadbalance com squid. Eu mesmo tenho algumas duvidas em relação a isso e adoraria poder tirá-las. Vamos tentar colocar todos os passos para a  crição desse tutorial unificado colocando desde a criação do loadbalance e failover, configuração de parametros no squid, criação de regras para bancos e para conexões https, criação de regras para saída determinada de gateway atraves de porta de conexão ou ip de usuário. Enfim, tudo o que tiver gerando duvidas eu me proponho a unir todas eles em um grande tutorial para toda nossa comunidade.

    Espero que voce nos ajude. kkkk…com voce nos guiando tenho certeza qu pode sair coisa boa nesse tuto.

    Obrigado. NO Aguardo. Abraços

    ATT

    Breno Alencar



  • Acredito que este pdf explica detalhadamente o que escrevi.

    Se ainda sobrar alguma dúvida, posta aqui  :)

    http://securite-ti.com/pfSense_Web_Proxy_with_multi-WAN_links.pdf



  • Marcello.

    Perfeito. Vou traduzir esse tuto e acrescentar mais algumas coisas nele para ajudar o pessoal que por ventura ainda tiver duvidas. Ainda pedindo uma contribuição sua, teria como voce descrever a criação de regras para acesso a bancos por um determinado link? Creio que essa seja uma duvida pertinente a muitos e eu já incluiria no tutorial. Aguardamos sua resposta.

    Abraços e um ótimo dia de trabalho a voce.

    ATT

    Breno Alencar



  • para restringir o acesso a bancos e determinados sites somente por um link.

    modo fácil:

    Criar uma regra na LAN com

    source LAN NET
    destination any
    destination port 443
    gateway: (gatewayA ou gatewayB ou fail over criado na aba routing)

    modo mais detalhado e seguro:

    Crie um alias chamado hosts_bancos por exemplo
    defina ele com tipo host

    adicione todas os hosts de url que voce conhece do banco.
    exemplo
    www.bb.com.br
    www.itau.com.br

    caso o banco tenha vários hosts com nomes diferentes para o servico de https( www2,www333,www01)
    resolva o ip do site principal

    
    nslookup www.bb.com.br
    Non-authoritative answer:
    Name:	www.bb.com.br
    Address: 170.66.11.10
    
    

    pesquise o ip encontrado no site whois.registro.br, para encontrar a faixa de ip deste banco

    no caso do banco do brasil, a faixa é 170.66/16

    crie um segundo alias chamado redes_bancos
    defina ele com tipo network
    adicione as redes encontradas
    170.66.0.0/16

    Depois de criar e associar todos os sites nos aliases,

    vá em firewall -> rules -> lan  e crie uma regra para cada alias de banco da seguinte forma

    Criar uma regra na LAN com

    source LAN NET
    destination hosts_bancos
    destination port 443
    gateway: (gatewayA ou gatewayB ou fail over criado na aba routing)

    source LAN NET
    destination redes_bancos
    destination port 443
    gateway: (gatewayA ou gatewayB ou fail over criado na aba routing)



  • Na verdade nem precisa de tudo isso.

    Se seu PFSense for o 2.0.0 ou o 2.0.1, basta configurar os Gateways em SYSTEC>ROUTING e depois no mesmo lugar criar um Grupo.

    Tutorial em Ingles: http://doc.pfsense.org/index.php/Multi-WAN_2.0
    Tutorial em Portugues: http://pontoexe.wordpress.com/2010/11/01/configurando-loadbalance-no-pfsense-2-0/

    Depois que fizer o que esta descrito nos tutoriais, va em System> Advanced e clique na aba Miscellaneous, clique na opcao Allow default gateway switching.

    Nao esqueca de colocar o Gateway nas regras de saida Firewall, o Squid ira alternar entre as conexoes normalmente, apenas com um lease de 2 a 3 segundos.



  • Marcello.

    Seguindo o tutorial, em Services - Proxy server / General settings, escolhendo LAN e loopback interface a seguinte mensagem de erro ocorre com todas as tentativas de acesso a qualquer página:

    ERRO
    A URL solicitada não pode ser recuperada

    Na tentativa de recuperar a URL:

    GET / HTTP/1.1
    Host: www.terra.com.br
    User-Agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
    Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip, deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Connection: keep-alive

    O seguinte erro foi encontrado:

    Requisição inválida.

    Alguns aspectos de requisição HTTP são invalidos. Possíveis causas:

    Método desconhecido ou faltando (GET, POST)
        Faltou a URL
        Faltou o identificador HTTP (HTTP/1.0)
        A requisição pode ser muito grande
        Hostname com caracter inválido; não é permitido o uso de underscores

    Se eu tirar a interface LoopBack a páginas voltam ao normal. O que poderia tá errado?

    Abraços…

    ATT

    Breno Alencar



  • Qual tutorial você esta seguindo? O seu ou um dos que foi postado?

    Você esta usando proxy transparente ou marcado no browser?



  • Marcello:

    A - Segui o tutorial:

    http://securite-ti.com/pfSense_Web_Proxy_with_multi-WAN_links.pdf

    Usando PFSense:

    2.0.1-RELEASE (i386)
    built on Mon Dec 12 18:24:17 EST 2011

    B - Pacotes:

    Squid + SquidGuard + HAPV

    C - 2 Links de Internet:

    1 - OI ( OPT1 ) ADSL
    2 - Embratel ( WAN ) Link Dedicado Frame Relay

    Em System: Advanced: Miscellaneous - As opções:

    • Use sticky connections
    • Allow default gateway switching

    Estão Marcadas.

    Se precisar de mais algum detalhe estou a disposição.

    ATT

    Breno Alencar



  • Onde está o havp nesta hierarquia de proxy?



  • Marcello. Sinceramente não entendi sua pergunta.

    Desculpas.

    ATT

    Breno Alencar



  • Galera,

    Bom dia, tambem seguir a risca os passos do tutorial - Tutorial em Ingles: http://doc.pfsense.org/index.php/Multi-WAN_2.0
    o Loab Balance Funcionou até Instalar o Squid em modo transparente, que acusou o mesmo erro do colega acima

    ERRO
    A URL solicitada não pode ser recuperada

    Na tentativa de recuperar a URL:

    GET / HTTP/1.1
    Host: www.terra.com.br
    User-Agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
    Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip, deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Connection: keep-alive

    O seguinte erro foi encontrado:

    Requisição inválida.

    Alguns aspectos de requisição HTTP são invalidos. Possíveis causas:

    Método desconhecido ou faltando (GET, POST)
        Faltou a URL
        Faltou o identificador HTTP (HTTP/1.0)
        A requisição pode ser muito grande
        Hostname com caracter inválido; não é permitido o uso de underscores

    O que será que falta ??



  • @breno.uni:

    Marcello. Sinceramente não entendi sua pergunta.

    Como você integrou o pacote havp com o squid?

    O havp é parent do squid ou é ele quem esta funcionando em modo transparente?



  • Marcello. O HAVP estava como parent do squid. Mas para dar continuidade ao nosso tópico sem mudar de direção acabei desistalando o HAPV para que o tópico fique somente relativo ao loadbalance + squid.

    Mas um colega no tópico relata um erro igual ao meu usando o squid em modo transparente com loadbalance.

    Ficamos no aguardo de suas orientações.

    Abraços

    ATT

    Breno Alencar



  • Ficamos no aguardo de suas orientações.

    Não fui eu que fiz o tutorial, apenas o indiquei para ilustar como criar as regras na "floating rules"  :)

    Vou tentar seguir os passos para ver onde para, mas não tenho este ambiente aqui em casa, pode demorar um pouco.

    Tente ver o que pode estar errado comparando este tutorial de squid.

    att,
    Marcello Coutinho



  • Marcelo,

    Vc pode simular o ambiente usando virtual box e tres placas virtuais, eu mesmo simulei aqui em casa, só que usando uma maquina física que tenho para teste, coloquei os dois links, um com ip fixo e outro com dhcp e seguir o tutorial.. e tambem apresentou o mesmo erro dos demais colegas, somente o uso do squid.

    pode q pode ter aalgo errado ai..



  • Galera,

    aparece que o negocio é mais serio que eu imaginava.

    http://forum.pfsense.org/index.php?topic=37083.45

    E fica duvida.. será que funciona mesmo o Balanceamento de Carga+Failover+squid ?? Já tentei de tudo, inclusive
    adicionado uma regra de DNS 53 em FloatingRules e não funcionou..



  • você configurou estes passos?

    After manually adding my subnet in the "Allowed subnets" box, my dual wan, squid setup is now functioning using pfSense Version 2.0-Release (i386)

    but as the Ermal said, just putting the "tcp_outgoing_address 127.0.0.1" worked for me.



  • Marcelo,

    a segunda opção sim.. porem a primeira onde fica essa configuração.

    Eu só espero não ter que mudar para outra distribuição.. já sai do endian para pfsense justamente
    por isso.



  • Eu utilizou loadbalance com squid sem problmas



  • Souza,

    Poderia passar as telas de configuração que vc fez. seria uma ótima, talvez estamos esquecendo de habilitar ou configurar algo.



  • @thiagomespb:

    a segunda opção sim.. porem a primeira onde fica essa configuração.

    aba access control primeiro campo



  • Ta osso..

    acabei de colocar a faixa de ip da minha rede.. em  access control.. e não funcionou..



  • OK segue um passo a passo do que eu exatamente fiz e quando monitoro os link observo navegação em ambos os link, utilizo Squid + SquidGuard

    E quando desligo um o outro assume

    Melhorias pode falar

    Bom não sei se podia mas estou colocando o link do docx para download

    www.piocom.com.br/download/Loadbalance+FailOver.docx

    abs

    Por Favor postem os resultado aqui.

    Souza Linux



  • Senhores,

    É exatamente como o texto confeccionado pelo Souza Linux. Não há segredo algum fazer Loadbalance/Failover para conexões HTTP/HTTPS com Squid. Basta marcar as opções citadas no texto dele em: System->Advanced->Miscellaneous:

    • Use sticky connections: Que preserva seções HTTPS

    • Allow default gateway switching: Que executa o switching entre os gateways (procurem trabalhar sem "default gateway"… usem os pesos (Tiers) como fez o Souza Linux)

    Nas versões BETA e RCs do pfSense 2.0 nós até tínhamos alguns bugs em relação ao LoadBalance com Squid. Mas tudo isso foi resolvido na versão 2.0 Final e está 100% funcional.

    • Não é mais preciso gerar uma regra em Floating!~

    Abraços!
    Jack



  • @souzalinux:

    Bem, ao que parece estamos enfrentando uma pequena e momentânea instabilidade no blog da comunidade. Mas isso deve ser resolvido até segunda-feira.

    No estamos mais… o blog está novamente no ar: http://www.pfsense-br.org/blog/

    ;)

    Abraços!
    Jack



  • JackL.

    Poderia fazer um tutorial definitivo em relação ao Load Balance + Squid?

    Assim voce poderia tirar todas as duvidas restantes a esse tema e darmos como resolvido o asssunto.

    No tutorial voce poderia explicar como funciona os TIER's. Como e quando colocar TIER1 e TIER2. Esclarecer qual é  relação de peso dos links e como configurar de forma correta.

    Poderia explicar a opção advanced e suas respectivas funções.

    Toda a comunidade iria agradecer mais essa imensa ajuda sua.

    Esperamos pelo seu retorno.

    Abraços

    ATT

    Breno Alencar



  • @breno.uni:

    JackL.

    Poderia fazer um tutorial definitivo em relação ao Load Balance + Squid?

    Assim voce poderia tirar todas as duvidas restantes a esse tema e darmos como resolvido o asssunto.

    No tutorial voce poderia explicar como funciona os TIER's. Como e quando colocar TIER1 e TIER2. Esclarecer qual é  relação de peso dos links e como configurar de forma correta.

    Poderia explicar a opção advanced e suas respectivas funções.

    Toda a comunidade iria agradecer mais essa imensa ajuda sua.

    Esperamos pelo seu retorno.

    Abraços

    ATT

    Breno Alencar

    O balanceamento baseado em tier, tenta usar todos os gateway definidos no mesmo tier antes de tentar outro nível.

    Se você tiver dois links em tier1 e um link em tier2, este último só será utilizado caso os dois primeiros fiquem offline



  • Souza,

    Vc já testou acessar a internet quando o link 1 estiver fora ?? pq o load balance+fail over junto com squid funciona somente com
    o link 1 ativo, se ele cair da erro..

    Faz o teste ai.. por favor.. e posta o resultado..



  • Pessoal,

    Queria dizer a todos que reinstalei o pfsense, instalei o squid, refiz toda configuração do load balancee e deu certo.. Estou usando o seguindo
    link e não apresenta a mensagem de erro do squid.



  • OK pode postar qual tutorial você seguiu e versão do pfsense para que nossos amigos que estão com problema poderem resolver?

    abs

    Souza Linux



  • @marcelloc:

    @breno.uni:

    JackL.
    Poderia fazer um tutorial definitivo em relação ao Load Balance + Squid?
    Assim voce poderia tirar todas as duvidas restantes a esse tema e darmos como resolvido o asssunto.
    No tutorial voce poderia explicar como funciona os TIER's. Como e quando colocar TIER1 e TIER2. Esclarecer qual é  relação de peso dos links e como configurar de forma correta.
    Poderia explicar a opção advanced e suas respectivas funções.
    Toda a comunidade iria agradecer mais essa imensa ajuda sua.
    Esperamos pelo seu retorno.

    O balanceamento baseado em tier, tenta usar todos os gateway definidos no mesmo tier antes de tentar outro nível.
    Se você tiver dois links em tier1 e um link em tier2, este último só será utilizado caso os dois primeiros fiquem offline

    Bem, em relação aos Tiers (pesos/prioridades), o marcelloc já matou a lebre. Funciona exatamente como ele colocou… Em outras palavras, no caso específico de 2 links WANs, se ambos tiverem o mesmo Tier, você tem um LoadBalance implementado. Do contrário (gateways com Tiers diferentes), você tem um Failover implementado. Lembrando que quanto menor o Tier, maior sua prioridade no grupo de gateways!

    breno.uni, assim que eu conseguir o menor tempo disponível possível, farei um tutorial "mais completo'' sobre o tema e deixarei no nosso blog (é sempre bacana visitar o blog semanalmente, pelo menos - afim de se manter atualizado com o material postado por lá): http://www.pfsense-br.org/blog/

    Abraços!
    Jack



  • Ótima noticia Jackl.

    Com o seu tutorial elaborado com certeza poderemos dar como resolvido todos os tópicos relativos ao loadbalance + squid e assim ajudar todos os colegas que estão tendo dificuldades em relação ao assunto.

    Nossos agradecimentos pela ajuda e aguardamos o seu material em nosso blog.

    Abraço e um ótimo dia de trabalho.

    ATT

    Breno Alencar



  • JackL,

    O domínio está suspenso do blog pfsense…. se vc tiver problemas em ativar.. eu tenho dois servidores de hospendagem..
    e posso disponibilizar sem custo para o blog.

    Qualquer coisa entra em contato..



  • Tenho conta em provedor de hospedagem também, um domínio ou 100 é o mesmo preço  ;)



  • Perfeitamente Senhores…

    O problema de inoperância do blog se deu em função de um incidente técnico com a VM do webhosting. O pessoal responsável já está verificando e em breve tudo deve estar normalizado.

    Nota importante: Se o problema persistir ou tivermos limitações técnicas para executarmos o nosso planejamento (repositório dos pacotes desenvolvidos por nossos membros, etc…), certamente vamos migrar o blog para outro webhosting! ;)

    Abraços!
    Jack



  • O blog está no ar novamente! ;)

    Abraços!
    Jack


Locked