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.
    • 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
              • N
                nomeron
                last edited by

                Вот здесь есть картинки http://www.thin.kiev.ua/router-os/50-pfsense/537-pfsense-20squid-ldap-ad-.html
                Squid только нужен 2.7 (если требуется авторизация по группам)

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

                  Спасибо! А на 3 работать не будет? Мне просто нужно всем пользюкам из АД дать доступ в инет, только с авторизацией на машие…??

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

                    @PhoenixFV:

                    Спасибо. Сделал все по аналогии, но когда ввожу дополнительные параметры… Squid даже не запускается...

                    Вот мой код, помогите править...
                    external_acl_type ldap_Astana %LOGIN
                    /usr/local/libexec/squid/squid_ldap_group -R -b "dc=nat,dc=kz" -f "(&(sAMAccountName=%v)(memberOf=cn=%a,ou=Astana,dc=nat,dc=kz))" -D
                    pfsense123@nat.kz -w pfsense123 192.168.1.200
                    acl ad_inet external ldap_users Astana
                    http_access allow ad_inet

                    Буду ждать помощи, спасибо!

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

                      Дополнительные параметры нужны для авторизации по группам.
                      Третий Squid на этом месте пишет разные ошибки. (Но запускаться должен).
                      Ошибки ищите Status: System logs: System
                      Проблемы у него с файлом /usr/local/libexec/squid/squid_ldap_group

                      Попробуйте без дополнительных параметров.
                      Уберите галку Allow users on interface
                      А в Proxy server: Access control пропишите подсеть, кому разрешена аутентификация
                      Если ключ -R как по инструкции добавили, то будет пускать всех пользователей из AD

                      Дополнительные параметры пример для второго сквида
                      Все одной строчкой вставляется:
                      external_acl_type ldap_users %LOGIN /usr/local/libexec/squid/squid_ldap_group -R -b "dc=test,dc=edu" -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf=cn=%a,ou=users,dc=test,dc=edu))" -D admin@test.edu -w pass 192.168.0.1;acl ad_ff external ldap_users InetUsers;http_access allow ad_ff;http_access deny all;

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

                        Сделал все как вы посоветовали, но в браузере выходит окошко авторизации до бесконечности и не принимает учетку из АД, какую информацию мне предоставить вам, чтобы вы помогли мне найти проблему и возможно даже решить ее? Заранее благодарен…

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

                          Тему сначала почитайте.
                          Первый этап в любом случае:

                          Попробуй в консоли посмотреть что возвращают:
                          Code:
                          /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

                          Вот это должно работать. По крайней мере вторая команда для пользователя.
                          Если не работает - искать причину (маршрутизация правила фаервола с двух сторон, политики безопасности сети, DNS  и тп)

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

                            Я извиняюсь может за глупый вопрос, но про какую консоль идет речь, т е мне нужно подрубиться к машине с pfsense через shell и от имени root ввести туда эти команды??? Просто я раньше был мышевозом вот и туплю при работе с Unix системами, а компания хотит переходить на OpenSorce… Разъясните плиз!!! Заранее благодарен!

                            И еще оговорюсь, что домен поднят на Win Server 2008 R2, это как-то может влиять на ход вещей? Еще хотел бы уточнить а вот этот фильтр для чего userPrincipalNAme=%s  ?

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

                              @PhoenixFV:

                              Я извиняюсь может за глупый вопрос, но про какую консоль идет речь, т е мне нужно подрубиться к машине с pfsense через shell и от имени root ввести туда эти команды??? Просто я раньше был мышевозом вот и туплю при работе с Unix системами, а компания хотит переходить на OpenSorce… Разъясните плиз!!! Заранее благодарен!

                              И еще оговорюсь, что домен поднят на Win Server 2008 R2, это как-то может влиять на ход вещей? Еще хотел бы уточнить а вот этот фильтр для чего userPrincipalNAme=%s   ?

                              http://forum.pfsense.org/index.php/topic,22839.msg126296.html#msg126296

                              SquidGuardDoc EN  RU Tutorial
                              Localization ru_PFSense

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

                                И еще оговорюсь, что домен поднят на Win Server 2008 R2, это как-то может влиять на ход вещей? Еще хотел бы уточнить а вот этот фильтр для чего userPrincipalNAme=%s  ?

                                В Win Server 2008 R2 у объектов есть закладка "Редактор атрибутор". Там и смотрите значения.
                                userPrincipalNAme полное имя пользователя. Фактически это sAMAccountName@имя домена.
                                Сама операционная система не влияет на атрибуты. Влиять будет режим работы домена, но тут в примерах только стандартные атрибуты, которые всюду одинаковые.
                                Лучше эксперименты проводить в начале без русских букв в значениях.
                                Т.е использовать (memberOf=cn=%a,ou=hq,dc=domain,dc=com) а не (memberOf=cn=%a,ou="Бухгалтерия",dc=domain,dc=com)
                                Еще, может кто, на счет регистра символов подскажет, зачем писать memberOf ?

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

                                  Спасибо всем за помощь, все заработало… Теперь есть другой вопрос, окно авторизации нельзя ли убрать??? Т.е. чтобы пользователь входил в инет но не требовалось вбивать постоянно логин и пароль, или как разрешить SSL трафик для всех пользователей домена...? Просто в конторе MACов много, и с ними есть проблемы иногда припроверки сертификатов начинают снова просить авторизацию... Помогите с SSL трафиком, спасибо!

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

                                    Если нужен подсчет трафика по каждому пользователю, то только через окно авторизации, иначе советую купить керио.

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

                                      Приветствую!

                                      Все настроил как описано выше. Не работает.
                                      Ввожу в консоле проверочные команды:
                                      На первую команду отвечает ERR.
                                      На вторую команду отвечает OK.
                                      В результате в броузере выскакивает окно для ввода логина и пароля. Если вбить правильный логин и пароль работает, если нет, то просить пароль до бесконечности.
                                      Подскажите, что я делаю не так?

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

                                        Дык, а что не так? Если по правильному заходит а по неправильному не заходит? Какую цель желаете достичь и что сейчас есть? Опишите поподробней…

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

                                          @PhoenixFV:

                                          Дык, а что не так? Если по правильному заходит а по неправильному не заходит? Какую цель желаете достичь и что сейчас есть? Опишите поподробней…

                                          По идее аутентификация LDAP подразумевает, что при входе в браузер и наборе адреса сайта логин и пароль пользователя берутся автоматом и ни каких окон с запросом логина и пароля быть не должно.
                                          Выше по тексту были опубликованы проверочные команды типа:
                                          **/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
                                          • S
                                            swch
                                            last edited by

                                            2 дня мучений и косяк найден.
                                            Оказалось что контейнер Users это CN, а не OU.
                                            Теперь команды хелперов выполняются нормально, правила squid все равно не работают так как хотелось.
                                            Вот кусок squid.conf:

                                            Custom options

                                            external_acl_type ldap_users %LOGIN /usr/local/libexec/squid/squid_ldap_group -R -b "DC=domen,DC=local" -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf=CN=%a,CN=Users,DC=domen,DC=local))" -D Proxys@domen.local -w 123456 192.168.1.1
                                            acl ad_inet external ldap_users InetUsers
                                            http_access allow ad_inet

                                            auth_param basic program /usr/local/libexec/squid/squid_ldap_auth -R -v 3 -b DC=domen,DC=local -D Proxys@domen.local -w 123456 -f "sAMAccountName=%s" -u CN -P 192.168.1.1:389
                                            auth_param basic children 6
                                            auth_param basic realm Please enter login and password
                                            auth_param basic credentialsttl 60 minutes
                                            acl password proxy_auth REQUIRED
                                            http_access allow password localnet

                                            При открытии броузера и ввода адреса вылетает окно с запросом логина и пароля. Т.е. получается действует вот этот кусок: auth_param basic program ….
                                            Подскажите, так и должно быть или все таки кусок external_acl_type ldap_users... не работает?

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