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

    Squid com autenticação integrada ao Captive Portal

    Portuguese
    35
    88
    49.4k
    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.
    • ?
      Guest
      last edited by

      brigadão
      funcionou ok com os log do squid.

      teria alguma forma de no captive portal o usuario que autentica no freeradiun do pfsense ele ter a opão de auterar senha na pagina de autenticação?

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

        @calebepereira@hotmail.com:

        brigadão
        funcionou ok com os log do squid.

        teria alguma forma de no captive portal o usuario que autentica no freeradiun do pfsense ele ter a opão de auterar senha na pagina de autenticação?

        Só programando mesmo…

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

        Help a community developer! ;D

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

          1. captive portal -  na pagina do login do captive portal ter opção de alterar senha e recuperar senha ( integrado com o freeradiun) lembrando que no cadastro do freeradiuns não temo campo de e-mail do usuário.

          2. proxy transparente squid3-dev com squidguard - gostaria de ao invés de bloquear os sites que estão no squidguard eu tenha uma opção de criar velocidades de download para cada regra,
            tres opções de regra onde eu possa incluir sites por nome para cair nestas regras, e um campo com a opção de criar as velocidade que eu quero.

          ex: pornografia - bloqueio
          radios online    - 200kb
          video onnline    - 100kb
          comunidade      - 300kb
          particularidade1 - 50kb
          particularidade2 - 500kb
          particularidade3 - 20 kb

          obs: isso funcionará para sites em https tambem

          1. sarg vai continuar mostrando relatórios por usuários logados no captiveportal, vai mostrar cada site com a opção bloqueado ou a velocidade daquele grupo, caso o site esteja em algum grupo.

          tem como fazer? e quanto ficaria cada um?
          1
          2
          3

          1 Reply Last reply Reply Quote 0
          • 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
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.