• 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 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.
  • B
    brunok
    last edited by Oct 18, 2016, 6:21 PM

    O DNS Resolver vem ativado por padrão na instalação do PF.

    Desative ele e deixe apenas o DNS Forwarder ativado.

    1 Reply Last reply Reply Quote 0
    • R
      Rene_Probst
      last edited by Oct 20, 2016, 12:00 PM

      Ola pessoal bom dia;

      Segui o tutorial ao pe da letra td como manda o figurino. mas quando chega nesta parte nao consigo passar dela.

      Reinicie o servidor, para testar se o script da 2ª instância ficou 100%.

      Quando voltar, acesse o ip do servidor apenas com http na porta 80, vai aparecer tela de aviso do NGINX funcionando.
      Caso não apareça, verifique se deu permissão de execução no script nginx2.sh / execute manualmente por enquanto.

      Quando eu acesso o ip http://192.168.1.1:80 ele sempre redireciona para a painga de login do pfsense e se acesso com outro navegador da time out nao encontra nenhuma pagina. Onde foi que eu errei?

      1 Reply Last reply Reply Quote 0
      • B
        brunok
        last edited by Oct 21, 2016, 10:15 AM

        @Rene_Probst:

        Ola pessoal bom dia;

        Segui o tutorial ao pe da letra td como manda o figurino. mas quando chega nesta parte nao consigo passar dela.

        Reinicie o servidor, para testar se o script da 2ª instância ficou 100%.

        Quando voltar, acesse o ip do servidor apenas com http na porta 80, vai aparecer tela de aviso do NGINX funcionando.
        Caso não apareça, verifique se deu permissão de execução no script nginx2.sh / execute manualmente por enquanto.

        Quando eu acesso o ip http://192.168.1.1:80 ele sempre redireciona para a painga de login do pfsense e se acesso com outro navegador da time out nao encontra nenhuma pagina. Onde foi que eu errei?

        O Chrome salva em cache as urls acessadas. Se o seu webConfigurator é HTTPS, pode digitar manualmente HTTP que ele puxa HTTPS do cache.
        Você pode tentar por uma guia anônima, ou outro navegador.

        Se não estiver funcionando, provavelmente não subiu a instância do NGINX2.conf.

        Você pode executá-la manualmente para testar, mas tem que validar para subir automaticamente.

        Outra forma de garantir isso, é baixar o pacote Shellcmd (este te libera a adição de funções que vão iniciar junto do firewall) e neste, você cria uma entrada do tipo shellcmd com a informação:

        sh /usr/local/etc/rc.d/nginx2.sh
        

        Depois só reiniciar o server e testar novamente a porta 80.

        1 Reply Last reply Reply Quote 0
        • R
          Rene_Probst
          last edited by Oct 21, 2016, 12:41 PM Oct 21, 2016, 12:31 PM

          Ola, Bruno obrigado pelo seu apoio e material esta otimo. Porem jovem segui seu exemplo de instalar o shell e levantar o script com o comando fiz isso reiniciei o server porem ainda nao consegui. Abri uma pagina em anonimo mas ainda puxa o https e a pagina de login do pfsense. Abri em outro navegador especificando a porta 80 ai deu pagina nao encontrada. O que pode ser?. Como seria executar manualmente nao entendi esta parte.

          Eu executei este comando no shell dentro do pfsense e me retornou com este erro nao sei se pode ajudar!!

          comando no Shell: /usr/local/etc/rc.d/nginx2.sh
          me retorna com este erro

          Shell Output - sh /usr/local/etc/rc.d/nginx2.sh

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

          1 Reply Last reply Reply Quote 0
          • B
            brunok
            last edited by Oct 21, 2016, 12:55 PM

            Qual a versão do seu PF?

            O comando para executar manualmente é este:

            sh /usr/local/etc/rc.d/nginx2.sh
            

            Lembrando que você deve dar a permissão de execução nesse arquivo.

            Parece que foi executado, mas está reclamando de uma configuração do NGINX2.conf.

            Você escreveu manualmente no arquivo?  ???

            O interessante é copiar e colar, pra não haver erros de caracteres. Faça pelo próprio webConfigurator, em Diagnósticos > Editar arquivo

            Navegue até o local do nginx2.conf e cole o conteúdo lá.

            1 Reply Last reply Reply Quote 0
            • R
              Rene_Probst
              last edited by Oct 21, 2016, 1:23 PM

              Ola versao do pfsense.

              2.3.2-RELEASE-p1 (amd64)
              FreeBSD 10.3-RELEASE-p9 .

              A permissao esta ok esta 755 eu fiz toda a conf pelo putty. ja tenho alguma experiencia com ele entao achei melhor fazer pelo putty mesmo.
              E toda a conf eu copiei e colei do tutorial nao escrevi nada manualmente para nao ter erros nos caracteres.
              Executei como voce falo pelo pfsense editei novamente o arquivo e colei as informações dentro dele. Reinicei o server mas sem sucesso, fui no prompt comando e executei o comando e me retorno este erro agora.

              nginx: [emerg] bind() to 192.168.1.1:80 failed (48: Address already in use)
              nginx: [emerg] still could not bind()

              Meu webgui esta via HTTPS na porta 9443 como seu exemplo.

              1 Reply Last reply Reply Quote 0
              • B
                brunok
                last edited by Oct 21, 2016, 1:59 PM

                Pela mensagem, aparentemente já está rodando algo na porta 80 (O próprio NGINX?  ???).

                Faça o seguinte, no terminal do seu servidor, digite o comando:

                curl http://192.168.1.1
                

                Onde 192.168.1.1 é o ip LAN do seu pf. Poste o resultado aqui.

                Outra coisa, poste também o seu nginx2.conf.

                1 Reply Last reply Reply Quote 0
                • R
                  Rene_Probst
                  last edited by Oct 21, 2016, 2:40 PM

                  Comando curl http://192.168.1.1

                  % Total    % Received % Xferd  Average Speed  Time    Time    Time  Current
                  Dload  Upload  Total  Spent    Left  Speed

                  0    0    0    0    0    0      0      0 –:--:-- --:--:-- --:--:--    0
                  100  612  100  612    0    0  1669k      0 --:--:-- --:--:-- --:--:--  597k

                  <title>Welcome to nginx!</title>

                  Welcome to nginx!

                  If you see this page, the nginx web server is successfully installed and
                  working. Further configuration is required.

                  For online documentation and support please refer to
                  nginx.org.

                  Commercial support is available at
                  nginx.com.

                  Thank you for using nginx.


                  CONF DO 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 Oct 21, 2016, 3:17 PM

                    Com o resultado do comando curl, nota-se que o NGINX já está rodando!

                    A configuração está correta.

                    Veja a configuração em Sistema > Avançado > Acesso de Administrador

                    Deixe desmarcado a opção "Redirecionamento WebGUI" e teste novamente.

                    1 Reply Last reply Reply Quote 0
                    • R
                      Rene_Probst
                      last edited by Oct 21, 2016, 3:40 PM

                      Certo..

                      Na realidade ja estava desmarcado e nao estava dando certo desta forma, Entao marquei esta opção para ver se daria certo. Depois do que voce postou fui la entao e desmarquei a opção do WebGUI. E abri o navegador IE e apareceu a tela do NGINX vou continuar o processo vlw. Qualquer coisa eu posto aqui. Obrigadi….

                      1 Reply Last reply Reply Quote 0
                      • R
                        Rene_Probst
                        last edited by Oct 21, 2016, 4:17 PM

                        Ola Bruno treminei todo configuração tanto do squid como do squid guard. Reiniciei o servidor reiniciei a conexao de rede da minha estação. Porem os bloqueios nao acontecem criei um target com site bloqueados por exemplo e coloquei alguns site para testar o bloqueio botei o ip da minha maquina na quele grupo. salvei e apliquei na aba geral do squid guard. mas mesmo assim os bloqueios nao estao acontecendo esta td liderado.
                        Sabe onde posso ter errado?

                        Na commom acl tambem coloquei deny tanto para o BRADESCO  quanto a minha target que criei e tambem para NEWS e testei sites relacionas mas mesmo assim o bloquei nao esta acontecendo.

                        1 Reply Last reply Reply Quote 0
                        • B
                          brunok
                          last edited by Oct 21, 2016, 6:55 PM

                          O BRADESCO tem que ficar como WHITELIST.

                          Deixe a ACL Default como DENY e teste qualquer site, depois você vai ajustando as outras categorias.

                          Não esqueça de aplicar na aba Geral.

                          Obs.: A página de bloqueio só aparece para sites HTTP. Para sites HTTPS, aparece erro de túnel (quando foi bloqueada)… Essa parte ainda não consegui deixar 100%, mas o bloqueio em si é o que importa.  :P

                          1 Reply Last reply Reply Quote 0
                          • R
                            Rene_Probst
                            last edited by Oct 21, 2016, 7:09 PM

                            Poxa bruno infelizmente segui td como voce me falo mas ainda assim nao esta dando certo os bloqueios nao estao acontecendo. Coloquei a target BRADESCO como whitelist e o restante la na commom como DENY apliquei na aba geral mas ainda assim os bloqueios nao estao acontecendo ele so bloqueiam quando eu configuro o proxy no navegador…

                            1 Reply Last reply Reply Quote 0
                            • B
                              brunok
                              last edited by Oct 24, 2016, 11:23 AM Oct 24, 2016, 10:40 AM

                              @Rene_Probst:

                              Poxa bruno infelizmente segui td como voce me falo mas ainda assim nao esta dando certo os bloqueios nao estao acontecendo. Coloquei a target BRADESCO como whitelist e o restante la na commom como DENY apliquei na aba geral mas ainda assim os bloqueios nao estao acontecendo ele so bloqueiam quando eu configuro o proxy no navegador…

                              Opa, então está funcionando o bloqueio! Não é problema do squidGuard.

                              A máquina cliente que está fazendo testes, está como DHCP? (Não funciona com ip setado).

                              Você consegue na máquina cliente, baixar o arquivo wpad?

                              Por exemplo, http://wpad.localdomain/wpad.dat

                              Se estiver tudo certo, vai baixar o arquivo. Caso não baixe, tem algo errado na configuração. Veja se os arquivos estão na pasta nginx-dist (proxy.pac, wpadt.dat, wpadt.da)

                              Outro detalhe também, no navegador deve estar marcado para detectar automaticamente as configurações de proxy.

                              1 Reply Last reply Reply Quote 0
                              • R
                                Rene_Probst
                                last edited by Oct 24, 2016, 3:52 PM

                                Opa boa tarde Vamos la:

                                Estação de teste:

                                esta como DHCP ativado.
                                Consegui fazer o download do arquivo wpad.dat
                                Os arquivos  (proxy.pac, wpadt.dat, wpadt.da) estao dentro da pasta nginx-dist
                                O proxy esta para detectar automaticamente nos navegadores e opções da internet que é a mesma coisa  :P
                                Mas….

                                Nada feito os bloqueios nao estao acontecendo.

                                1 Reply Last reply Reply Quote 0
                                • B
                                  brunok
                                  last edited by Oct 24, 2016, 4:29 PM

                                  Post o print das suas conf do DHCP, DNS Forwarder.

                                  Coloque o conteúdo do seu arquivo proxy.pac aqui também.

                                  Informe também o ip LAN e domínio que está utilizando.

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    Rene_Probst
                                    last edited by Oct 24, 2016, 4:46 PM

                                    Certo Vamos la:

                                    Conteudo proxy.pac:

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

                                    –----------------------------------------------------------------------------------------------------

                                    IP DA LAN  192.168.1.1/24. 
                                    DOMINIO QUE CONFIGUREI: allianza.com.br

                                    ![DHCP 1.jpg](/public/imported_attachments/1/DHCP 1.jpg)
                                    ![DHCP 1.jpg_thumb](/public/imported_attachments/1/DHCP 1.jpg_thumb)
                                    ![DHCP 2.jpg](/public/imported_attachments/1/DHCP 2.jpg)
                                    ![DHCP 2.jpg_thumb](/public/imported_attachments/1/DHCP 2.jpg_thumb)
                                    ![DHCP 3.jpg](/public/imported_attachments/1/DHCP 3.jpg)
                                    ![DHCP 3.jpg_thumb](/public/imported_attachments/1/DHCP 3.jpg_thumb)
                                    ![DNS 1.png](/public/imported_attachments/1/DNS 1.png)
                                    ![DNS 1.png_thumb](/public/imported_attachments/1/DNS 1.png_thumb)
                                    ![DNS 2.png](/public/imported_attachments/1/DNS 2.png)
                                    ![DNS 2.png_thumb](/public/imported_attachments/1/DNS 2.png_thumb)
                                    ![DNS 3.png](/public/imported_attachments/1/DNS 3.png)
                                    ![DNS 3.png_thumb](/public/imported_attachments/1/DNS 3.png_thumb)

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      brunok
                                      last edited by Oct 24, 2016, 4:52 PM

                                      Está tudo certo na configuração.

                                      Estou achando que pode ser algo referente ao domínio no seu arquivo nginx2.conf.

                                      Coloque o conteúdo dele aqui.

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Rene_Probst
                                        last edited by Oct 24, 2016, 5:05 PM

                                        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 Oct 24, 2016, 6:33 PM

                                          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
                                          40 out of 182
                                          • First post
                                            40/182
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            This community forum collects and processes your personal information.
                                            consent.not_received