Совместное мероприятие OCS и «Базальт СПО», разработчика российских операционных систем «Альт». На встрече говорим о способах бесшовной, плавной миграции с Microsoft AD на решения «Базальт СПО», описываем механизмы и программы для управления групповыми политиками, Linux-пользователями и машинами аналогично тому, как это сделано в Microsoft AD.

В программе мероприятия:

  • Почему больше нет возможности использовать AD?
  • Какие задачи решает AD?
  • Чем можно заменить AD в мире Linux?
  • Samba DC – выбор разработчиков «Базальт СПО»;
  • Принципы реализации групповых политик;
  • Нативные инструменты управления групповыми политиками в Linux;
  • Методика миграции;
  • Примеры внедрений. Практика управления доменом и ГП.

Сегодняшнее мероприятие ведет Владимир Чёрный, директор по продуктам, «Базальт СПО». Начал он свое выступление с рассказа как предприятию, построенному на инфраструктуре на основе windows, перейти к импортозамещающим решениям.

Проект Microsoft Active Directory (AD) более 20 лет завоевывает место на ПК различных организаций и сейчас трудно в России найти развитые инфраструктуры предприятий, которые бы не завели у себя AD домен. В настоящее время платить вендору за этот домен стало невозможно. Использование сторонних закрытых технологий – это еще и весьма существенная угроза безопасности. Дополнительный стимул нам дает правительство, указ президента №166 предписывает согласовывать закупки иностранного ПО. Указ №250 пошел еще дальше, там вообще персональная ответственность вплоть до уголовной.

Чем так привлекательная AD? AD – это проприетарная реализация Microsoft службы каталогов, позволяющая объединить различные объекты сети – ПК, серверы, принтеры и различные сервисы в единую систему. В данном случае AD выступаем в роли базы данных каталогов, в которых хранится информация о пользователях и других объектах. В качестве такой базы выступает LDAP, облегченный протокол, доступ к каталогам, открытый стандартизированный протокол, который применяется для работы с различными реализациями служб каталогов. Основной задачей AD является хранение информации обо всех объектах. Для реализации данного решения необходим специальный сервер – контроллер домена – именно он выполняет функции аутентификации пользователей и устройств в сети. Обращение к контроллеру домена может разрешить какие-то действия, если есть права, либо блокировать доступ, если таких прав нет.

AD дает единую точку идентификации. Если все сервисы, необходимые пользователю, находятся в одной организации, в одной сети, то логично ограничиться одной парой логин-пароль. Это технология единого входа в систему, при которой пользователь один раз вводит пароль и потом пользуется всеми сервисами.

С помощью AD можно поделить пользователей и ПК на различные рабочие группы. Это существенно упрощает использование инфраструктуры в случае несуществующих настроек группы, настройки применяются сразу ко всей группе ПК или пользователей. Всей группе можно внести урезание функционала операционной системы, например, можно ограничить использование определенных приложений всем, кроме администраторов. При этом повышается безопасность. Удобен обмен файлами, с помощью AD легко реализуется технология распределенной файловой системы, которая и используется для управления файлами. Это распределенная сеть для хранения файлов, которые физически располагаются на нескольких серверах, но логически находятся в одном месте.

Служба AD позволяет организовать всё оборудование и сервисы в единую систему. Поддерживаются не только продукты Microsoft, но и сторонние решения: «1С», шлюз удаленных рабочих столов и подобные. Контроллер домена является центральным узлом этой инфраструктуры и является его критической точкой по надежности, поэтому существуют вторичные контроллеры и регулярно делается их бэкап. 

Чем же можно заменить AD? Мир Linux сейчас пришел на смену продуктам Microsoft. Одно из решений в мире Linux является проект Samba, первая версия которой вышла в 1992 году, это была программа NB-server. Это решение подтолкнуло программиста сосредоточиться на сетевой совместимости с продуктами Microsoft, которые появились в 1999 году. Свое название проект Samba получил от протокола SMB (Server Message Block) открытой реализацией которого он собственно и является. SMB – это сетевой протокол уровня приложения. Протокол SMB может использоваться поверх сетевых протоколов. Microsoft расширил эту реализацию SMB, включив в нее поддержку аутентификации с помощью собственного менеджера. В отличии от SMB, основным транспортом для CIFS является протокол TCP. Дальнейшее расширение протокола было - SMB2 и вышло оно в Windows Vista. Samba поддерживает SMB2 начина с версии 3.6.

