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 56.6k 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.
    • D
      diegovaz
      last edited by

      brunok,

      Bom dia meu amigo!
      Primeiramente parabéns pala iniciativa, pelo ótimo tutorial!

      estou em um ambiente de teste fazendo o procedimento do seu tuto, e no momento de fazer o teste da segunda instancia ele não apresenta a pagina do nginx.

      ao tentar executar o script manual, ele me da este erro:

      nginx: [emerg] unknown directive "a" in /usr/local/etc/nginx/nginx2.conf:24

      Segui todo o procedimento a risca.

      abraço

      Diego

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

        Diego, instala o pacote WPAD que disponibilizei. Ele faz a configuração da segunda instância do nginx pra você.

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

        Help a community developer! ;D

        1 Reply Last reply Reply Quote 0
        • D
          diegovaz
          last edited by

          Marcelo,

          Bom dia!

          Tentei das duas formas com uma instalação limpa do pfsense, e apresentaram o mesmo erro.

          abraço

          1 Reply Last reply Reply Quote 0
          • D
            diegovaz
            last edited by

            Na versao:

            2.3.3-p1

            Funcionou legal com o pacote!

            bruno e Marcelo, paranebs novamente!

            [DESCULPE CONFUSAO, A PLACA ESTA DO VIRTUALBOX ESTAVA EM NAT]

            nesta versao tambem aparece o mesmo erro:

            nginx: [emerg] unknown directive "a" in /usr/local/etc/nginx/nginx2.conf:24

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

              @leo_pfsense:

              Prezado Brunok, parabéns pelo tutorial, ótima sistematização, 100% funcional no ambiente de testes, versão 2.3.4.

              Gostaria de lhe pedir uma orientação se possível, o cenário configurado é de uma interface wan e uma lan, porém eu gostaria de configurar com mais de uma lan. Neste caso você sabe quais alterações preciso fazer?

              Desde já agradeço.

              Que bom que funcionou também na versão mais recente! Ainda não testei na 2.3.4.

              Bom, quanto ao número de subredes, não tem problemas, basta na configuração do SQUID, você marcar as outras interfaces pertinentes a estas redes.

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

                @marcelloc:

                Primeira versão do pacote wpad já está no repositório.

                Isso reduz bastante a quantidade de alterações e configurações de arquivos.  8)

                Brunok, se achar interessante, podemos alterar o primeiro post incluindo a instalação do pacote e configuração via interface web desta parte.

                Pacote WPAD não oficial para pfSense software(r) 2.3.x

                Agora que vi o link do pacote… Vou validar aqui num ambiente CLEAN.

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

                  @diegovaz:

                  Na versao:

                  2.3.3-p1

                  Funcionou legal com o pacote!

                  bruno e Marcelo, paranebs novamente!

                  [DESCULPE CONFUSAO, A PLACA ESTA DO VIRTUALBOX ESTAVA EM NAT]

                  nesta versao tambem aparece o mesmo erro:

                  nginx: [emerg] unknown directive "a" in /usr/local/etc/nginx/nginx2.conf:24

                  Diego, poste aqui o seu nginx2.conf para análise.

                  1 Reply Last reply Reply Quote 0
                  • D
                    diegovaz
                    last edited by

                    
                    # 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;
                    	                }
                    	        }
                    	}
                    
                    

                    So copiei e colei  ???

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

                      @diegovaz:

                      try_files $uri =404; #  This line closes
                      a potential security hole

                      fastcgi_pass 
                      unix:/var/run/php-fpm.socket;

                      include       
                      /usr/local/etc/nginx/fastcgi_params;

                      Essas linha estão quebradas no seu código.

                      deveriam estar assim:

                      
                      try_files $uri =404; #  This line closes  a potential security hole
                      
                      fastcgi_pass   unix:/var/run/php-fpm.socket;
                      
                      include        /usr/local/etc/nginx/fastcgi_params;
                      
                      

                      Todas essas questões, o pacote faz sozinho. Sugiro deixar a configuração do nginx por conta dele e acertar pelo tutorial as configurações de dhcp, dns, etc…

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

                      Help a community developer! ;D

                      1 Reply Last reply Reply Quote 0
                      • L
                        leo_pfsense
                        last edited by

                        Oi Brunok, obrigado pelo retorno. Porém acredito que marcar outras interfaces no squid não será suficiente. O cenário que penso é o seguinte:

                        Eth1 - LAN 192.168.28.0/22 - Gateway 192.168.28.1
                        Eth2 - LAN 192.168.50.0/24 - Gateway 192.168.50.1

                        O que vc acha?

                        1 Reply Last reply Reply Quote 0
                        • D
                          diegovaz
                          last edited by

                          @marcelloc:

                          @diegovaz:

                          try_files $uri =404; #  This line closes
                          a potential security hole

                          fastcgi_pass 
                          unix:/var/run/php-fpm.socket;

                          include       
                          /usr/local/etc/nginx/fastcgi_params;

                          Essas linha estão quebradas no seu código.

                          deveriam estar assim:

                          
                          try_files $uri =404; #  This line closes  a potential security hole
                          
                          fastcgi_pass   unix:/var/run/php-fpm.socket;
                          
                          include        /usr/local/etc/nginx/fastcgi_params;
                          
                          

                          Todas essas questões, o pacote faz sozinho. Sugiro deixar a configuração do nginx por conta dele e acertar pelo tutorial as configurações de dhcp, dns, etc…

                          Marcelo,

                          No exemplo que você deu, temos que incluir a interface loopback também?

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

                            @diegovaz:

                            No exemplo que você deu, temos que incluir a interface loopback também?

                            Não precisa. A configuração do loopback da imagem só está lá para demonstrar que você pode ter um pac para cada interface de rede (se quiser ou precisar).

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

                            Help a community developer! ;D

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

                              @leo_pfsense:

                              Oi Brunok, obrigado pelo retorno. Porém acredito que marcar outras interfaces no squid não será suficiente. O cenário que penso é o seguinte:

                              Eth1 - LAN 192.168.28.0/22 - Gateway 192.168.28.1
                              Eth2 - LAN 192.168.50.0/24 - Gateway 192.168.50.1

                              O que vc acha?

                              Irá funcionar com essas condições:

                              Regras na LAN A e B, pois o ip de redirecionamento do squidguard é da rede A e a rede B precisa encontrar. Apenas a porta 80.

                              No squid você marca as 2 interfaces e testa, pode também forçar as subnets lan liberadas no proxy na aba ACLS > "Allowed subnets".

                              1 Reply Last reply Reply Quote 0
                              • L
                                leo_pfsense
                                last edited by

                                Certo Brunok, estou testando e está funcionando, obrigado!

                                1 Reply Last reply Reply Quote 0
                                • D
                                  diegovaz
                                  last edited by

                                  Bom dia galera!

                                  segui igual receita de bolo, mas nao deu certo  :-[

                                  abraço

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    guitarcleiton
                                    last edited by

                                    Efetuei a instalação aqui e estou com 2 problemas.

                                    1 - Ao ser redirecionado para a pagina de erro o navegador efetua o download do sgerror.php ao invez de interpreta-lo.

                                    2 - Mesmo configurando o certificado e habilitando a opção  SSL as paginas https não são redirecionadas.

                                    Duvidas:
                                    Nas configurações do Squid
                                    SSL/MITM Mode: qual deve ser informado?
                                    SSL Proxy Compatibility Mode: qual deve ser informado?

                                    Grato!

                                    Analista de Sistemas
                                    Bacharel em Sistemas de Informação

                                    https://cleiton.tech.blog/

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

                                      @diegovaz:

                                      Bom dia galera!

                                      segui igual receita de bolo, mas nao deu certo  :-[

                                      abraço
                                      [/quote]

                                      Poste aqui o que acontece, algum print.

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

                                        @guitarcleiton:

                                        Efetuei a instalação aqui e estou com 2 problemas.

                                        1 - Ao ser redirecionado para a pagina de erro o navegador efetua o download do sgerror.php ao invez de interpreta-lo.

                                        2 - Mesmo configurando o certificado e habilitando a opção  SSL as paginas https não são redirecionadas.

                                        Duvidas:
                                        Nas configurações do Squid
                                        SSL/MITM Mode: qual deve ser informado?
                                        SSL Proxy Compatibility Mode: qual deve ser informado?

                                        Grato!

                                        As configurações do squid, pode deixar as padrões, neste caso.

                                        1 - Isso pode ser configuração do próprio navegador. Qual está usando?

                                        2 - Páginas https não são redirecionadas para a página de erro. Eu ainda não consegui contornar isso. O bloqueio ocorre, só não aparece a página do sgerror.php.

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          diegovaz
                                          last edited by

                                          @brunok:

                                          @diegovaz:

                                          Bom dia galera!

                                          segui igual receita de bolo, mas nao deu certo  :-[

                                          abraço
                                          [/quote]

                                          Poste aqui o que acontece, algum print.

                                          Bruno,

                                          bom dia!

                                          segui o tutorial ao pe da letra, instalei em uma instalação limpa em um ambiente de teste.
                                          alterei o domínio do arquivo para o meu, consigo fazer o download dos arquivos do wpad.
                                          fiz os bloqueios das portas 80 e 443, e liberação do ip e porta do PF.
                                          através da detecção automática de proxy não navega em nada, seu setar o proxy manual ai funfa tudo legal.
                                          segue minhas regras…

                                          rules.jpg
                                          rules.jpg_thumb
                                          teste-pag.jpg
                                          teste-pag.jpg_thumb

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

                                            Fez alguma alteração no wpad? O ip:porta definido nele bate com a sua configuração de proxy?

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

                                            Help a community developer! ;D

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