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.
    • M
      mcury Rebel Alliance
      last edited by

      Exato, o mais difícil você já fez, que é o ticket e a autenticação no proxy.
      O problema agora é simplesmente a sintaxe do ldapusersearch.

      O meu funcionou daquela maneira, já testou outras sintaxes?

      dead on arrival, nowhere to be found.

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

        @mcury
        mano do céu!!!

        já tentei de tudo velho.

        ldapusersearch ldap://ad-dc.dominio.lan:389/dc=dominio,dc=lan?userPrincipalName?sub?(&(userPrincipalName=%s)(memberof=cn=internet_L0%2cou=Ti%2cdc=dominio%2cdc=lan))

        ldapusersearch ldap://10.0.0.22:389/dc=dominio,dc=lan?userPrincipalName?sub?(&(userPrincipalName=%s)(memberof=cn=internet_L0%2cou=Ti%2cdc=dominio%2cdc=lan))

        ldapusersearch ldap://ad-dc.dominio.lan:3268/dc=dominio,dc=lan?userPrincipalName?sub?(&(userPrincipalName=%s)(memberof=cn=internet_L0%2cou=Ti%2cdc=dominio%2cdc=lan))

        ldapusersearch ldap://10.0.0.22:3268/dc=dominio,dc=lan?userPrincipalName?sub?(&(userPrincipalName=%s)(memberof=cn=internet_L0%2cou=Ti%2cdc=dominio%2cdc=lan))

        squid.conf

        This file is automatically generated by pfSense

        Do not edit manually !

        http_port 10.0.0.250:3128
        icp_port 0
        digest_generation off
        dns_v4_first off
        pid_filename /var/run/squid/squid.pid
        cache_effective_user squid
        cache_effective_group proxy
        error_default_language en
        icon_directory /usr/local/etc/squid/icons
        visible_hostname localhost
        cache_mgr admin@localhost
        access_log /var/squid/logs/access.log
        cache_log /var/squid/logs/cache.log
        cache_store_log none
        netdb_filename /var/squid/logs/netdb.state
        pinger_enable on
        pinger_program /usr/local/libexec/squid/pinger

        logfile_rotate 14
        debug_options rotate=14
        shutdown_lifetime 3 seconds

        Allow local network(s) on interface(s)

        acl localnet src 10.0.0.0/22
        forwarded_for on
        uri_whitespace strip

        acl dynamic urlpath_regex cgi-bin ?
        cache deny dynamic

        cache_mem 2000 MB
        maximum_object_size_in_memory 256 KB
        memory_replacement_policy heap GDSF
        cache_replacement_policy heap LFUDA
        minimum_object_size 0 KB
        maximum_object_size 4 MB
        cache_dir ufs /var/squid/cache 60000 256 256
        offline_mode off
        cache_swap_low 90
        cache_swap_high 95
        cache allow all
        ###Add any of your own refresh_pattern entries above these.
        refresh_pattern ^ftp: 1440 20% 10080
        refresh_pattern ^gopher: 1440 0% 1440
        refresh_pattern -i (/cgi-bin/|?) 0 0% 0
        refresh_pattern . 0 20% 4320

        ###Remote proxies

        Setup some default acls

        ACLs all, manager, localhost, and to_localhost are predefined.

        acl allsrc src all
        acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 3128 3129 1025-65535
        acl sslports port 443 563

        acl purge method PURGE
        acl connect method CONNECT

        Define protocols used for redirects

        acl HTTP proto HTTP
        acl HTTPS proto HTTPS
        http_access allow manager localhost

        http_access deny manager
        http_access allow purge localhost
        http_access deny purge
        http_access deny !safeports
        http_access deny CONNECT !sslports

        Always allow localhost connections

        http_access allow localhost

        request_body_max_size 0 KB
        delay_pools 1
        delay_class 1 2
        delay_parameters 1 -1/-1 -1/-1
        delay_initial_bucket_level 100
        delay_access 1 allow allsrc

        Reverse Proxy settings

        Package Integration

        url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf
        url_rewrite_bypass off
        url_rewrite_children 16 startup=8 idle=4 concurrency=0

        Custom options before auth

        acl whitelist dstdomain .local.lan
        auth_param negotiate program /usr/local/libexec/squid/negotiate_kerberos_auth -k /usr/local/etc/squid/squidproxy.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

        Setup allowed ACLs

        Allow local network(s) on interface(s)

        http_access allow localnet

        Default block all to be sure

        http_access deny allsrc

        SquidGuard

        logdir /var/squidGuard/log
        dbhome /var/db/squidGuard
        ldapbinddn CN=pfsense,CN=Users,DC=dominio,DC=lan
        ldapbindpass 123456
        ldapprotover 3

        #ACL Bloqueio Nivel 1
        src Internet_L0 {
        ldapusersearch ldap://ad-dc.dominio.lan:389/dc=dominio,dc=lan?userPrincipalName?sub?(&(userPrincipalName=%s)(memberof=cn=internet_L0%2cou=Ti%2cdc=dominio%2cdc=lan))
        log block.log
        }

        dest blk_BL_adv {
        domainlist blk_BL_adv/domains
        urllist blk_BL_adv/urls
        log block.log
        }

        rew safesearch {
        s@(google../search?.q=.)@&safe=active@i
        s@(google..
        /images.q=.)@&safe=active@i
        s@(google../groups.q=.)@&safe=active@i
        s@(google..
        /news.q=.)@&safe=active@i
        s@(yandex../yandsearch?.text=.)@&fyandex=1@i
        s@(search.yahoo..
        /search.p=.)@&vm=r&v=1@i
        s@(search.live../.q=.)@&adlt=strict@i
        s@(search.msn..
        /.q=.)@&adlt=strict@i
        s@(.bing..*/.q=.)@&adlt=strict@i
        log block.log
        }

        acl {
        # ACL Bloqueio Nivel 1
        Internet_L0 {
        pass permitidos_todos none
        log block.log
        }
        #
        default {
        pass none
        redirect http://10.0.0.250:80/sgerror.php?url=403%20&a=%a&n=%n&i=%i&s=%s&t=%t&u=%u
        log block.log
        }
        }

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

          Pelo que eu vi nas suas tentativas, você não usou o memberof logo após o sub como está ai embaixo, tem que por memberof antes do caminho da arvore.

          O seu ficaria assim:

          ldapusersearch ldap://ad-dc.dominio.lan:3268/DC=dominio,DC=lan?userPrincipalName?sub?(&(memberof=CN=internet_L0%2cOU=Ti%2cDC=dominio%2cDC=lan)(userPrincipalName=%s))

          Testa ai e me fala ok?

          dead on arrival, nowhere to be found.

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

            @mcury

            já tinha tentado antes assim e tb não rolou.

            notei q não registrou no log do squidguard depois do dia 26-10

            0_1541009428353_d81a71b6-a923-4c79-8669-886a5fe025d9-image.png

            já no log do squid tá ok.

            0_1541009494356_163c54c3-5119-4207-b9a6-a0af00222367-image.png

            vou tentar as variações de porta e mudar pra IP do AD, mas acredito que não seja isso.

            Mano se vc tiver tempo de dar uma olhada remotamente na minha config pra ter uma ideia melhor ou sei lá, te passo meu Cel e vc me add no whats ou telegram e te passo o id do TV ou Any Desk.

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

              0_1541097472765_squid_squidguard.JPG

              É pra ficar assim os logs caso você configure corretamente...

              No squidguard, você habilitou a autenticação?

              No squid, ela deve ficar desabilitada.

              dead on arrival, nowhere to be found.

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

                @mcury

                squid autenticação desabilitada
                e no squid guard configurado LDAP versão 3

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

                  Eu to online, posso compartilhar minha tela pra você ver a configuração e comparar com a sua
                  Inclusive o samba, krb5.conf e etc, te passei o contato por msg, abraço

                  dead on arrival, nowhere to be found.

                  1 Reply Last reply Reply Quote 0
                  • K
                    kioshiito
                    last edited by

                    @fabiogleao

                    Boa tarde
                    Sou bastante leigo e o meu continua solicitando Usuário e senha, como assim mudar de IP para nome. Acho que meu problema é esse.

                    @fabiogleao said in Pfsense + Squid + NTLM (Autenticação AD transparente):

                    @mcury

                    Consegui, muito obrigado.

                    no navegador estava o IP do proxy e ao mudar pro nome funcionou.
                    NS Lookup funcionando e reconhecendo normalmente quando informo o nome do PC, não entendi pq não encontrou com o IP e somente com o nome.

                    Agora vou pra 2a etapa que é com o sarg. Vou seguir as suas orientações. Obrigado

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

                      @kioshiito

                      ainda na luta aqui, mas no squidguard

                      no lugar de:
                      ldapusersearch ldap://10.0.0.22:3268/DC=dominio,DC=lan?userPrincipalName?sub?(&(memberof=CN=internet_L0%2cOU=Ti%2cDC=dominio%2cDC=lan)(userPrincipalName=%s))

                      ficaria:
                      ldapusersearch ldap://ad-dc.dominio.lan:3268/DC=dominio,DC=lan?userPrincipalName?sub?(&(memberof=CN=internet_L0%2cOU=Ti%2cDC=dominio%2cDC=lan)(userPrincipalName=%s))

                      1 Reply Last reply Reply Quote 0
                      • S
                        suporte-in
                        last edited by

                        Pessoal,

                        Como próprio titulo diz, estou com um problema em fazer funcionar as regras de bloqueio no SquidGuard. Tenho duas categorias criadas no campo Target Categories e um grupo ACL para teste com nome de NIVEL_1_LIMITADO e com o usuário dentro desse grupo.

                        Segue o meu cenário atual:

                        1- Todos os serviços envolvidos estão iniciados: (SAMBA, SQUID e SquidGuard). "CACHES FORAM LIMPADOS!"
                        2- O pfsense consegue se comunicar com o servidor de AD!
                        3- Ao criar regras no SQUID elas funcionam na máquina em questão, e que está sendo utilizada para teste.
                        4- QUANDO A REGRA É APLICADA NO SQUIDGUARD, CHEGA A BARRAR INICIALMENTE, MAS NA MESMA TELA DANDO UM "F5 "O SITE ATÉ ENTÃO QUE DEVERIA SER BLOQUEADO É LIBERADO!
                        5- ANALISANDO O CAMPO "REAL TIME" É VISTO QUE O STATUS DA MÁQUINA APRESENTA "TCP_DENID/407 E INFORMANDO QUAL FOI O NAVEGADOR UTILIZADO.
                        6- A CONFIGURAÇÃO DE PROXY NA MÁQUINA TESTE ESTÁ APLICADA, HAJA VISTO QUE FUNCIONA COM O SQUID.

                        • Em contato com Luiz Gustavo, que foi o vendedor da ferramenta PF2AD o mesmo informa que a aplicação não tem problema algum, pois a mesma habilita a função do samba AD e aparentemente procede a informação passada pelo mesmo. Pois o PFSENSE encontra as configurações de usuários e grupos do servidor AD.

                        A minha necessidade é criar categorias com níveis de grupos limitando o acesso de alguns usuários que estão em seus respectivos grupos. Conto com ajuda de vocês!

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