[GUIA] Proxy HTTP/HTTPS + SquidGuard + sgerror.php + WPAD via DHCP e DNS 100%
- 
 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…. 
- 
 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. 
- 
 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 
- 
 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… 
- 
 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. 
- 
 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. 
- 
 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. 
- 
 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 
 
 
 
 
 
 
 
 
 
 
 
- 
 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…