Мировое сообщество в 2004 году наехало на Microsoft и Европейский суд от этого вендора потребовал раскрыть спецификации. Раскрытие этих протоколов послужило толчком к выходу новой качественной версии Samba4, которая реализует почти полноценный аналог AD, включая контроллер домена, причем Microsoft принимал участие в тестировании Samba4.

Таким образом Samba4 – это фактически замена сервера контроллера домена Microsoft и может управлять Windows машинами так же как управляет им родной домен. Сервер Samba4 поддерживает групповые политики, перемещаемые профили, средства администрирования Windows.

Другой проект, который существует в мире Linux с 2008 года, это решение FreeIPA. Оно разработано компанией Red Hat. Это проект не создавался для работы с Windows системами. Он использует LDAP в реализации в 389-ds, он также использует протокол Kerberos для Mit. Он также использует сервер DogTag, DNS и DHCP. Т.е. все те же самые стандартные сервисы, которые есть в реализации Samba. Однако, FreeIPA совершенно не заточена для работы с каким-либо Windows.

Наша компания в 2017 году думала куда идти и развиваться. Поддержка связности узлов сети предприятия, она организуется сторонними приложениями, например, почта (Exchange) за счет SOGo/Communigate. DNS решается сторонними проектами (или внутри Samba). DHCP также решается сторонними проектами. Сквозная аутентификация представляется обоими проектами FreeIPA и Samba. Управление конфигурацией и файлообмен решается только с помощью Samba. Организация удаленного доступа полноценно не решается ни одним из проектов. ОС «Альт» поддерживают оба варианта Samba DC и FreeIPA.

Samba DC умеет управлять Windows машинами и не препятствует хранению на сервере Samba настроек групповых политик Windows машин. К сожалению, инструменты для управления на нем отсутствуют, но политики работать на Windows машинах будут.

Наша компания придумала как реализовать поддержку групповых политик для Linux машин в рамках проекта Samba. В 2001 году мы нашу идею изложили на конференции Samba, коллеги поддержали эту идею, но мы по-прежнему работаем в открытом поле, т.е. все наши наработки доступны в проекте Samba. Конечно же мы работаем для себя, у нас много особенностей по отношению к другим дистрибутивам. Перенос на другие Linux вполне возможен.

Как управлять групповыми политиками? Тут нам государство чуть-чуть помогло, нам дали маленький грант (примерно 100 млн рублей).

Особенности реализации групповых политик в ОС «Альт». Групповые политики, как механизм, отличаются от стандартных инструментов управления конфигурациями (таких, как например, Pippet, Ansible и др.) тремя ключевыми особенностями: 1) Интеграция в инфраструктуру AD; 2) Соответствием декларативной части настроек конфигураций конкретным дистрибутивным решениям; 3) Наличием не только управления конфигурациями компьютеров, но и конфигурациями пользователей.

Последний пункт – это самое главное преимущество. В самих объектах групповых политик могут быть заданы дополнительные условия. В качестве фильтров используется информация о состоянии ПК, размер свободного дискового пространства, остаток заряда ноутбука и др.

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

Некоторые задачи управления конфигурациями можно решить, как через пользовательские, так и через машинные параметры.

Групповые политики можно использовать для разных целей, например, установки домашней страницы, да и вообще управлением браузерами, установки запрета на подключение внешних носителей и т. д.

Как и чем применяются эти политики? Централизованное управление и настройка парка машин с OC «Альт» производится через инструмент GPUPDATE, это приложение было написано нашей командой. Это консольный инструмент, без графического интерфейса. Он может обновлять политики раз в час, можно это время установить самостоятельно.

Политики бывают двух типов: стабильные и экспериментальные. Стабильные изображены на следующем слайде. Стабильные политики – это те, для которых написаны шаблоны.

