[GUIA] Proxy HTTP/HTTPS + SquidGuard + sgerror.php + WPAD via DHCP e DNS 100%
-
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![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) -
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 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;
}
}
} -
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.
-
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 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.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 directories
Ja 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.