Squid com autenticação integrada ao Captive Portal
-
Tem como fazer?
1 sim. mas depende do onde está rodando o seu servidor freeradius.
2 O squidguard não contempla isso mas pode ser contornado trabalhando em conjunto com o squid. SSL somente com interceptação de SSL
3 Sarg não é capaz de informar a velocidade do site, só se foi bloqueado ou não.e quanto ficaria cada um?
Não da para estipular um valor fixo uma vez que tudo depende da complexidade das alterações e o tempo gasto para isso. Podemos acertar um valor por hora de programação em private.
-
Segui os procedimentos indicados mas os serviços do squid e squidguard permanecem com status stopped.
Agradeço a ajuda.pfsense: 2.1-RELEASE (amd64)
squid3: 3.1.20 pkg 2.0.6
squidGuard: 1.4_4 pkg v.1.9.5Autenticação na interface LAN (squid e squidguard) integrada com Active Directory funciona corretamente
Autenticação na interface OPT (captive portal) integrada com Radius Windows 2008 R2 funciona corretamenteCaptive Portal + Squid + Squidguard não consegui implementar.
1. Proxy Server > Custom Options
external_acl_type check_filter children-startup=5 ttl=60 %SRC /usr/pbi/squid-amd64/libexec/squid/check_ip.php
acl dgfilter external check_filter
http_access allow dgfilter2. Shell
fetch -o /usr/pbi/squid-amd64/libexec/squid/check_ip.php https://raw.github.com/pfsense/pfsense-packages/master/config/squid3/33/check_ip.php3. Shell
ls -l /usr/pbi/squid-amd64/libexec/squid/check_ip.php
-rwxr-xr-x 1 root wheel 2769 Sep 26 07:12 /usr/pbi/squid-amd64/libexec/squid/check_ip.php4. Shell
/usr/pbi/squid-amd64/libexec/squid/check_ip.php
Não retorna informação5. Status > System Logs > General
Sep 26 07:33:03 squid: Bungled squid.conf line 85: external_acl_type check_filter children-startup=5 ttl=60 %SRC /usr/pbi/squid-amd64/libexec/squid/check_ip.php
Sep 26 07:33:08 php[30152]: /status_services.php: The command '/usr/local/etc/rc.d/squid.sh stop' returned exit code '1', the output was 'FATAL: Bungled squid.conf line 85: external_acl_type check_filter children-startup=5 ttl=60 %SRC /usr/pbi/squid-amd64/libexec/squid/check_ip.php Squid Cache (Version 3.1.22): Terminated abnormally. CPU Usage: 0.006 seconds = 0.006 user + 0.000 sys Maximum Resident Size: 6072 KB Page faults with physical i/o: 0'
Sep 26 07:33:10 squid: Bungled squid.conf line 85: external_acl_type check_filter children-startup=5 ttl=60 %SRC /usr/pbi/squid-amd64/libexec/squid/check_ip.php -
eu falo com vc com:
só neste e-mail:forum@pfsense.org
entra em contato comigo no e-mail calebepereira@hotmail.com para que possamos conversar se for possível um tel eu fico grato.
-
sorry ı have to use english
a small contribution to the external acl type scrirpt
ttl=60 means the code will not check the ip for 60 seconds, and will use the first username for that period even if the user loged out and a new one logged in, a value shorter like ttl=0 or ttl=1 would be more accurate I think
-
Thanks for your contribution on this topic :)
-
one last thing:
when external_acl_type returns ERR, squid blocks the connection, so if you make some users bypass the captiveportal and connect directly to internet, squid external acl directive will not find a username and return an ERR message, this will block the client, so the last part of the check_ip.php should be like this
if ($usuario !="")
$resposta="OK user={$usuario}";
else
$resposta="OK user=bypasseduser";
fwrite (STDOUT, "{$resposta}\n");
unset($cp_db);so in access log you will see "bypasseduser" in the field of username
-
Autenticação do captive portal authentication incluída no squid3-dev.
Não precisa mais configurar "custom options", basta selecionar captive portal na aba authentication -
Consegui fazer um SSO sem usar ntlm ou kerberos no squid. Vou amadurecer mais a idéia por aqui e qualquer dia deste publico para comunidade.
-
Em breve começo os testes com o captive portal da 2.1
Acabei de subir o helper que integra a autenticação do captive portal com o squid.
A alteração na interface para o squid2 já está pronta mas vou deixar para publicar depois
Por enquanto:
No squid3, basta selecionar captive portal na aba authenticationNo squid2, inclua estas configurações no campo custom options
external_acl_type check_filter children=5 ttl=60 %SRC /usr/pbi/squid-amd64/libexec/squid/check_ip.php;acl dgfilter external check_filter;http_access allow dgfilter;
E baixe este arquivo
fetch -o /usr/pbi/squid-amd64/libexec/squid/check_ip.php https://raw.github.com/pfsense/pfsense-packages/master/config/squid3/33/check_ip.php
Ola Marcelloc, eu tenho instalado o squid3 mas não aparece a opção captive na aba Authentication.
-
Ola Marcelloc, eu tenho instalado o squid3 mas não aparece a opção captive na aba Authentication.
Squid3-dev
-
Estou tentando fazer essa autenticação funcionar e to tomando um coro rs.
o Squid insiste em dizer que "unexpect read from check_filter 4 bytes ERR"
Ja conferi o PHP e ele ta certinho. Acha a base normal.
Rodando ele na mao, quando jogo o IP ele retorna o user ou ERR.
Mas o squid insiste em não aceitar o STDOUT.
Alguem pode me dar um help?
-
Na última versão do pacote, não precisa criar as acls na mão.
Como está sua configuração?
-
Fiz tudo automatico direto na ultima versão :)
Por isso ta tudo certinho, mas o problema esta apresentando no LOG.
-
Seu pfsense é 2.0 ou 2.1?
-
2.1 recem instalado e fazendo testes.
-
No log do squid não aparece nenhuma linha de log com usuário?
-
Nada, apenas esses erros falando do helper.
Já tentei baixar o check_ip.php de novo e trocar, tentei tirar o \n do ERR, colocar, fazer um TRIM e nada. Ele acha algum problema.
-
este erro aparece no access.log ou no cache.log?
-
no cache.log
-
Você está usando o proxy configurado no browser ou no modo transparente?
Vou tentar simular isso aqui aqui novamente.