The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
контроль доступа на основании доменных групп, !*! nops, 05-Фев-13, 07:48  [смотреть все]
Доброго всем времени суток.
Сразу к вопросу.

Имеем сервер на FreeBSD, стоит ipfw+pf(не спрашивайте почему такая связка, очень удобно, во всяком случае мне нравится очень), но проблема не в этом.

На борту стоит squid+ntlm+basic аутентификация пользователей из домена(Active Directory). Так же поставил SAMS.
У меня руками прописаны списки запрещенных сайтов и 3 группы пользователей.
Группы пользователей: InetUs, InetVIP, InetFull
Списки запрета доступа: Access.Denied и еще один список, которые разрешает только некоторые сайта из списка запрещенных для определенной группы.
Итак, InetUs - Запрещены все сайты из списка
InetVIP - запрещены все сайта из списка запрещенных, но разрешены некоторые из этого же списка
InetFull - разрешено все.
В Active Directory пользователям назначены группы в зависимости от их разрешений. Из домена авторизация проходит, с SAMS-ом почти разобрался(ну не люблю я подобные вещи, которые работают неизвестно для меня как)
В общем все вроде как работает, юзеры ходят, авторизация и по ntlm и по basic, списки запрета работают.

И вот тут руководство ставит задачу: Нужно, чтобы squid автоматически подтягивал пользователей и записывал в нужную группы на проксе. Т.е. создаем мы нового пользователя в домене, добавляем скажем в группу InetUs и он сразу автоматом появляется в списке юзеров на прокси-сервере. Так же, нужно скажем перенести юзера из одной группы(InetUs) в другую группу(InetVip) и надо чтобы все изменения на проксе произошли автоматом.

Теперь подскажите пожалуйста, возможно ли такое или нет?
P.S. Руководство виндузятники, поэтому им сложно объяснить невозможность и я на всякий случай решил поинтересоваться у гуру. Я конечно понимаю, что с костылями и горой скриптов это вохможно, но это не вариант и я понимаю что почти стандартными средствами это не возможно.

