Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Squid com autenticação integrada ao Captive Portal

    Scheduled Pinned Locked Moved Portuguese
    88 Posts 35 Posters 51.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • marcellocM
      marcelloc
      last edited by

      @calebepereira:

      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.

      @calebepereira:

      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.

      Treinamentos de Elite: http://sys-squad.com

      Help a community developer! ;D

      1 Reply Last reply Reply Quote 0
      • M
        milton.fine.br
        last edited by

        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.5

        Autenticaçã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 corretamente

        Captive 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 dgfilter

        2. 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.php

        3. 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.php

        4. Shell
        /usr/pbi/squid-amd64/libexec/squid/check_ip.php
        Não retorna informação

        5. 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

        1 Reply Last reply Reply Quote 0
        • C
          calebepereira
          last edited by

          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.

          1 Reply Last reply Reply Quote 0
          • M
            mendilli
            last edited by

            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

            1 Reply Last reply Reply Quote 0
            • marcellocM
              marcelloc
              last edited by

              Thanks for your contribution on this topic  :)

              Treinamentos de Elite: http://sys-squad.com

              Help a community developer! ;D

              1 Reply Last reply Reply Quote 0
              • M
                mendilli
                last edited by

                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

                1 Reply Last reply Reply Quote 0
                • marcellocM
                  marcelloc
                  last edited by

                  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

                  Treinamentos de Elite: http://sys-squad.com

                  Help a community developer! ;D

                  1 Reply Last reply Reply Quote 0
                  • marcellocM
                    marcelloc
                    last edited by

                    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.

                    Treinamentos de Elite: http://sys-squad.com

                    Help a community developer! ;D

                    1 Reply Last reply Reply Quote 0
                    • A
                      amaica
                      last edited by

                      @marcelloc:

                      @marcelloc:

                      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 authentication

                      No 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.

                      1 Reply Last reply Reply Quote 0
                      • marcellocM
                        marcelloc
                        last edited by

                        @amaica:

                        Ola Marcelloc, eu tenho instalado o squid3 mas não aparece a opção captive na aba Authentication.

                        Squid3-dev

                        Treinamentos de Elite: http://sys-squad.com

                        Help a community developer! ;D

                        1 Reply Last reply Reply Quote 0
                        • N
                          naarea
                          last edited by

                          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?

                          1 Reply Last reply Reply Quote 0
                          • marcellocM
                            marcelloc
                            last edited by

                            Na última versão do pacote, não precisa criar as acls na mão.

                            Como está sua configuração?

                            Treinamentos de Elite: http://sys-squad.com

                            Help a community developer! ;D

                            1 Reply Last reply Reply Quote 0
                            • N
                              naarea
                              last edited by

                              Fiz tudo automatico direto na ultima versão :)

                              Por isso ta tudo certinho, mas o problema esta apresentando no LOG.

                              1 Reply Last reply Reply Quote 0
                              • marcellocM
                                marcelloc
                                last edited by

                                Seu pfsense é 2.0 ou 2.1?

                                Treinamentos de Elite: http://sys-squad.com

                                Help a community developer! ;D

                                1 Reply Last reply Reply Quote 0
                                • N
                                  naarea
                                  last edited by

                                  2.1 recem instalado e fazendo testes.

                                  1 Reply Last reply Reply Quote 0
                                  • marcellocM
                                    marcelloc
                                    last edited by

                                    No log do squid não aparece nenhuma linha de log com usuário?

                                    Treinamentos de Elite: http://sys-squad.com

                                    Help a community developer! ;D

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      naarea
                                      last edited by

                                      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.

                                      1 Reply Last reply Reply Quote 0
                                      • marcellocM
                                        marcelloc
                                        last edited by

                                        este erro aparece no access.log ou no cache.log?

                                        Treinamentos de Elite: http://sys-squad.com

                                        Help a community developer! ;D

                                        1 Reply Last reply Reply Quote 0
                                        • N
                                          naarea
                                          last edited by

                                          no cache.log

                                          1 Reply Last reply Reply Quote 0
                                          • marcellocM
                                            marcelloc
                                            last edited by

                                            Você está usando o proxy configurado no browser ou no modo transparente?

                                            Vou tentar simular isso aqui aqui novamente.

                                            Treinamentos de Elite: http://sys-squad.com

                                            Help a community developer! ;D

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.