• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
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 58.1k 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 Jun 2, 2017, 11:05 AM

    @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
    • M
      marcelloc
      last edited by Jun 2, 2017, 11:23 AM

      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
      • D
        diegovaz
        last edited by Jun 2, 2017, 11:41 AM

        @marcelloc:

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

        Nada.

        so segui o tutorial, ip e porta batendo.

        wpad1.jpg
        wpad1.jpg_thumb
        wpad2.jpg
        wpad2.jpg_thumb

        1 Reply Last reply Reply Quote 0
        • G
          guitarcleiton
          last edited by Jun 3, 2017, 5:59 PM

          após reiniciar o firewall para tentar identificar o motivo do download ao invés da interpretação do sgerror percebi que o wpad parou de funcionar.

          identifiquei o problema, mas não a solução, ao tentar aplicar o wpad me retorna a mensagem de que já existe um serviço ativo na porta 80.

          qual comando para listar qual serviço esta rodando nesta porta?

          Analista de Sistemas
          Bacharel em Sistemas de Informação

          https://cleiton.tech.blog/

          1 Reply Last reply Reply Quote 0
          • M
            marcelloc
            last edited by Jun 3, 2017, 8:18 PM

            @guitarcleiton:

            qual comando para listar qual serviço esta rodando nesta porta?

            Desativou o redirecionamento automático da gui em system-> advanced?

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

            Help a community developer! ;D

            1 Reply Last reply Reply Quote 0
            • G
              guitarcleiton
              last edited by Jun 5, 2017, 11:06 AM

              @marcelloc:

              Desativou o redirecionamento automático da gui em system-> advanced?

              Sim, mesmo que alguém esqueça, eu fiz um teste aqui e o script do wpad não aceita aplicar esta configuração caso o redirecionamento esteja ativado.

              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 Jun 5, 2017, 9:36 PM

                @diegovaz:

                @marcelloc:

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

                Nada.

                so segui o tutorial, ip e porta batendo.

                Qual o IP configurado no alias "FIREWALL" ?

                1 Reply Last reply Reply Quote 0
                • B
                  brunok
                  last edited by Jun 5, 2017, 9:50 PM

                  @guitarcleiton:

                  @marcelloc:

                  Desativou o redirecionamento automático da gui em system-> advanced?

                  Sim, mesmo que alguém esqueça, eu fiz um teste aqui e o script do wpad não aceita aplicar esta configuração caso o redirecionamento esteja ativado.

                  Tem contato com o Shell?

                  Me mostre a saída do comando:

                  cat /usr/local/etc/nginx/nginx_wpad*.conf
                  
                  1 Reply Last reply Reply Quote 0
                  • I
                    isaiasbertin
                    last edited by Jun 6, 2017, 1:49 AM

                    parabéns ótimo tuto

                    1 Reply Last reply Reply Quote 0
                    • D
                      diegovaz
                      last edited by Jun 6, 2017, 10:23 AM

                      @brunok:

                      @diegovaz:

                      @marcelloc:

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

                      Nada.

                      so segui o tutorial, ip e porta batendo.

                      Qual o IP configurado no alias "FIREWALL" ?

                      Bruno,

                      bom dia!

                      IP padrao do teste e do seu tutorial 192.168.1.1

                      abraço

                      1 Reply Last reply Reply Quote 0
                      • P
                        pozemky
                        last edited by Jun 6, 2017, 8:40 PM

                        Fiz aqui todo o procedimento e infelizmente não funcionou, uso a versão 2.3.2 amd64.
                        Consegui ter acesso normal a internet, ele não faz bloqueios, mesmo mexendo nas regras do SquidGuard, refiz toda a configuração e mesmo assim não foi.
                        Atualmente fiz uma configuração de PfSense que ficou boa aqui, ainda não está em produção, mas com os testes feitos em alguns setores, principalmente o financeiro, não tive nenhum problema, mas é aquela história, é preciso instalar o certificado no computador do usuário, deu para fazer bloqueio com sites HTTPS, e usar pesquisa segura no Google e outros buscadores.
                        Enfim, em casa tento novamente fazer essa configuração  ;D

                        1 Reply Last reply Reply Quote 0
                        • L
                          leo_pfsense
                          last edited by Jun 7, 2017, 6:55 AM Jun 6, 2017, 11:11 PM

                          Boa noite pessoal, talvez ajude alguém, para complementar as configurações até então feitas, relaciono abaixo um exemplo básico de regras de firewall. Se não estiverem adequadas peço que sugiram/efetuem alterações.

                          
                          Ação -     Protocolo -     Source - Port - Destination -         Port -    Gateway - Queue - Description
                          
                          Pass        IPv4 TCP    - LAN net    *    192.168.1.1 	 9443,22,80	*   none   -   Libera WebGUI, SSH, WPAD (NGINX)
                          Pass        IPv4 UDP   - LAN net    *    192.168.1.1 	 53 (DNS)	        *   none   -   Libera DNS
                          Reject     IPv4 TCP    - LAN net    *    * 		         80 (HTTP) 	*   none   -   Bloqueia HTTP
                          Reject     IPv4 TCP    - LAN net    *    * 		         443 (HTTPS)    *   none   -   Bloqueia HTTPS
                          Pass        IPv4 TCP    - LAN net    *    * 		         3128 		*   none   -   Libera Proxy
                          
                          
                          1 Reply Last reply Reply Quote 0
                          • G
                            guitarcleiton
                            last edited by Jun 7, 2017, 12:55 PM

                            @brunok:

                            Tem contato com o Shell?

                            Me mostre a saída do comando:

                            cat /usr/local/etc/nginx/nginx_wpad*.conf
                            

                            Refiz as configurações dei um reboot no firewall e acabou o problema de conflito na porta 80.

                            o problema agora é a pagina de erro que não são interpretada pelo php, sempre que vai efetuar o bloqueio é feito o download do sgerror, em qualquer navegador e em qualquer computador da rede.

                            
                            # nginx configuration file
                                    user  root wheel;
                                    worker_processes  10;
                                    pid     /var/run/nginx_wpad0.pid;
                                    error_log  syslog:server=unix:/var/run/log,facility=local5;
                                    events {
                                        worker_connections  1024;
                                    }
                                    http {
                                            include       /usr/local/etc/nginx/mime_wpad.types;
                                            default_type  application/octet-stream;
                                            sendfile        on;
                                            access_log      syslog:server=unix:/var/run/log,facility=local5 combined;
                                            keepalive_timeout 65;
                                            server {
                                                    listen 192.168.0.1:80;
                                                    server_name wpad.localdomain
                                                    server name 127.0.0.1
                                                    client_max_body_size 200m;
                            
                                                    root "/usr/local/www/wpad0/";
                            
                                                    location / {
                                                            index index.php sgerror.php index.html index.htm;
                                                    }
                            
                                                    location ~ \.php$ {
                                                            try_files $uri =404; #  This line closes a potential security hole
                                                            # ensuring users can't execute uploaded files
                                                            # see: http://forum.nginx.org/read.php?2,88845,page=3
                                                            fastcgi_pass   unix:/var/run/php-fpm.socket;
                                                            fastcgi_index  index.php;
                                                            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                                                            # Fix httpoxy - https://httpoxy.org/#fix-now
                                                            fastcgi_param  HTTP_PROXY  "";
                                                            fastcgi_read_timeout 180;
                                                            include        /usr/local/etc/nginx/fastcgi_params;
                                                    }
                            
                                            }
                            
                            

                            Analista de Sistemas
                            Bacharel em Sistemas de Informação

                            https://cleiton.tech.blog/

                            1 Reply Last reply Reply Quote 0
                            • P
                              pozemky
                              last edited by Jun 7, 2017, 5:52 PM

                              @leo_pfsense:

                              Boa noite pessoal, talvez ajude alguém, para complementar as configurações até então feitas, relaciono abaixo um exemplo básico de regras de firewall. Se não estiverem adequadas peço que sugiram/efetuem alterações.

                              
                              Ação -     Protocolo -     Source - Port - Destination -         Port -    Gateway - Queue - Description
                              
                              Pass        IPv4 TCP    - LAN net    *    192.168.1.1 	 9443,22,80	*   none   -   Libera WebGUI, SSH, WPAD (NGINX)
                              Pass        IPv4 UDP   - LAN net    *    192.168.1.1 	 53 (DNS)	        *   none   -   Libera DNS
                              Reject     IPv4 TCP    - LAN net    *    * 		         80 (HTTP) 	*   none   -   Bloqueia HTTP
                              Reject     IPv4 TCP    - LAN net    *    * 		         443 (HTTPS)    *   none   -   Bloqueia HTTPS
                              Pass        IPv4 TCP    - LAN net    *    * 		         3128 		*   none   -   Libera Proxy
                              
                              

                              Boa tarde, mas essa regra não bloqueia todo o acesso a sites? Fiz aqui e não da acesso a nenhum site kkkkkk
                              Vou testar mais aqui  :)

                              1 Reply Last reply Reply Quote 0
                              • L
                                leo_pfsense
                                last edited by Jun 7, 2017, 11:20 PM

                                Oi pokemzy, penso que essas regras bloqueiam todo acesso a sites, exceto o tráfego pela porta 3128, que é a do proxy. Se deixar aberta a 80 e 443 ele navegará por fora do proxy, aí as regras de bloqueio do squidguard não irão funcionar.

                                Essa explicação e regramento é recomendável? Se alguém  puder opinar agradeço.

                                1 Reply Last reply Reply Quote 0
                                • J
                                  jamers
                                  last edited by Jun 8, 2017, 11:42 AM

                                  @pozemky:

                                  @leo_pfsense:

                                  Boa noite pessoal, talvez ajude alguém, para complementar as configurações até então feitas, relaciono abaixo um exemplo básico de regras de firewall. Se não estiverem adequadas peço que sugiram/efetuem alterações.

                                  
                                  Ação -     Protocolo -     Source - Port - Destination -         Port -    Gateway - Queue - Description
                                  
                                  Pass        IPv4 TCP    - LAN net    *    192.168.1.1 	 9443,22,80	*   none   -   Libera WebGUI, SSH, WPAD (NGINX)
                                  Pass        IPv4 UDP   - LAN net    *    192.168.1.1 	 53 (DNS)	        *   none   -   Libera DNS
                                  Reject     IPv4 TCP    - LAN net    *    * 		         80 (HTTP) 	*   none   -   Bloqueia HTTP
                                  Reject     IPv4 TCP    - LAN net    *    * 		         443 (HTTPS)    *   none   -   Bloqueia HTTPS
                                  Pass        IPv4 TCP    - LAN net    *    * 		         3128 		*   none   -   Libera Proxy
                                  
                                  

                                  Boa tarde, mas essa regra não bloqueia todo o acesso a sites? Fiz aqui e não da acesso a nenhum site kkkkkk
                                  Vou testar mais aqui  :)

                                  Testei aqui com essas regras e funcionou bem…bloqueando sites adultos, facebook,etc...acredito que seja um bom inicio...depois vai ajustando demais portas....

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    Rene_Probst
                                    last edited by Jun 8, 2017, 5:52 PM

                                    boa tarde;

                                    Vcs Saberiam me dizer onde que fica o arquivo sgerror.php (pagina de bloqueio do squid guard) gostaria de colocar uma personalizada.

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      leo_pfsense
                                      last edited by Jun 8, 2017, 7:39 PM

                                      Oi Rene,

                                      Procura através do comando "find / -name sgerror.php"

                                      Ele vai retornar onde está. Se você configurou o ambiente com o script do marcelloc vai estar numa pasta wpad0. É esse que vc muda. Terá outro também na www mas o que está valendo é a dentro da pasta wpad0.

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        brunok
                                        last edited by Jun 9, 2017, 6:16 PM Jun 9, 2017, 6:11 PM

                                        @guitarcleiton:

                                        @brunok:

                                        Tem contato com o Shell?

                                        Me mostre a saída do comando:

                                        cat /usr/local/etc/nginx/nginx_wpad*.conf
                                        

                                        Refiz as configurações dei um reboot no firewall e acabou o problema de conflito na porta 80.

                                        o problema agora é a pagina de erro que não são interpretada pelo php, sempre que vai efetuar o bloqueio é feito o download do sgerror, em qualquer navegador e em qualquer computador da rede.

                                        
                                        # nginx configuration file
                                                user  root wheel;
                                                worker_processes  10;
                                                pid     /var/run/nginx_wpad0.pid;
                                                error_log  syslog:server=unix:/var/run/log,facility=local5;
                                                events {
                                                    worker_connections  1024;
                                                }
                                                http {
                                                        include       /usr/local/etc/nginx/mime_wpad.types;
                                                        default_type  application/octet-stream;
                                                        sendfile        on;
                                                        access_log      syslog:server=unix:/var/run/log,facility=local5 combined;
                                                        keepalive_timeout 65;
                                                        server {
                                                                listen 192.168.0.1:80;
                                                                server_name wpad.localdomain
                                                                server name 127.0.0.1
                                                                client_max_body_size 200m;
                                        
                                                                root "/usr/local/www/wpad0/";
                                        
                                                                location / {
                                                                        index index.php sgerror.php index.html index.htm;
                                                                }
                                        
                                                                location ~ \.php$ {
                                                                        try_files $uri =404; #  This line closes a potential security hole
                                                                        # ensuring users can't execute uploaded files
                                                                        # see: http://forum.nginx.org/read.php?2,88845,page=3
                                                                        fastcgi_pass   unix:/var/run/php-fpm.socket;
                                                                        fastcgi_index  index.php;
                                                                        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                                                                        # Fix httpoxy - https://httpoxy.org/#fix-now
                                                                        fastcgi_param  HTTP_PROXY  "";
                                                                        fastcgi_read_timeout 180;
                                                                        include        /usr/local/etc/nginx/fastcgi_params;
                                                                }
                                        
                                                        }
                                        
                                        

                                        Este arquivo é gerado pelo pacote WPAD que o Marcello criou.
                                        Aparentemente, está diferente do meu, que eu tinha aqui no manual. Talvez as atualizações que ele fez, pode estar conflitando com alguma coisa.

                                        Faça o seguinte:

                                        Substitua o conteúdo do arquivo, por este

                                        
                                        # nginx configuration file
                                        worker_processes  10;
                                        pid     /var/run/nginx_wpad0.pid;
                                        
                                        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.0.1;
                                                        server_name wpad.localdomain
                                                        server name 127.0.0.1
                                                        client_max_body_size 200m;
                                        
                                                        root "/usr/local/www/wpad0/";
                                        
                                                        location ~ \.php$ {
                                        
                                                                try_files $uri =404;
                                                                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;
                                        
                                                        }
                                        
                                                }
                                        
                                        }
                                        
                                        

                                        Depois, reinicie a instância do nginx, ou reinicia o servidor e testa novamente.

                                        1 Reply Last reply Reply Quote 0
                                        • J
                                          julioelbueno
                                          last edited by Jun 9, 2017, 6:24 PM

                                          Parabéns pelo Manual, funcionou muito bem, está bem explicativo, até para quem não tem tanto conhecimento.
                                          E sobre dar a mensagens para paginas HTTPS tem alguma novidade?

                                          1 Reply Last reply Reply Quote 0
                                          108 out of 182
                                          • First post
                                            108/182
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            This community forum collects and processes your personal information.
                                            consent.not_received