Erro Squid Pfsense 2.3
-
Bom dia Galera instalei o Pfsense do zero na minha infra estou usando a versão 2.3.2-RELEASE (amd64) eu instalei o squid e squidguard, criei um usuario local e usei a politica default allow para testar, só que fica aparecendo esperando pelo tunel de proxy e nao navega a dificuldade maior e nos sites https mais nao tem nenhuma regra fazendo filtro de nada era pra simplismente navegar , segue meu relatorio do squid
2016/08/10 08:58:58| pinger: Initialising ICMP pinger ... 2016/08/10 08:59:05| pinger: Initialising ICMP pinger ... 2016/08/10 08:59:16 kid1| Shutdown: NTLM authentication. 2016/08/10 08:59:16 kid1| Shutdown: Negotiate authentication. 2016/08/10 08:59:16 kid1| Shutdown: Digest authentication. 2016/08/10 08:59:16 kid1| Shutdown: Basic authentication. CPU Usage: 14.465 seconds = 8.813 user + 5.652 sys Maximum Resident Size: 100464 KB Page faults with physical i/o: 12 2016/08/10 08:59:17 kid1| Starting Squid Cache version 3.5.19 for amd64-portbld-freebsd10.3... 2016/08/10 08:59:17 kid1| Service Name: squid 2016/08/10 08:59:18| pinger: Initialising ICMP pinger ... 2016/08/10 08:59:55 kid1| Starting new basicauthenticator helpers...
Segue meu relatorio de acesso
1470830391.547 0 192.168.0.170 TCP_DENIED/407 3906 CONNECT client.wns.windows.com:443 - HIER_NONE/- text/html 1470830392.524 11 192.168.0.170 TCP_DENIED/407 4763 GET http://www.fug.com.br/historico/html/freebsd/2012-09/msg00193.html - HIER_NONE/- text/html 1470830393.492 0 192.168.0.170 TCP_DENIED/407 3906 CONNECT client.wns.windows.com:443 - HIER_NONE/- text/html 1470830395.880 405 192.168.0.170 TCP_MISS/304 292 GET http://www.fug.com.br/historico/html/freebsd/2012-09/msg00193.html teste HIER_DIRECT/177.10.159.14 - 1470830397.069 3 192.168.0.170 TCP_TUNNEL/200 137 CONNECT 192.168.0.1:443 teste HIER_DIRECT/192.168.0.1 - 1470830405.425 0 192.168.0.170 TCP_DENIED/407 3906 CONNECT client.wns.windows.com:443 - HIER_NONE/- text/html 1470830408.596 0 192.168.0.170 TCP_DENIED/407 3906 CONNECT client.wns.windows.com:443 - HIER_NONE/- text/html 1470830415.098 0 192.168.0.170 TCP_DENIED/407 3934 CONNECT ocos-office365-s2s.msedge.net:443 - HIER_NONE/- text/html 1470830415.098 0 192.168.0.170 TCP_DENIED/407 3902 CONNECT config.edge.skype.com:443 - HIER_NONE/- text/html 1470830415.262 0 192.168.0.170 TCP_DENIED/407 488 HEAD http://officecdn.microsoft.com/pr/64256afe-f5d9-4f86-8936-8840a6a4f5be/Office/Data/v64_16.0.7070.2033.cab - HIER_NONE/- text/html 1470830415.266 0 192.168.0.170 TCP_DENIED/407 4302 GET http://officecdn.microsoft.com/pr/64256afe-f5d9-4f86-8936-8840a6a4f5be/Office/Data/v64_16.0.7070.2033.cab - HIER_NONE/- text/html 1470830415.324 0 192.168.0.170 TCP_DENIED/407 3918 CONNECT nexus.officeapps.live.com:443 - HIER_NONE/- text/html 1470830415.331 0 192.168.0.170 TCP_DENIED/407 3938 CONNECT nexusrules.officeapps.live.com:443 - HIER_NONE/- text/html 1470830415.368 0 192.168.0.170 TCP_DENIED/407 3938 CONNECT nexusrules.officeapps.live.com:443 - HIER_NONE/- text/html 1470830415.377 0 192.168.0.170 TCP_DENIED/407 3918 CONNECT nexus.officeapps.live.com:443 - HIER_NONE/- text/html 1470830420.436 21396 192.168.0.170 TCP_MISS_ABORTED/000 0 GET http://www.globo.com/ teste HIER_DIRECT/2804:294:4000:8000::5 - 1470830458.983 60941 192.168.0.170 TCP_TUNNEL/200 0 CONNECT www.google.com.br:443 teste HIER_DIRECT/172.217.29.35 - 1470830458.984 60481 192.168.0.170 TCP_TUNNEL/200 0 CONNECT www.google.com.br:443 teste HIER_DIRECT/172.217.29.35 - 1470830458.986 61005 192.168.0.170 TCP_TUNNEL/200 0 CONNECT www.google.com.br:443 teste HIER_DIRECT/172.217.29.35 - 1470830458.987 60623 192.168.0.170 TCP_TUNNEL/200 0 CONNECT www.google.com.br:443 teste HIER_DIRECT/172.217.29.35 - 1470830458.987 60907 192.168.0.170 TCP_TUNNEL/200 0 CONNECT www.google.com.br:443 teste HIER_DIRECT/172.217.29.35 - 1470830458.987 60628 192.168.0.170 TCP_TUNNEL/200 0 CONNECT www.google.com.br:443 teste HIER_DIRECT/172.217.29.35 - 1470830467.299 59762 192.168.0.170 TCP_TUNNEL/200 0 CONNECT facebook.com:443 teste HIER_DIRECT/173.252.89.132 -
-
ninguém tem ideia do que pode ser ?
-
também estou com esse problema (ou pelo meno parecido o suficiente)….. todavia: autenticando local ele funciona.
se eu colocar a subnet toda pra não pedir autenticação ele funciona também. mas ao colocar pra autenticar no AD, ele fica em looping e nao autentica!
percebi que no cache.log fica a linha:kid1| Starting new basicauthenticator helpers...
e não passa disso.
acredito ser um problema com os helpers do squid, mas não encontro informações mais precisas nos logs.por favor, como podemos verificar esse processo de autenticacao no pfsense? tem algum log, comando ou algo mais especifico que nos retorne alguma informação mais precisa?
-
O squid está buscando no AD com o seguinte comando:
/usr/local/libexec/squid/basic_ldap_auth -v 3 -b dc=dominio,dc=intra -D cn=pfsense,cn=Users,dc=dominio,dc=intra -w password -f 'sAMAccountName=s%' -u uid -P 192.168.0.2:389
Adicionei a opção -d (debug) ao comando acima e fiz um teste com o usuario "teste1". Ele vai no AD buscar pelo usuário e retorna o seguinte:
basic_ldap_auth.cc(691): pid=29456 :user filter 'sAMAccountName=s', searchbase 'dc=dominio,dc=intra' basic_ldap_auth.cc(713): pid=29456 :Ldap search returned nothing ERR Success
todavia, fazendo uma busca pelo usuário "teste1" no AD retorna as informações do usuario em questão:
[2.3.2-RELEASE][root@pfSense.phoenix.intra]/root: ldapsearch -x -LLL -D 'CN=pfsense,CN=Users,DC=dominio,DC=intra' -W -h 192.168.0.2:389 -b 'DC=dominio,DC=intra' -s sub '(sAMAccountName=teste1)' Enter LDAP Password: dn: CN=Teste,OU=Usuarios Comuns,OU=EMPRESA,DC=dominio,DC=intra objectClass: top objectClass: person objectClass: organizationalPerson objectClass: user cn: Teste sn: givenName: Teste distinguishedName: CN=Teste,OU=Usuarios Comuns,OU=EMPRESA,DC=dominio,DC=intra instanceType: 4 whenCreated: 20160702140223.0Z whenChanged: 20160825140553.0Z displayName: Teste uSNCreated: 12974 memberOf: CN=Financeiro,OU=Grupos,OU=EMPRESA,DC=dominio,DC=intra uSNChanged: 35426 name: Teste objectGUID:: cJpFXaM3c0yvtumaKsBKTQ== userAccountControl: 66048 badPwdCount: 0 codePage: 0 countryCode: 0 badPasswordTime: 0 lastLogoff: 0 lastLogon: 131119507663666927 pwdLastSet: 131166075531594871 primaryGroupID: 513 objectSid:: AQUAAAAAAAUVAAAAdcEfaqxTjW747u9sWgQAAA== accountExpires: 9223372036854775807 logonCount: 2 sAMAccountName: teste1 sAMAccountType: 805306368 userPrincipalName: teste1@dominio.intra objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=dominio,DC=intra ...
ou seja, o squid está se conectando ao AD mas não está conseguindo achar o usuário identificado pelo login e senha.
enquanto isso, no navegador, o squid fica em looping pedindo autenticação e nunca autentica!
Alguma dica de como resolver?
-
@UnDr3aD:
O squid está buscando no AD com o seguinte comando:
/usr/local/libexec/squid/basic_ldap_auth -v 3 -b dc=dominio,dc=intra -D cn=pfsense,cn=Users,dc=dominio,dc=intra -w password -f 'sAMAccountName=s%' -u uid -P 192.168.0.2:389
Adicionei a opção -d (debug) ao comando acima e fiz um teste com o usuario "teste1". Ele vai no AD buscar pelo usuário e retorna o seguinte:
basic_ldap_auth.cc(691): pid=29456 :user filter 'sAMAccountName=s', searchbase 'dc=dominio,dc=intra' basic_ldap_auth.cc(713): pid=29456 :Ldap search returned nothing ERR Success
todavia, fazendo uma busca pelo usuário "teste1" no AD retorna as informações do usuario em questão:
[2.3.2-RELEASE][root@pfSense.phoenix.intra]/root: ldapsearch -x -LLL -D 'CN=pfsense,CN=Users,DC=dominio,DC=intra' -W -h 192.168.0.2:389 -b 'DC=dominio,DC=intra' -s sub '(sAMAccountName=teste1)' Enter LDAP Password: dn: CN=Teste,OU=Usuarios Comuns,OU=EMPRESA,DC=dominio,DC=intra objectClass: top objectClass: person objectClass: organizationalPerson objectClass: user cn: Teste sn: givenName: Teste distinguishedName: CN=Teste,OU=Usuarios Comuns,OU=EMPRESA,DC=dominio,DC=intra instanceType: 4 whenCreated: 20160702140223.0Z whenChanged: 20160825140553.0Z displayName: Teste uSNCreated: 12974 memberOf: CN=Financeiro,OU=Grupos,OU=EMPRESA,DC=dominio,DC=intra uSNChanged: 35426 name: Teste objectGUID:: cJpFXaM3c0yvtumaKsBKTQ== userAccountControl: 66048 badPwdCount: 0 codePage: 0 countryCode: 0 badPasswordTime: 0 lastLogoff: 0 lastLogon: 131119507663666927 pwdLastSet: 131166075531594871 primaryGroupID: 513 objectSid:: AQUAAAAAAAUVAAAAdcEfaqxTjW747u9sWgQAAA== accountExpires: 9223372036854775807 logonCount: 2 sAMAccountName: teste1 sAMAccountType: 805306368 userPrincipalName: teste1@dominio.intra objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=dominio,DC=intra ...
ou seja, o squid está se conectando ao AD mas não está conseguindo achar o usuário identificado pelo login e senha.
enquanto isso, no navegador, o squid fica em looping pedindo autenticação e nunca autentica!
Alguma dica de como resolver?
Depois de muuuitos testes consegui perceber que o problema da autenticação estava, na verdade, na variável que o squid busca o usuário no AD => sAMAccountName=s% <=
De alguma forma o login digitado no prompt do navegador não estava chegando corretamente nesse termo.
Então, com foco no local certo, consegui identificar que o "s%" deveria ser "%s".
Uma simples inversão de caracteres me lascou esses últimos 2 dias! kkkkk
Achei estranho isso por que - se eu não estiver redondamente enganado novamente - esse termo já estava dessa forma na configuração padrão do squid e, ao ver rapidamente isso passa desapercebido!