Введение
Все началось с того что решили мы внедрить в организации корпоративный портал (сотрудники, тел. книга, календарь дней рождений) и систему заявок в IT отдел. Попробовав в качестве системы заявок GLPI и Request Tracker, поняли, что слишком громоздко для нас.
Поставив систему захотелось организовать прозрачную авторизацию на портале под доменными учетками и вот тут начались проблемы… На их сайте довольно-таки много документации и статей, но беда в том что храниться это все в одной кучи и непонятно что, к какой версии относится.
С первого раза настроить NTLM авторизацию самому не получилось, точнее авторизация проходила, но после портал запрашивал еще локальную учетку/пароль. Задав вопрос на форуме битрикса ответ не получил, зато нашел еще несколько человек с такой же проблемой. Не успокоившись решил копать сам.
В итоге делюсь со всеми how-to настройки КП под BitrixVM и IIS 7.
1с-битрикс разработчикам — настройка ntlm авторизации для пользователей битрикс на линукс
Описание настройки NTLM авторизации (интеграции с Microsoft Active Directory, использования механизма SSO: Single Sign-On) для продуктов Битрикс, установленных на Линукс, состоит из следующих частей:
1. Настройка модуля Битрикс LDAP/AD
2. Настойка Ubuntu 8.0.4 LTS — для пользователей
3. Настойка Fedora 12 — для тех, кто использует пакет для настройки Битрикс на платформах Red Hat
4. Настройка интернет-браузеров для использования механизма SSO
[spoiler]
Настройка модуля Битрикс LDAP/AD
Эта часть конфигурации обязательна для всех пользователей Битрикс на платформе Линукс и описана в
Необходимые замечания:
При установке корпортала можно запустить конфигурацию модуля AD/LDAP с помощью check-box’а «Разрешить пользователям Active Directory авторизовываться на портале…»
При этом потребуется заполнить данные AD сервера и доступа и проверить правильность (соответствующей кнопкой)
А также определить «Соответствие групп пользователей» в домене и на Корпортале
После установки корпортала необходимо в «Настройки AD/LDAP» проверить (при необходимости заполнить) поле «Мнемонический код (префикс при авторизации)»
В настройках модуля AD/LDAP необходимо установить (желательно большое) число в поле «Ограничение по количеству одновременно выбираемых LDAP записей», отметить «Использовать NTLM авторизацию» и выбрать значение «Сервер Active Directory» в качестве сервера домена по умолчанию:
2. Настойка Ubuntu 8.0.4 («Виртуальная машина Битркс 1.5»)
Установка и конфигурация необходимых пакетов и служб (samba, winbind, kerberos):
При установки пакетов kerberos увидим следующее меню конфигурации
— конфигурацию проведём позже, просто нажимаем «Enter» и установка продолжится.
Сетевая конфигурация сервера (office.ru — название нашего домена, 192.168.0.143 — IP-адрес виртуальной машины, vmb143.office.ru -имя нашей ВМ в домене)
Настройка Kerberos (OFFICE.RU — название нашего домена большими буквами, domain-controller.office.ru — название сервера Kerberos (Key Distribution Center) в нашем домене, как правило, эту роль выполняет контроллер нашего домена):
Для проверки правильности заполнения конфигурационного файла Kerberos используем :
команда kinit запросит пароль пользователя домена и никакой информации больше не выдаст — это нормально, значит конфигурация kerberos правильная.
Конфигурация samba (OFFICE — мнемонический код, domain-controller.office.ru — имя контроллера домена, office.ru — название домена) и перезапуск службы:
Присоединение нашего линукс сервера к домену (ещё раз потребуется ввести пароль администратора домена)
Для настройки службы winbind необходимо отредактировать файл /etc/nsswitch.conf:
и рестартовать службы:
Проверить успешность настройки сервера можно командами:
, вывод которых покажет пользователей и группы нашего домена.
Теперь готовим модуль mod_auth_ntlm_winbind для веб-сервера apache (к сожалению, не нашёл в репозиториях Ubuntu, поэтому придётся компилировать — это просто):
#
и устанавливаем этот модуль в структуру apache:
Для NTLM авторизации необходимо включить опцию KeepAlive в конфигурационном файле apache:
и разрешить серверу apache «слушать» не только на внутреннем сетевом интерфейсе:
Также необходимо изменить привилегии папки /var/run/samba/winbindd_privileged, например так:
— это известная «особенность» взаимодействия winbind и apache.
Открываем firewall по порту apache и рестартуем стек веб-приложений:
Основная настройка сервера Ubuntu (Виртуальной машины Битрикс) завершена, можно настраивать браузер и подключаться с использованием «прозрачной» доменной аутентификации.
Замечания:
Поскольку использование NTLM-аутентификации не поддерживается nginx, эту службу можно отключить:
и увеличить параметры apache (MaxClients) — т.к. теперь почти на каждое пользовательское соединение потребуется свой процесс, с соответствующим увеличением требований к памяти. Для этого потребуется отредактировать файл /etc/apache2/conf.d/prefork на виртуальной машише Битрикс, либо просто увеличить размер выделяемой для ВМ оперативной памяти — в этом случае после перезагрузки ВМ параметры увеличатся автоматически:
Настойка Fedora 12 для использования NTLM
На Fedora все действия аналогичны с учётом специфики ОС Red Hat.
Устанавливаем необходимые пакеты:
Конфигурация сети:
Настройка Samba, Kerberos и nss:
Запускаем сервисы устанавливаем их в режим автозапуска:
Присоединяем наш линукс компьютер к Windows домену (потребуется пароль администратора домена):
Проверяем:
В отличие от Ubuntu, в репозитории Fedora есть готовый модуль mod_auth_ntlm_winbind, устанавливаем и конфигурируем:
Устанавливаем KeepAlive On:
Исправляем баг с правами доступа (bitrix — имя пользователя, под которым запускаются процессы httpd):
Перезапускаем стэк (предварительно проверив настройки firewall):
Настройка интернет-браузеров для автоматической авторизации
Internet Explorer
Для успешной NTLM авторизации нужно, чтобы веб-сервер находился в зоне Local Intranet (при необходимости добавить)
Mozilla Firefox
Добавить веб-сервер к списку доверенных URI для автоматической NTLM-авторизации (через параметр network.automatic-ntlm-auth.trusted-uris на странице firefox about:config)
Ссылки:
на сайте Microsoft
Bitrixvm
Скачав и запустив образ заходим на машинку по ssh и видим менюшку.
Выбрав 15 пункт вводим компьютер в домен:
Интеграция 1с битрикс с ldap
Для того чтобы включить синхронизацию с Active Directory нужно поставить соответствующий модуль. Идем Настройки-Модули
Как синхронизировать Битрикс (Bitrix) с Active Directory-01
Добавляем дополнительный модуль AD/LDAP интеграция. Делается это в пункте Настройки > Настройки продукта > Модули
Идем в модуль AD/LDAP
Жмем добавить
Заполняем
Вход в личный кабинет