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

    Pfsense + Squid + NTLM (Autenticação AD transparente)

    Scheduled Pinned Locked Moved Portuguese
    108 Posts 41 Posters 64.7k 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.
    • S
      santello
      last edited by

      o tutorial na primeira página do tópico ainda funciona NA VERSÃO TESTADA. O pessoal tem que se atentar a isto.

      Na 2.2 muda o pacote samba, o processo é outro.

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

        Bom dia a todos,
        realmente na versão 2.2.X e superiores não esta funcionando.

        Também testei em versões x64 ( 2.1.5 ) e não foi ….

        Uma informação para futuros problemas, sempre lembrar de verificar o nome do grupode ad ( wbinfo - g > grupo ), por vezes mesmo configurando o nome todo em maiusculas, o squid busca e traz o nome em minusculas ....
        logo, a conf de grupo do squidguard deve estar com o nome do grupo conforme for exibido no comando acima.

        1 Reply Last reply Reply Quote 0
        • L
          lucasqueiroga
          last edited by

          Também estou com o mesmo problema….

          Segui esse tutorial (http://www.dev2infra.com/pfsense-squid-squidguard-autenticacao-transparente/) em varias instalações de Pfsense 2.1.5 amd64 sem problemas. Estão todos funcionando normalmente.

          Porem estou querendo usar o Pfsense 2.2.1 e seguindo o mesmo tutorial apresenta o mesmo erro:

          @eduardogd:

          "Fatal error: Call-time pass-by-reference has been removed; If you would like to pass argument by reference, modify the declaration of validate_form_samba3(). in /usr/local/www/pkg_edit.php(147) : eval()'d code on line 1"

          Pesquisei um pouco sobre o erro e encontrei varias pessoas dizendo ser sobre a atualização do PHP.
          Não tenho muito conhecimento sobre PHP então não consigo ajudar muito.

          Com os problemas listados pelo LFCavalcanti acredito que a atualização desse pacote não é uma coisa muito fácil e provavelmente vai demorar um pouco.

          Estou com um ambiente de teste com Pfsense 2.2.1 + Squid3 + Squidguard rodando normalmente, falta só a integração com AD.

          Com as ferramentas de hoje, como podemos criar um ambiente com Pfsense 2.2 + Squid + Squidguard + Autenticação AD que seja o mais transparente possível para o usuário final??

          Alguém já usa um ambiente desse com Pfsense 2.2??

          https://rotapadrao.wordpress.com/

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

            Boa Tarde, alguém sabe onde os patch estão, dev2infra ta fora.

            1 Reply Last reply Reply Quote 0
            • T
              tomaswaldow
              last edited by

              Não se ajuda, mas em todo caso:
              https://github.com/pszafer/SambaForFreeradiusPFSENSE

              Tomas @ 2W Consultoria

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

                Obrigado, mais preciso do que tinha o dv2infra, já tinha implantando num servidor de teste e tinha funcionado, mais sai de ferias e conseguiram deletar minha VM de teste, agora preciso implementar mais não tenho onde baixar mais.

                1 Reply Last reply Reply Quote 0
                • I
                  Ivanbarbosab
                  last edited by

                  Quando uso o comando net ads join -U administrador dá a mensagem de erro. net: Command found o que faço para corrigir.
                  Obrigado.

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

                    @Ivanbarbosab:

                    Quando uso o comando net ads join -U administrador dá a mensagem de erro. net: Command found o que faço para corrigir.
                    Obrigado.

                    Provavelmente o teu samba nao veio com o ads compilado (aconteceu comigo). Veja nos logs se e isso mesmo.

                    1 Reply Last reply Reply Quote 0
                    • J
                      julianoxt
                      last edited by

                      ja tem o pacote pronto para 2.4.2 ou 2.3.5?

                      1 Reply Last reply Reply Quote 0
                      • V
                        Valceir
                        last edited by

                        Alguma previsão para a versão 2.4.4 ?

                        1 Reply Last reply Reply Quote 0
                        • V
                          Valceir
                          last edited by

                          @julianoxt tem sim... até a versão 2.4.3 segue o link com o passo a passo.
                          https://pf2ad.mundounix.com.br/pt/index.html

                          1 Reply Last reply Reply Quote 0
                          • F
                            fabiogleao
                            last edited by

                            com a atualização parou de funcionar o squid e tive que reinstalar, porém sem autenticação transparente. Nem instalando a versão 2.4.3 não rola a instalação do squid.
                            To preso na 2.4.4 sem autenticação no samba4 (NTLM)
                            existe alguma outra ofrma de por pra funcionar com NTLM (autenticação transparente)?

                            1 Reply Last reply Reply Quote 0
                            • M
                              mcury Rebel Alliance
                              last edited by mcury

                              Não seria melhor utilizar autenticação SSO por Kerberos? Já que não precisa utilizar nenhum pacote extra?

                              SETSPN:

                              Criar usuário svc_quid no AD

                              C:\WINDOWS\system32>setspn -S HTTP/pfsense.local.lan svc_squid
                              Verificando o domínio DC=local,DC=lan

                              Depois, através do samba-tools, ou através diretamente do AD, através do ktpass

                              sudo samba-tool domain exportkeytab mykeytab.keytab --principal=HTTP/pfsense.local.lan

                              Squid:

                              acl whitelist dstdomain .local.lan
                              auth_param negotiate program /usr/local/libexec/squid/negotiate_kerberos_auth -k /usr/local/etc/squid/mykeytab.keytab
                              auth_param negotiate children 100
                              auth_param negotiate keep_alive on
                              http_access allow whitelist
                              acl auth proxy_auth REQUIRED
                              http_access deny !auth
                              http_access allow auth

                              Squidguard

                              ldapusersearch ldap://raspsrv.local.lan:3268/dc=local,dc=lan?userPrincipalName?sub?(&(memberof=CN=internet_group%2cCN=Users%2cDC=local%2cDC=lan)(userPrincipalName=%s))

                              Depois de configurado, loguem novamente no AD, e chamem o proxy pelo nome, ele deve associar ao ticket kerberos.
                              Digitem klist no CMD do DOS para ver se ele foi adicionado corretamente.

                              Maiores detalhes:

                              https://journeyofthegeek.com/2017/12/30/pfsense-squid-kerberos/

                              dead on arrival, nowhere to be found.

                              F 1 Reply Last reply Reply Quote 1
                              • F
                                fabiogleao @mcury
                                last edited by

                                @mcury
                                Meu DC é samba4 vou pesquisar se encontro um guia pra ele, vlw pela dica

                                1 Reply Last reply Reply Quote 0
                                • M
                                  mcury Rebel Alliance
                                  last edited by

                                  Olá Fabio,

                                  Esse tutorial que pus ali em cima, funciona para samba 4.
                                  Funciona em AD de servidor Windows tambem.

                                  dead on arrival, nowhere to be found.

                                  F 1 Reply Last reply Reply Quote 1
                                  • F
                                    fabiogleao @mcury
                                    last edited by

                                    @mcury

                                    quando vou criar o keytab me retorna esse erro:
                                    ktpass : O termo 'ktpass' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa
                                    operável. Verifique a grafia do nome ou, se um caminho tiver sido incluído, veja se o caminho está
                                    correto e tente novamente.
                                    No linha:1 caractere:1

                                    • ktpass -out c:\pfsense.keytab -princ HTTP/pfsense.dominio.lan@DOMINIO ...

                                    Estou tentando pelo CMD no windows (membro do dominio)

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      mcury Rebel Alliance
                                      last edited by

                                      O seu comando ktpass está igualzinho lá no link que eu passei?
                                      https://journeyofthegeek.com/2017/12/30/pfsense-squid-kerberos/

                                      Caso queira dar uma aprofundada no ktpass:
                                      https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/ktpass

                                      Caso não funcione pelo ktpass, voce pode extrair a chave utilizando o samba-tools:
                                      Abaixo segue o comando que eu usei no meu domínio:

                                      sudo samba-tool domain exportkeytab mykeytab.keytab --principal=HTTP/pfsense.local.lan

                                      Quando fiz esse comando, o meu samba 4 era o domain controller
                                      Depois copiei a chave para a pasta do pfsense /usr/local/etc/squid/mykeytab.keytab

                                      dead on arrival, nowhere to be found.

                                      F 1 Reply Last reply Reply Quote 1
                                      • F
                                        fabiogleao @mcury
                                        last edited by fabiogleao

                                        @mcury
                                        Obrigado pelas dicas.
                                        Eu fiz pelo samba-tools, mas agora o navegador fica solicitando login infinitamente.
                                        não importa o que eu use ele fica solicitando e não deixa navegar.

                                        usei: samba-tool domain exportkeytab pfsense.keytab --principal=HTTP/pfsense.dominio.lan

                                        qual seria o comando pra gerar o spn no samba-tools? vou tentar fazendo tudo por ele.

                                        squid ficou assim:
                                        auth_param negotiate program /usr/local/libexec/squid/negotiate_kerberos_auth -d -k /usr/local/etc/squid/pfsense.keytab
                                        auth_param negotiate children 1000
                                        auth_param negotiate keep_alive on
                                        acl auth proxy_auth REQUIRED
                                        http_access deny !auth
                                        http_access allow auth

                                        ps.: o PC pfsense precisa estar adicionado ao dominio?
                                        antes com o pf2ad ele adicionava e agora q não tem não está adicionado.

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          mcury Rebel Alliance
                                          last edited by

                                          Olá Fabio, o pfsense não precisa estar no domínio.
                                          O que aparece nos logs do Squid/Squidguard durante os acessos?

                                          O comando que eu utilizei foi exatamente esse:

                                          sudo samba-tool domain exportkeytab mykeytab.keytab --principal=HTTP/pfsense.local.lan

                                          Você configurou o krb5.conf no /etc/ do samba server?
                                          Ele também precisa ser configurado conforme no link que te mandei.

                                          Eu infelizmente agora não estou em casa, mas assim que chegar copio o meu krb5.conf aqui pra ajudar.

                                          Teste inicialmente um usuário com uma senha simples (sem caracteres especiais), e se possível, que seja membro de um grupo de AD onde o caminho da arvore não tenha espaços ou caracteres especiais.

                                          Isso me atrapalhou bastante no inicio.

                                          Até breve

                                          dead on arrival, nowhere to be found.

                                          1 Reply Last reply Reply Quote 1
                                          • M
                                            mcury Rebel Alliance
                                            last edited by

                                            Segue:

                                            Estou utilizando o mesmo domínio do exemplo acima.
                                            O que está em maiúsculo precisa ficar em maiúsculo, exatamente como está aí embaixo, ok?

                                            pi@raspsrv:~ $ cat /etc/krb5.conf
                                            [libdefaults]
                                            default_realm = LOCAL.LAN
                                            dns_lookup_realm = false
                                            dns_lookup_kdc = true
                                            [realms]
                                            LOCAL.LAN = {
                                            kdc = raspsrv.local.lan
                                            admin_server = raspsrv.local.lan
                                            default_domain = local.lan
                                            }
                                            [domain_realm]
                                            .local.lan = LOCAL.LAN
                                            local.lan = LOCAL.LAN

                                            dead on arrival, nowhere to be found.

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