Экспериментальные политики изображены на следующем слайде.

Экспериментальные политики нужно включать принудительно. Там в настройках есть место, где нужно поставить соответствующую галочку.

Среди этих политик: управление файлами и logon-скриптами, подключение сетевых дисков, управление INI-файлами, управление настройками KDE Plasma, установка программного обеспечения, это очень сложный процесс, поэтому он пока остается экспериментальным, и управление общими каталогами. У нас сейчас около 1000 политик, у Microsoft их около 3000, есть куда стремиться.

Разрабатываемые политики изображены на следующем слайде.

Сейчас мы работаем над политиками паролей, над установкой паролей для локальных пользователей, над подключением принтеров, синхронизацией времени по NTP и т. д. Мы открыты для всех, если есть какие-то пожелания по политикам, то прошу, пишите нам.

Наши политики управляются через шаблоны, все они выложена на международный ресурс, там же лежат все политики Microsoft.

Можно управлять политиками через инструмент RSAT. Но если мы хотим избавиться от Microsoft в перспективе совсем, то где же нам взять инструменты управления?

Для этого мы разработали два инструмента, один называется ADMC. Он создан как ответ на потребность в нативном инструменте для работы с AD и групповыми политиками. Его делали так, чтобы у начинающих пользователей не появилось каких-то «непоняток», связанных с интерфейсом.

Идея управления интерфейсом такая же как и у Microsoft.

Можно посмотреть свойства пользователя, можно создать политику, привязать ее к определенному подразделению. Как только вы нажмете на ИЗМЕНИТЬ, то у вас выскочит второй наш графический инструмент, который называется GPUI.

Этот инструмент – аналог соответствующей оснастки редактирования групповых политик. С его помощью можно редактировать политики, которые имеют 3 состояния: НЕ НАСТРОЕНО, ВКЛЮЧЕНО и ВЫКЛЮЧЕНО.

НЕ НАСТРОЕНО и ВЫКЛЮЧЕНО – это разные состояния. Включение «машинки» в доменах осуществляется через графическую утилиту, которая находится в центре управления.

Как осуществить подход к миграции доменной инфраструктуры?

Любой переход достаточно сложен, он требует всестороннего изучения. Любая инфраструктура очень индивидуальна. Есть особенности построения сети, есть особенности построения объектов, используемых служб и т.д. Перенос лучше осуществлять не самостоятельно, а при полной консультации со стороны опытных интеграторов.

В нашей компании порядка 150 разработчиков, мы не занимаемся интеграцией. Мы прикрепим вас к группе нашего технического пресейла, они вам помогут в том числе подскажут надежных интеграторов.

Существует 2 стандартных подхода к любой миграции: 1) Ничего не трогать и рядом построить новое – параллельная миграция. 2) Способ замещающей миграции наиболее оптимальный.

В чем смысл замещающей миграции? Сценарий выглядит следующим образом: у вас есть живой домен AD, у него есть база данных MS AD, которая хранит все данные. Мы разворачиваем внутри контроллер домена Samba DС вторичный и копируем все данные с этой базы в базу нового домена. Потом выдергиваем этот домен и в стороне, в изолированной исходной системе, разворачиваем этот контроллер домена, если есть, то разворачиваем и дополнительные контроллеры домена, и просто копируем всю имеющуюся инфраструктуру.

В итоге можно имя домена сохранить, SID домена тоже сохраняются, аккаунты и пароли всего-всего-всего сохраняются, группы сохраняются, записи DNS тоже сохраняются, т.е. у вас получилась точная копия домена, но построенная не на AD, а Samba DC контроллере.

Затем подготавливается закрытое окружение, выгружаете слепок базы, разворачиваете первый КД Samba DC с использованием полученной базы, дублируете структуры парка КД MS AD, но уже на Samba DC. Затем публикует полученную доменную инфраструктуру, убирая windows-серверы и добавляете серверы на Samba DC.

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

Преимущества решения «Альт Домен» представлены на следующем слайде.

Источники :

Сейчас на главной