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

    [GUIA] Proxy HTTP/HTTPS + SquidGuard + sgerror.php + WPAD via DHCP e DNS 100%

    Scheduled Pinned Locked Moved Portuguese
    182 Posts 40 Posters 55.9k 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
      Rene_Probst
      last edited by

      Ok

      Conteudo Nginx2.conf:

      nginx configuration file

      worker_processes  1;
      events {
          worker_connections  1024;
      }
      http {
              include      /usr/local/etc/nginx/mime.types;
              default_type  application/octet-stream;
              sendfile        on;
              keepalive_timeout 65;

      server {
                      listen 192.168.1.1;
                      server_name wpad.localdomain
                      server name 127.0.0.1
                      client_max_body_size 200m;

      root "/usr/local/www/nginx-dist/";

      location ~ .php$ {
                              try_files $uri =404; #  This line closes a potential security hole
                              fastcgi_pass  unix:/var/run/php-fpm.socket;
                              fastcgi_index  index.php;
                              fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                              fastcgi_read_timeout 180;
                              include        /usr/local/etc/nginx/fastcgi_params;
                      }
              }
      }

      1 Reply Last reply Reply Quote 0
      • B
        brunok
        last edited by

        Acho que é este o problema:

        server_name wpad.localdomain
        

        Dentro do seu nginx2.conf, ajuste para o domínio configurado no seu PF.

        O navegador pelo qual está tentando fazer testes, seria o Firefox?

        O Firefox só pega WPAD por DNS, então o caso acima seria o problema.

        Já no Chrome/IE, aceitam pelo DHCP.

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

          Certo;

          Fui ate a conf do nginx.conf e alterei conforme meu dominio reiniciei o server reiniciei minha conexao de rede. Apos isso tentei os acessos mas da mesma forma os bloqueios ainda nao estao acontecendo.

          Conf da nginx2.conf atual:

          nginx configuration file

          worker_processes  1;
            events {
                worker_connections  1024;
            }
            http {
                    include      /usr/local/etc/nginx/mime.types;
                    default_type  application/octet-stream;
                    sendfile        on;
                    keepalive_timeout 65;

          server {
                            listen 192.168.1.1;
                            server_name wpad.allianza.com.br
                            server name 127.0.0.1
                            client_max_body_size 200m;

          root "/usr/local/www/nginx-dist/";

          location ~ .php$ {
                                    try_files $uri =404; #  This line closes a potential security hole
                                    fastcgi_pass  unix:/var/run/php-fpm.socket;
                                    fastcgi_index  index.php;
                                    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                                    fastcgi_read_timeout 180;
                                    include        /usr/local/etc/nginx/fastcgi_params;
                            }
                    }
            }

          Essa configuração era a minha ultima esperança kkk mas ta dificil heim bruno que luta.  ;D ;D

          1 Reply Last reply Reply Quote 0
          • B
            brunok
            last edited by

            Pode ser um detalhe bem básico que ta passando despercebido…  :P

            Se quiser me passar um acesso remoto no privado, eu dou uma olhada.

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

              Como mando uma mensagem pra voce no privado?

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

                Ola pessoal venho informa que apos muito trabalho consegui terminar a configuração do Bruno e esta funcionando perfeitamente.
                O erro foi em copiar uma configuração dentro do arquivo proxy.pac a palavra function nao foi copiado para ele entao nao chamava a função e com isso os bloqueios nao aconteciam. Apos isso funciono nomalmente em todos os navegadores. Gostaria de agradecer o bruno por me ajudar atentamente nessa trabalho Otimo post foi o unico que vai funcionar na minha rede aqui na empresa.  ;D ;D ;D

                function FindProxyForURL(url, host) {

                // se o site estiver na rede interna, retorna conexao direta.
                if (isPlainHostName(host) ||
                isInNet(dnsResolve(host), "192.168.1.0",  "255.255.255.0") ||
                isInNet(dnsResolve(host), "127.0.0.0", "255.255.255.0"))
                return "DIRECT";

                // o resto do trafego, passa no proxy
                return "PROXY 192.168.1.1:3128";
                }

                1 Reply Last reply Reply Quote 0
                • B
                  brunok
                  last edited by

                  Editei o tópico, apenas para informar que o ambiente está validado nestas versões:

                  2.3.1
                  2.3.1_5
                  2.3.2
                  2.3.2_1

                  1 Reply Last reply Reply Quote 0
                  • M
                    McLaw
                    last edited by

                    Bruno para essa aplicação que funcione tenho é necessario ativa o dhcp do pfsense? no meu caso quem gerar dhcp eo windows server 2008 rc2.

                    me tire essa duvida.

                    Um grande abraço

                    @brunok:

                    Editei o tópico, apenas para informar que o ambiente está validado nestas versões:

                    2.3.1
                    2.3.1_5
                    2.3.2
                    2.3.2_1

                    1 Reply Last reply Reply Quote 0
                    • F
                      filipesilva
                      last edited by

                      Bruno tudo bom?

                      Olha, estou testando essa funcionalidade aqui com o Virtual box +PFsense 2.3.2+Win7.

                      Seguinte, reproduzir os passos de acordo com o seu tutorial, porém meu PFsense não está bloqueando as paginas que defini nas regras do squidguard, o bloqueio somente acontece quando seto o proxy na maquina.

                      Refiz todos os passos, verifiquei todos os arquivos, consigo baixar todos os arquivos de diferentes maneiras, meu Dominio também é o localhost, mas mesmo assim os bloqueios não funcionam, estou usando o pfsense na porta que você mencionou 9443 ele acessa normal, quando entro no navegador e digito 192.168.1.1 ele cai na pagina do nxing normal, minhas configurações de DHCP e DNS estão exatamente como vc mandou, DNS Forward etc….

                      O que pode estar acontecendo ?

                      Obrigado.

                      1 Reply Last reply Reply Quote 0
                      • V
                        vcamposm31
                        last edited by

                        Bruno parabens pelo tutorial, segui o passo a passo da instalação, mais o squid não inicia.
                        Eu já pesquisei o erro, fiz a questão do target categories, reinstalei squid, reinstalei squidguard e nada…
                        O que eu tenho de log na interface do pfsense é essa:

                        /rc.start_packages: The command '/usr/local/sbin/squid -f /usr/local/etc/squid/squid.conf' returned exit code '1', the output was 'FATAL: Bungled /usr/local/etc/squid/squid.conf line 4: http_port 192.168.0.1:3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=-50MB cert=/usr/local/etc/squid/serverkey.pem capath=/usr/local/share/certs/ cipher=EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:HIGH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS dhparams=/etc/dh-parameters.2048 options=NO_SSLv2,NO_SSLv3,SINGLE_DH_USE Squid Cache (Version 3.5.19): Terminated abnormally. CPU Usage: 0.006 seconds = 0.000 user + 0.006 sys Maximum Resident Size: 880 KB Page faults with physical i/o: 110'
                        

                        Versão do SquidGuard:
                        [2.3.2-RELEASE][admin@pfSense.localdomain]/root: squidGuard -v
                        SquidGuard: 1.4 Berkeley DB 5.3.28: (September  9, 2013)

                        na GUI do pfsense: squidGuard www 1.14_4

                        Versão do Squiq:
                        [2.3.2-RELEASE][admin@pfSense.localdomain]/root: squid -v
                        Squid Cache: Version 3.5.19

                        na GUI do pfsense: squid www 0.4.23_1

                        Nos logs do /var/log/squid/cache.log tem o seguinte, só que foi as 20:00, hr que eu tava instalando/configurando:

                        2016/11/30 20:00:38 kid1| ERROR: No forward-proxy ports configured.
                        FATAL: No HTTP, HTTPS, or FTP ports configured
                        Squid Cache (Version 3.5.19): Terminated abnormally.
                        CPU Usage: 0.084 seconds = 0.061 user + 0.023 sys
                        Maximum Resident Size: 208784 KB
                        Page faults with physical i/o: 0
                        2016/11/30 20:00:43 kid1| Creating missing swap directories
                        
                        

                        Ja li muito aqui sobre… mais nada que tenha resolvido.
                        Alguem sabe o que pode estar acontecendo?

                        1 Reply Last reply Reply Quote 0
                        • V
                          vcamposm31
                          last edited by

                          Fiz um teste, desabilitei o:

                          HTTPS/SSL Interception Enable SSL filtering.

                          Dai ele inicia…

                          1 Reply Last reply Reply Quote 0
                          • B
                            brunok
                            last edited by

                            @McLaw:

                            Bruno para essa aplicação que funcione tenho é necessario ativa o dhcp do pfsense? no meu caso quem gerar dhcp eo windows server 2008 rc2.

                            me tire essa duvida.

                            Um grande abraço

                            @brunok:

                            Editei o tópico, apenas para informar que o ambiente está validado nestas versões:

                            2.3.1
                            2.3.1_5
                            2.3.2
                            2.3.2_1

                            Você pode utilizar o DNS do Windows Server. Basta configurar as opções do wpad nele (de uma olhada na net, que você encontra).

                            Outra dica, o windows bloqueia por padrão o nome wpad (por questões de segurança), mas tem um procedimento para liberar isto e aí vai funcionar normalmente.

                            http://ajuda.uniconet.com.br/index.php/Configura%C3%A7%C3%A3o_do_WPAD_no_DNS_do_Windows_Server

                            1 Reply Last reply Reply Quote 0
                            • B
                              brunok
                              last edited by

                              @Filipe:

                              Bruno tudo bom?

                              Olha, estou testando essa funcionalidade aqui com o Virtual box +PFsense 2.3.2+Win7.

                              Seguinte, reproduzir os passos de acordo com o seu tutorial, porém meu PFsense não está bloqueando as paginas que defini nas regras do squidguard, o bloqueio somente acontece quando seto o proxy na maquina.

                              Refiz todos os passos, verifiquei todos os arquivos, consigo baixar todos os arquivos de diferentes maneiras, meu Dominio também é o localhost, mas mesmo assim os bloqueios não funcionam, estou usando o pfsense na porta que você mencionou 9443 ele acessa normal, quando entro no navegador e digito 192.168.1.1 ele cai na pagina do nxing normal, minhas configurações de DHCP e DNS estão exatamente como vc mandou, DNS Forward etc….

                              O que pode estar acontecendo ?

                              Obrigado.

                              Parece que o WPAD não está sendo entregue, ou o navegador não está marcado para reconhecer proxy automaticamente.

                              Qual navegador está usando?

                              Chrome usa a mesma configuração do IE.

                              Firefox, tem uma configuração à parte, no próprio navegador.

                              1 Reply Last reply Reply Quote 0
                              • B
                                brunok
                                last edited by

                                @vcamposm31:

                                Fiz um teste, desabilitei o:

                                HTTPS/SSL Interception Enable SSL filtering.

                                Dai ele inicia…

                                Já tentou fazer uma instalação clean, somente para testes?

                                Neste caso, pode ter relação com a tag nas opções custom  do squid.

                                ssl_bump none all

                                Da uma conferida nos parâmetros.

                                1 Reply Last reply Reply Quote 0
                                • I
                                  itsl3v1s
                                  last edited by

                                  Cara, parabéns pelo tutorial, só uma dúvida, não está sendo feito nenhum tipo de bloqueio das portas 80 e 443, então se o usuário optar por navegar sem proxy, vai passar normalmente, certo?

                                  1 Reply Last reply Reply Quote 0
                                  • B
                                    brunok
                                    last edited by

                                    @itsl3v1s:

                                    Cara, parabéns pelo tutorial, só uma dúvida, não está sendo feito nenhum tipo de bloqueio das portas 80 e 443, então se o usuário optar por navegar sem proxy, vai passar normalmente, certo?

                                    Teoricamente, sim.

                                    Mas como o proxy está amarrado pelo DHCP e DNS (não setado no navegador), não tem pra onde ele fugir**.

                                    ** A não ser que o ip seja setado manualmente, com DNS do google por exemplo. Mas estas configurações, você consegue bloquear.

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      itsl3v1s
                                      last edited by

                                      Na verdade, por exemplo no Firefox, é só marcar a opção "Sem proxy". Minha sugestão, bloqueie o acesso das portas 80 e 443 externo e libere apenas a porta 80 para rede local, ai o arquivo WPAD será servido e ninguém irá trafegar sem ele. Segue exemplo:

                                      FIREWALL.jpg
                                      FIREWALL.jpg_thumb

                                      1 Reply Last reply Reply Quote 0
                                      • empbillyE
                                        empbilly
                                        last edited by

                                        brunok,

                                        Parabéns pelo belo tutorial. Talvez tu queira adicionar um pequeno adendo ao teu tutorial. A questão de deixar a Default access [all] em allow, pois por padrão vem em deny. Para os usuários com maior experiencia talvez essa mudança seja trivial, mas para usuários com pouca experiencia possa ser uma dificuldade em saber o porque esta tudo bloqueado.

                                        Mais uma vez, obrigado pelo conhecimento disseminado. :D

                                        https://eliasmoraispereira.wordpress.com/

                                        1 Reply Last reply Reply Quote 0
                                        • C
                                          cairo
                                          last edited by

                                          Bruno,
                                          Novamente parabenizo-lhe pelo tutorial!
                                          Fiz aqui, funcionou tudo certo! wpad sendo entregue e bloqueios acontecendo..

                                          Porém uma dúvida: na máquina que estou usando para testes, se eu desabilito a opção 'detectar automaticamente' nas configurações de conexão os bloqueios deixam de acontecer….  :-\

                                          Está correto? Haveria algum modo de, caso a máquina não esteja passando pelo proxy, rejeitar todos os pacotes dela para 80 e 443?

                                          Agradeço novamente!  :D

                                          1 Reply Last reply Reply Quote 0
                                          • empbillyE
                                            empbilly
                                            last edited by

                                            @cairo:

                                            Bruno,
                                            Novamente parabenizo-lhe pelo tutorial!
                                            Fiz aqui, funcionou tudo certo! wpad sendo entregue e bloqueios acontecendo..

                                            Porém uma dúvida: na máquina que estou usando para testes, se eu desabilito a opção 'detectar automaticamente' nas configurações de conexão os bloqueios deixam de acontecer….  :-\

                                            Está correto? Haveria algum modo de, caso a máquina não esteja passando pelo proxy, rejeitar todos os pacotes dela para 80 e 443?

                                            Agradeço novamente!  :D

                                            Posted by: itsl3v1s: https://forum.pfsense.org/index.php?topic=118346.msg675496#msg675496

                                            https://eliasmoraispereira.wordpress.com/

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