Подскажите пожалуйста, очень жду совета гуру.

  • контроль доступа на основании доменных групп, !*! porcha, 08:18 , 05-Фев-13 (1)
    Глянь вот эту статейку http://macrodmin.blogspot.ru/2012/07/squid-active-directory.... возможно я ошибаюсь,но тебе что-то типо такого и нужно.
    Если я правильно понял,то ты хочешь чтоб все изменения по по уровню доступа юзеров происходили путем перемещения их из одной группы в другую в AD?
    • контроль доступа на основании доменных групп, !*! nops, 12:23 , 05-Фев-13 (2)
      > Глянь вот эту статейку http://macrodmin.blogspot.ru/2012/07/squid-active-directory....
      > возможно я ошибаюсь,но тебе что-то типо такого и нужно.
      > Если я правильно понял,то ты хочешь чтоб все изменения по по уровню
      > доступа юзеров происходили путем перемещения их из одной группы в другую
      > в AD?

      Да, похоже. Правила я напишу в сквиде, у меня была проблема только автоматом авторизоваться NT-группам, но судя по статье:
      acl Full external nt_group Internet_Full
      acl Medium external nt_group Internet_Medium
      acl Low external nt_group Internet_Low
      тег nt_group работает как определение группы, которой принадлежит пользователь.

      Попробую обязательно. Сейчас встречный еще один вопрос, а если групп несколько, то как он не перепутается в списке этих групп?

      • контроль доступа на основании доменных групп, !*! porcha, 12:45 , 05-Фев-13 (3)
        > Попробую обязательно. Сейчас встречный еще один вопрос, а если групп несколько, то
        > как он не перепутается в списке этих групп?

        Все просто, пользователь может занимать только одну группу, т.к. авторизация будет проходить на AD. Squid будет лишь сопоставлять пользователя и группу.
        Пробуйте удачи!

        • контроль доступа на основании доменных групп, !*! nops, 08:28 , 06-Фев-13 (4)
          >> Попробую обязательно. Сейчас встречный еще один вопрос, а если групп несколько, то
          >> как он не перепутается в списке этих групп?
          > Все просто, пользователь может занимать только одну группу, т.к. авторизация будет проходить
          > на AD. Squid будет лишь сопоставлять пользователя и группу.
          > Пробуйте удачи!

          Немного не понял.
          Вот допустим у пользователя есть несколько групп, в которые он входит, т.к. работает на несколько отделов, скажем:
          1. Отдел дизайн
          2. Отдел клеинта1
          3. Креативщик
          4. InetUs

          Получается, что этот пользователь состоит в 4-х группах. Как тут быть?!

          • контроль доступа на основании доменных групп, !*! porcha, 08:59 , 06-Фев-13 (5)
            > Немного не понял.
            > Вот допустим у пользователя есть несколько групп, в которые он входит, т.к.
            > работает на несколько отделов, скажем:
            > 1. Отдел дизайн
            > 2. Отдел клеинта1
            > 3. Креативщик
            > 4. InetUs
            > Получается, что этот пользователь состоит в 4-х группах. Как тут быть?!

            Создай в домене отдельные группы непосредственно для интернетов и помести туда сотрудников в зависимости от их потребности в интернетах. Думаю не стоит привязывать существующие группы.

            • контроль доступа на основании доменных групп, !*! nops, 07:37 , 07-Фев-13 (6)
              >[оверквотинг удален]
              >> Вот допустим у пользователя есть несколько групп, в которые он входит, т.к.
              >> работает на несколько отделов, скажем:
              >> 1. Отдел дизайн
              >> 2. Отдел клеинта1
              >> 3. Креативщик
              >> 4. InetUs
              >> Получается, что этот пользователь состоит в 4-х группах. Как тут быть?!
              > Создай в домене отдельные группы непосредственно для интернетов и помести туда сотрудников
              > в зависимости от их потребности в интернетах. Думаю не стоит привязывать
              > существующие группы.

              Да, у меня именно так и сдалено. Созданы 3 доп группы: InetUs, InetVIP, InetFull, соответственно с определенными разрешениями для каждой из груп: запрещено все лишнее, частично разрешено личное и все разрешено соответственно.
              Каждому из пользователей добавлена одна из групп в зависимости от политики доступа к ресурсам. У меня вопрос в другом, не будет ли конфликтов, если у пользователя несколько групп? Или работает так: Юзает пользователь инет, прокси считывает из домена его группы и перебирает, доходит до первой и проверяет, подпадает ли она под правила или нет, если не находит, то ищет следующую группу. Так?

  • контроль доступа на основании доменных групп, !*! nops, 07:51 , 08-Фев-13 (7)
    Итак!
    Всем доброго здравия.
    Звучал вопрос, в одном из сообщений, как у меня успехи с моей задачей, вот я готов написать.

    Заработало, что я могу сказать.

    В Active Directory:
    Созданы 3 дополнительные группы:
    InetUs - нельзя запрещенные
    InetVIP - нельзя запрещенные, кроме небольшого списка разрешенных
    InetFull - Можно все.

    На FreeBSD сделано следующее:
    Ну естественно поднята самба, настроен керберос и конечно же сквид. Описывать полностью конфиги не буду, не к чему, все прекрасно понимают и знают что там написать, а те кто не знают, курите маны или читайте статьи, их полно и все на русском.
    В squid.conf были удалены все acl-ы и добавлены следующие:

    # Авторизация в домене по NTLM и Basic для тех, что не смог авторизоваться по ntlm, так происходит.
    auth_param ntlm program /usr/local/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
    auth_param ntlm children 150
    auth_param ntlm keep_alive on
    auth_param basic program /usr/local/bin/ntlm_auth --helper-protocol=squid-2.5-basic
    auth_param basic children 50
    auth_param basic realm DeltaPlans's Squid Beast
    auth_param basic credentialsttl 8 hours
    auth_param basic casesensitive off
    ..........
    # Описываю acl-ы, комментарии излишни, итак все понятно
    acl _acl_Access_Denied url_regex -i "/usr/local/etc/squid/regulations/Access.Denied"
    acl _acl_Access_Allow_VIP url_regex -i "/usr/local/etc/squid/regulations/Access.Allow.VIP"
    acl _sams_local_ip dst "/usr/local/etc/squid/local_ip.sams"
    # Получаем группы из AD
    external_acl_type nt_group %LOGIN /usr/local/libexec/squid/wbinfo_group.pl
    # Описываю acl-ы для групп
    acl Full external nt_group InetFull
    acl Medium external nt_group InetVIP
    acl Low external nt_group InetUs
    ...........
    acl nt_group proxy_auth REQUIRED
    ...........
    # Описываю доступы и запреты групп AD по спискам сайтов
    http_access deny Low _acl_Access_Denied  
    http_access allow Medium _acl_Access_Allow_VIP
    http_access deny Medium _acl_Access_Denied
    http_access allow Low
    http_access allow Medium
    http_access allow Full
    http_access allow localnet
    http_access deny !Safe_ports  
    ...........
    Далее все стандартно.
    После этого /usr/local/etc/rc.d/squid reload и проверяем, Все работает.

    • контроль доступа на основании доменных групп, !*! luckyy, 03:35 , 07-Окт-13 (8)
      >[оверквотинг удален]
      > http_access allow Medium _acl_Access_Allow_VIP
      > http_access deny Medium _acl_Access_Denied
      > http_access allow Low
      > http_access allow Medium
      > http_access allow Full
      > http_access allow localnet
      > http_access deny !Safe_ports
      > ...........
      > Далее все стандартно.
      > После этого /usr/local/etc/rc.d/squid reload и проверяем, Все работает.

      интересная задумка, вроде все понятно из ващего конфига, но не могу понять, в конечной связке есть ли sams ? если нет, то что значит эта строчка
      acl _sams_local_ip dst "/usr/local/etc/squid/local_ip.sams"





Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру