Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Proxy transparente + filtro SSL + E2guardian - Solução definitiva

    Scheduled Pinned Locked Moved Portuguese
    33 Posts 6 Posters 11.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      remix
      last edited by

      Bom dia gente,
      Tenho buscado o que acredito ser o "melhor dos mundos" do que temos disponível hoje e acredito que seja útil para muita gente.

      • Proxy transparente ou via WPAD.
      • Filtro para paginas SSL, sem precisar instalar certificado em todos dispositivos.
      • E2guardian já que o squidguard ficou muito defasado.

      Tentei um lab seguindo o tutorial abaixo, mas caio no problema de alguns sites HTTPS estarem apresentando problema intermitente e não achei uma solução.

      https://eliasmoraispereira.wordpress.com/2017/06/21/pfsense-proxy-transparente-mitm-no-modo-splice-all-com-squid-e2guardian/

      Acredito que esse cenário é o básico para muitos ambientes.
      Agradeço a ajuda!

      1 Reply Last reply Reply Quote 0
      • E
        Elton Santos
        last edited by

        Boa tarde!

        Dê uma olhada na versão 5 do E2guardian que o Marcelo está disponibilizando pra comunidade, não precisa do squid para rodar e faz o ssl MITM.

        1 Reply Last reply Reply Quote 0
        • marcellocM
          marcelloc
          last edited by

          Da uma olhada nesse tópico.

          https://forum.pfsense.org/index.php?topic=144994.msg790073#msg790073

          Treinamentos de Elite: http://sys-squad.com

          Help a community developer! ;D

          1 Reply Last reply Reply Quote 0
          • R
            remix
            last edited by

            Obrigado pessoal,
            Estou iniciando agora um lab com a versão 5 do e2guardian.
            Mas de qualquer forma preciso instalar o certificado nos dispositivos correto?
            Queria evitar isso, pois não sei como dispositivos como tablet's e celulares se comportam com essa configuração.

            1 Reply Last reply Reply Quote 0
            • marcellocM
              marcelloc
              last edited by

              @remix:

              Mas de qualquer forma preciso instalar o certificado nos dispositivos correto?

              Não. você pode filtrar sem instalar nada no cliente. A única diferença é que sem o certificado, o erro vem como conexão recusada no lugar de uma página de erro formatada. Sem interceptar também impossibilita a varredura do conteúdo da página.

              @remix:

              Queria evitar isso, pois não sei como dispositivos como tablet's e celulares se comportam com essa configuração.

              Habilite o filtro ssl na aba daemon do e2guardian e não marque a interceptação de ssl no(s) grupo(s) onde estão os tablets/celulares.

              Treinamentos de Elite: http://sys-squad.com

              Help a community developer! ;D

              1 Reply Last reply Reply Quote 0
              • R
                remix
                last edited by

                Tentei colocar ontem em produção o servidor, no lab estava funcionando bem.
                Agora esta bloqueando todo trafego SSL, quando olho no realtime ele informa:

                DENIED Failed to negotiate SLL connection

                Revisei todos os itens e aparenta estar tudo normal  :(

                1 Reply Last reply Reply Quote 0
                • marcellocM
                  marcelloc
                  last edited by

                  @remix:

                  DENIED Failed to negotiate SLL connection

                  Interceptando, transparente? Qual o formato do log está usando e o  aparece neles?

                  Treinamentos de Elite: http://sys-squad.com

                  Help a community developer! ;D

                  1 Reply Last reply Reply Quote 0
                  • R
                    remix
                    last edited by

                    Sim, transparente.

                    18.04.01 21:02:43 192.168.1.27 https://66.110.49.34:443 403 - Default DENIED Failed to negotiate ssl connection to client
                    18.04.01 21:02:42 192.168.1.27 https://66.110.49.36:443 403 - Default DENIED Failed to negotiate ssl connection to client
                    18.04.01 21:02:42 192.168.1.27 https://38.113.165.110:443 403 - Default DENIED Failed to negotiate ssl connection to client

                    1 Reply Last reply Reply Quote 0
                    • R
                      remix
                      last edited by

                      o formato do log é e2guardian.
                      Subi uma instalação nova, apenas com o e2guardian, e ainda se encontra muito instável para mim.
                      Continua com esses logs de negotiate SSL e notei também nos logs o bloqueio do dropbox, sendo que não especifiquei nada de bloqueio para esse dominio  :-\

                      ssl.PNG
                      ssl.PNG_thumb

                      1 Reply Last reply Reply Quote 0
                      • marcellocM
                        marcelloc
                        last edited by

                        Que tipo de trafego é esse? https://medidor.alterna.com.br:5060 https em porta sip? Como isso chegou no proxy?

                        Esse site não é acessível nessa porta, pelo menos a partir da minha rede

                        site_timed_out.PNG
                        site_timed_out.PNG_thumb

                        Treinamentos de Elite: http://sys-squad.com

                        Help a community developer! ;D

                        1 Reply Last reply Reply Quote 0
                        • R
                          remix
                          last edited by

                          Neste caso é o teste do speedtest.
                          beta.speedtest.net
                          Mas acontece em outros sites também…

                          1 Reply Last reply Reply Quote 0
                          • marcellocM
                            marcelloc
                            last edited by

                            Pelo o que estou entendendo do erro que recebe, pode traduzir Failed to negotiate ssl com sem acesso ao site para ler o certificado

                            Treinamentos de Elite: http://sys-squad.com

                            Help a community developer! ;D

                            1 Reply Last reply Reply Quote 0
                            • R
                              remix
                              last edited by

                              Eu entendi como falha ao negociar conexão SSL…
                              Não sei onde pode estar errado, já segui vários tutoriais...

                              1 Reply Last reply Reply Quote 0
                              • marcellocM
                                marcelloc
                                last edited by

                                @remix:

                                Eu entendi como falha ao negociar conexão SSL…
                                Não sei onde pode estar errado, já segui vários tutoriais...

                                Se o site não responde, não tem como negociar ssl. Monitore via tcpdump para ver se o site responde à conexão ou não.

                                Por exemplo:
                                Se sua interface wan for em0 e o site for este mesmo do post anterior

                                nslookup medidor.alterna.com.br retorna 177.53.168.9

                                tcpdump -ni em0 host 177.53.168.9

                                ou monitore seu ip

                                tcpdump -ni em1 host 192.168.1.20 (exemplo)

                                Treinamentos de Elite: http://sys-squad.com

                                Help a community developer! ;D

                                1 Reply Last reply Reply Quote 0
                                • R
                                  remix
                                  last edited by

                                  Muito obrigado pela ajuda Marcelo!
                                  Identifiquei que esse erro ocorria por instabilidade na internet, depois que solucionei o problema com a internet, funcionou perfeito!

                                  Eu subi o servidor hoje e fiz todos os testes ontem e estava OK.
                                  Porém hoje quando os usuários começaram a usar o acesso a internet ficou superlento.
                                  São cerca de 70 usuarios, o servidor fica com uso de cerca de 20% de CPU e tem bastante memoria disponível, tem alguma ideia do que pode ser?

                                  Obrigado mais uma vez!

                                  1 Reply Last reply Reply Quote 0
                                  • marcellocM
                                    marcelloc
                                    last edited by

                                    @remix:

                                    Porém hoje quando os usuários começaram a usar o acesso a internet ficou superlento.

                                    aumenta a quantidade de processos. A instalação vem com 256 padrão. suba pra 1024 por exemplo.

                                    Adicione também o widget do e2guardian no dashboard, lá da pra acompanhar a quantidade de requisições, requisições por segundo, etc…

                                    e2g.PNG
                                    e2g.PNG_thumb

                                    Treinamentos de Elite: http://sys-squad.com

                                    Help a community developer! ;D

                                    1 Reply Last reply Reply Quote 0
                                    • R
                                      remix
                                      last edited by

                                      Cara eu imaginava que era isso, mas na correria procurei e não achei onde aumentar. Agora está show!
                                      Quando eu faço uma alteração nas acl's, preciso limpar reiniciar o serviço e limpar o cache como no squid?

                                      1 Reply Last reply Reply Quote 0
                                      • marcellocM
                                        marcelloc
                                        last edited by

                                        @remix:

                                        Quando eu faço uma alteração nas acl's, preciso limpar reiniciar o serviço e limpar o cache como no squid?

                                        Não. Só salva, aplica e em poucos segundos o e2guardian recarrega.

                                        Treinamentos de Elite: http://sys-squad.com

                                        Help a community developer! ;D

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          remix
                                          last edited by

                                          Obrigado Mestre, você tem ajudado demais!

                                          Vou deixar aqui uma info que demorei para achar, o significado de cada coluna do widget do e2guardian, talvez seja util para alguém, assim fica bem simples monitorar a performance.

                                          1. Time  - in unix format

                                          2. busy - Number of httpworker threads busy handling connections at current time

                                          3. httpwQ - Number of connections waiting in queue for a worker thread. 
                                            In normal use this will be 0 (and on occasion 1 or 2) but will increase once
                                            all worker threads are busy.  Lowish numbers are OK for transitory peaks. 
                                            High numbers indicate an overloaded system.  If there is still memory and
                                            cpu available, then httpworkers may be increased.

                                          4. logQ - Number of messages waiting to be logged to disk.  In normal use 0. 
                                            An increase in number may indicate system overloading, but should not
                                            otherwise affect performance.

                                          5. conx - number of connections handled since last stats line.

                                          6. conx/s - average connections per sec over period since last stats line.

                                          7. reqs - indication of number of requests handled since last stats line. 
                                            Only an indication as requests made over https tunnels (i.e. non-MITM) cannot
                                            be counted, so each https tunnel is counted as one request.

                                          8. reqs/s - average requests per sec over period since last stats line.

                                          9. maxfd - Indication of maximum number file descriptor in use

                                          10. LCcnt - Number of List Option Containers in use. A new List Option Container
                                            is created at start up and on gentle restart.  Old containers are deleted
                                            once all connections still using it have finished.  Normally figure will be
                                            one, but may rise after a gentle restart(s) and should return to one after a
                                            period of time.

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            remix
                                            last edited by

                                            Estou trabalhando agora nesses 3 casos.

                                            1- Acompanhando pelo log e aparece acesso negado para um subdominio do nosso sistema.
                                            Já adicionei o dominio no exceptions do sitelisturl, mas não funcionou.
                                            Agora eu adicionei o endereço dos dois sistemas no campo Bypass Proxy for These Destination IPs, vou testar amanhã se funcionou.

                                            2- Estava usando o log format file do squid, mudei para o formato e2guardian para tentar identificar pq nosso sistema estava bloqueando, mas na aba real time não aparece nada.

                                            3- Preciso Mascarar a conexão que sai por uma 3ª placa, criei as rotas estaticas e o NAT outbound. Mas quando mando um tracert da rede interna o primeiro salto mostra o IP do Default GW, acredito que deveria ser o IP da 3ª placa, até pq ele sai pela rota certa.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.