[GUIA] Proxy HTTP/HTTPS + SquidGuard + sgerror.php + WPAD via DHCP e DNS 100%
- 
 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. 
- 
 Ok Conteudo Nginx2.conf: nginx configuration fileworker_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;
 }
 }
 }
- 
 Acho que é este o problema: server_name wpad.localdomainDentro 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. 
- 
 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 fileworker_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 
- 
 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. 
- 
 Como mando uma mensagem pra voce no privado? 
- 
 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 ;Dfunction 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";
 }
- 
 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
- 
 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 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
- 
 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. 
- 
 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.19na 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 directoriesJa li muito aqui sobre… mais nada que tenha resolvido. 
 Alguem sabe o que pode estar acontecendo?
- 
 Fiz um teste, desabilitei o: HTTPS/SSL Interception Enable SSL filtering. Dai ele inicia… 
- 
 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 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_1Você 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 
- 
 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. 
- 
 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. 
- 
 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? 
- 
 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. 
- 
 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:  
 
- 
 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 
- 
 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 
