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

    SQUID + LDAP + AD

    Scheduled Pinned Locked Moved Russian
    57 Posts 17 Posters 50.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.
    • S
      SysR
      last edited by

      http_access allow password localnet

      ??

      # These hosts do not have any restrictions
      http_access allow unrestricted_hosts
      # Always allow access to whitelist domains
      http_access allow whitelist
      # Block access to blacklist domains
      http_access deny blacklist
      auth_param basic program /usr/local/libexec/squid/squid_ldap_auth -R -v 3 -b dc=domain,dc=com -D srv@domain.com -w pwd -f "sAMAccountName=%s" -u cn -P 192.168.1.1:389
      auth_param basic children 5
      auth_param basic realm Please enter your credentials to access the proxy
      auth_param basic credentialsttl 60 minutes
      acl password proxy_auth REQUIRED
      http_access allow unrestricted_hosts
      # Custom options
      external_acl_type ldap_users %LOGIN /usr/local/libexec/squid/squid_ldap_group -R -b "dc=domain,dc=com" -f "(&(sAMAccountName=%v)(memberOf=cn=%a,ou=hq,dc=domain,dc=com))" -D srv@domain.com -w pwd 192.168.1.1
      acl ad_inet external ldap_users gginet
      http_access allow ad_inet
      
      # Default block all to be sure
      http_access deny all
      

      Попробуй в консоли посмотреть что возвращают:

      /usr/local/libexec/squid/squid_ldap_group -R -b "dc=domain,dc=com" -f "(&(sAMAccountName=%v)(memberOf=cn=%a,ou=hq,dc=domain,dc=com))" -D srv@domain.com -w pwd 192.168.1.1
      
       /usr/local/libexec/squid/squid_ldap_auth -R -v 3 -b dc=domain,dc=com -D srv@domain.com -w pwd -f "sAMAccountName=%s" -u cn -P 192.168.1.1:389
      

      Первой команде в консоли указываешь **user[пробел]group[энтэр]**Должно вернуть ОК или ERR
      Второй user[пробел]passwd[энтэр] так же должен увидеть ОК или ERR

      1 Reply Last reply Reply Quote 0
      • D
        default666
        last edited by

        http_access allow password localnet
        ```- хз, сам не знаю что это такое.
        
        /usr/local/libexec/squid/squid_ldap_group -R -b "dc=rrsrv,dc=ath,dc=cx" -f "(&(sAMAccountName=%v)(memberOf=cn=%a,ou=IT,ou=users,ou=HQ,dc=rrsrv,dc=ath,dc=cx))" -D pfs@rrsrv.ath.cx -w pfs 192.168.1.11 > **ERR**
        
        /usr/local/libexec/squid/squid_ldap_auth -R -v 3 -b dc=rrsrv,dc=ath,dc=cx -D pfs@rrsrv.ath.cx -w pfs -f "sAMAccountName=%s" -u cn -P 192.168.1.11:389 > **OK**
        
        А группу какую указывать основную или любую в которую входит пользователь?
        1 Reply Last reply Reply Quote 0
        • S
          SysR
          last edited by

          На группу в который пользователь должно вернуть ОК на левую ERR.

          Скорее всего у тебя срабатывает АЦЛ по ЛОКАЛНЕТ то есть доступ всем авторизированым не зависимо от того в группе или нет.
          Кстати у тебя какой сквид? Я устанавливал 3ий но установился 2,7  ???

          Allow users on interface включен? У меня нет.

          1 Reply Last reply Reply Quote 0
          • D
            default666
            last edited by

            Кое-какая продрись произошла:
            [2.0-RELEASE][admin@hqgw3.rrsrv.ath.cx]/root(1): /usr/local/libexec/squid/squid_ldap_group -R -b "dc=rrsrv,dc=ath,dc=cx" -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf=cn=%a,ou=HQ,dc=rrsrv,dc=ath,dc=cx))" -D pfs@rrsrv.ath.cx -w pfs 192.168.1.11
            adm InetUsers
            OK

            косяк видимо был в пути: (memberOf=cn=%a,ou=HQ,dc=rrsrv,dc=ath,dc=cx)

            squid 2.7.9 STABLE  устанавливал его

            Allow users on interface включен. Без этого squid не стартует.

            Перестало тормозить при первом входе на веб страницу, однако пускает всех авторизованных.

            1 Reply Last reply Reply Quote 0
            • D
              default666
              last edited by

              @SysR:

              Скорее всего у тебя срабатывает АЦЛ по ЛОКАЛНЕТ то есть доступ всем авторизированым не зависимо от того в группе или нет.

              Как его прибить ПРАВИЛЬНО этот ACL? Ибо при тупом комментировании оного в squid.conf всё начинает правильно работать, однако при сохранении настроек через веб интерфейс squid.conf перезаписывыается с настройками http_access allow password localnet.

              1 Reply Last reply Reply Quote 0
              • S
                SysR
                last edited by

                Выложи скрин страницы General в рабочем состоянии ну и логи, чего не стартует без Allow users on interface

                1 Reply Last reply Reply Quote 0
                • D
                  default666
                  last edited by

                  Вот такая хрень БЫЛА:
                  [2.0-RELEASE][admin@hqgw3.rrsrv.ath.cx]/root(1): /usr/local/etc/rc.d/squid.sh restart
                  [2.0-RELEASE][admin@hqgw3.rrsrv.ath.cx]/root(2): /usr/local/etc/rc.d/squid.sh restart
                  2012/03/05 00:53:41| ACL name 'localnet' not defined!
                  FATAL: Bungled squid.conf line 75: http_access allow password localnet
                  Squid Cache (Version 2.7.STABLE9): Terminated abnormally.
                  [2.0-RELEASE][admin@hqgw3.rrsrv.ath.cx]/root(3): /usr/local/etc/rc.d/squid.sh restart
                  2012/03/05 00:54:56| ACL name 'localnet' not defined!
                  FATAL: Bungled squid.conf line 75: http_access allow password localnet
                  Squid Cache (Version 2.7.STABLE9): Terminated abnormally.
                  2012/03/05 00:55:01| ACL name 'localnet' not defined!
                  FATAL: Bungled squid.conf line 75: http_access allow password localnet
                  Squid Cache (Version 2.7.STABLE9): Terminated abnormally.
                  Щас нормально запускается без Allow users on interface, squid нормально пашет, не тормозит, пускает только тех кого нужно.

                  1 Reply Last reply Reply Quote 0
                  • D
                    default666
                    last edited by

                    SysR

                    Такой АЦЛ может быть не единственным а например из группы в АД можно задать соответствие пользователя скорости в delay_pools:

                    Накатай на эту тему отдельную статью. Для pfsense.

                    1 Reply Last reply Reply Quote 0
                    • S
                      SysR
                      last edited by

                      К сожалению стандартная схема пулов в пфСенсе настроена на ограничение по типам файлов а не по группам. Поэтому пока что разрулись скорось по (внешним) групам не представляется возможным стандартным способом.

                      Если кому интересно поправить файл через консоль то могу накидать небольшой мануал что и как.

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

                        À â êàêîé ñòðî÷êå ôàéëà squid.inc äîáàâëÿòü -R ?
                        Âñå, âðîäå, çàðàáîòàëî, êàê îïèñàíî â ñòàòüå. Íî âîò ïðîáëåììà: êàê áûòü åñëè èìÿ ãðóïïû ñîäåðæèò ïðîáåëû? Íèêàê íå ïîëó÷àåòñÿ ïåðåäàòü. "" - íå ïîìîãàþò.
                        È ïðîáîâàë ëè êòî-íèáóäü äåëàòü negotiate àâòîðèçàöèþ ñ ó÷åòîì ïðèíàäëåæíîñòè ãðóïïàì?

                        1 Reply Last reply Reply Quote 0
                        • S
                          SysR
                          last edited by

                          /usr/local/libexec/squid/squid_ldap_auth -R [….]

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

                            ×òîáû ðàáîòàëî äåéñòâèëåëüíî ïî ãðóïïàì, íàäî ôàéë /usr/local/pkg/squid.inc ïîïðàâèòü òàê, ÷òîáû â squid.conf íå äîáàâëÿëèñü ñòðîêè:
                            acl password proxy_auth REQUIRED
                            http_access allow password localnet
                            Äëÿ ýòî äîñòàòî÷íî ïåðåä íèìè ïîñòàâèòü #.

                            Ïîïðîáîâàë âñå ýòî íà squid 3.1.19. Òàì ïðèøëîñü ñåðüåçíåå ïîïðàâèòü squid.inc, òàê êàê îáëàñòü Custom Settings, çà÷åì òî, âïèñûâàåòñÿ ðàíüøå ÷åì íàì ýòî íàäî. Íî ïîêà íå çàðàáîòàëî.  ëîãàõ ïèøåò:
                            WARNING: Cannot run '/usr/local/libexec/squid/squid_ldap_group' process
                            Õîòÿ èç êîììàíäíîé ñòðîêè âñå ñðàáàòûâàåò.
                              :(

                            1 Reply Last reply Reply Quote 0
                            • S
                              SysR
                              last edited by

                              Не обновляйте 3ий сквид кто пользуется ЛДАП авторизацией. Рискуете получить:

                              Can't use proxy auth because no authentication schemes are fully configured.

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

                                А хоть кто-нибудь настраивал Negotiate authentication method в pfSense? Ну не красиво это в 21 веке заставлять пользователей по 10 раз на дню вводить пароли и передавать их в открытом виде.

                                1 Reply Last reply Reply Quote 0
                                • S
                                  SysR
                                  last edited by

                                  Браузер не просит пароль снова пока его не закроешь.

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

                                    возможно восстановить картинки из первого поста?

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      SysR
                                      last edited by

                                      @faint:

                                      возможно восстановить картинки из первого поста?

                                      К сожалению нет. Так как пришлось пока что отказаться от ЛДАП авторизации. Все необходимые опции продублированы в текстовом описании кроме строки поиска в squid.inc: /usr/local/libexec/squid/squid_ldap_auth -R [….]

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

                                        Всем рекомендую пробовать по следующему блоку в доп параметрах:
                                        external_acl_type ldap_users %LOGIN /usr/local/libexec/squid/squid_ldap_group -R -b "dc=domen,dc=edu" -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf=CN=%a,DC=domen,DC=edu))" -D user@domen.edu -w pass 192.168.0.1:389;acl ad_inet external ldap_users inetusers;http_access allow ad_inet;
                                        Здесь: user@domen.edu - пользователь с правами в контейнере Users
                                        domen.edu -имя домен
                                        pass - пароль

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          stafford
                                          last edited by

                                          Нажимаю сохранить и выскакивает ошибка

                                          The host 'external_acl_type ldap_users %LOGIN /usr/local/libexec/squid/squid_ldap_group -R -b "dc=test,dc=local" -f "(&(sAMAccountName=%v)(memberOf=cn=%a,ou=users_test,dc=test,dc=local))" -D smvСОБАКАtest.local -w super_password 192.168.1.1;' is not a valid CIDR range
                                          The host 'acl ad_inet external ldap_users users_test;' is not a valid CIDR range
                                          The host 'http_access allow ad_inet;' is not a valid CIDR range

                                          домен - test.local
                                          группа - users_test
                                          админ - test.local\smv

                                          1 Reply Last reply Reply Quote 0
                                          • P
                                            PhoenixFV
                                            last edited by

                                            Всех приветствую, а не могли бы вы обновить картинки к описанию, а то не могу ниодну росмотреть… Спасибо!

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