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

Сегодня нужно заменить большое количество программных продуктов, а времени совсем мало, поэтому приходится расставлять приоритеты и начинать с самого важного. Так, одним из стратегических направлений «Группы Астра» стала разработка службы каталога, которая должна заменить Microsoft Active Directory и стать сердцем обновленной ИТ-инфраструктуры российских предприятий. В нашем продукте мы объединили службу каталога FreeIPA с системой конфигурирования SaltStack и дополнили решение набором наиболее востребованных сервисов, таких как репозиторий программного обеспечения Reprepro, файловый сервер Samba, общий доступ к принтерам CUPS, динамическая настройка хостов ISC DHCP, установка ОС по сети TFTP HPA, мониторинг Zabbix и Grafana, журналирование syslog-ng.

Продукт ALD Pro (Astra Linux Directory Pro) быстро развивается, и с даты первого релиза было опубликовано уже несколько сотен улучшений, что позволило стать лидером на рынке доменных решений. У нас уже сотни инсталляций по всей стране, и с каждым днем их становится все больше. Но некоторых пользователей очень интересует вопрос, почему в качестве основы для службы каталога мы выбрали все-таки FreeIPA, а не Samba AD, и в этой статье поделимся нашими соображениями. Уверены, что информация окажется полезной не только нашим заказчикам, но и пользователям ванильных FreeIPA и Samba AD.

Samba AD

Когда речь заходит о Samba (https://www.samba.org), в первую очередь нужно определиться, в каком контексте обсуждается продукт, т. к. этот швейцарский нож может предоставить и общий доступ к файлам, и совместное использование принтеров, и доменные сервисы, причем как в формате Active Directory, так и в устаревшей реализации NT4.

Работу над созданием службы совместного доступа к файлам Эндрю Триджелл (Andrew Tridgell) начал еще в конце 1991 года, когда обучался в аспирантуре Австралийского национального университета и по совместительству отвечал за сетевое администрирование. Образовательное учреждение закупило программное обеспечение PC X server eXcursion от компании DEC (Digital Equipment Corporation), и Триджеллу захотелось понадобилось организовать доступ с eXcursion к файлам, размещаемым на других серверах под управлением операционной системы Sun. Программного продукта, который бы решал эту задачу, не было, и Триджелл как настоящий «тыжпрограммист» путем реверс-инжиниринга сетевого протокола, просто анализируя трафик, повторил реализацию одного из наиболее успешных продуктов компании DEC, что принесло автору заслуженное признание. Впоследствии, конечно, оказалось, что у протокола все-таки есть открытая спецификация и этот reveng не имел большого практического смысла, но, как говорится, бешеной собаке семь верст не крюк.

Я немного покопался, немного поспрашивал и обнаружил, что нужная мне спецификация предназначена для протокола SMB и что она доступна через ftp. Тогда скачал ее и начал удалять все эти ужасные константы из кода, когда они стали понятны. Я был шокирован, увидев реальную спецификацию SMB, и понял, как мне повезло, что мой первоначальный код вообще работал.

Эндрю Триджелл

Samba-Unix Talking with PCs, Linux Journal выпуск #7, ноябрь 1994

Изначально проект так и назывался — SMB Server, по названию протокола Server Message Block. Но это имя оказалось уже занято, и, по легенде, Триджелл выбрал новое название из слов, начинающихся с буквы «S» и содержащих «M» и «B» в том же порядке, получив их командой grep по системному словарю:

grep -i '^s.*m.*b' /usr/share/dict/words
samba

В дальнейшем танцевать в ритме Samba стало для Триджелла, по большому счету, его основной деятельностью. С 1994 года он возглавляет в университете проект, в рамках которого создавалась распределенная файловая система HiDIOS для компьютеров Fujitsu, и за это время выходит несколько релизов Samba, в том числе вторая версия, где впервые появилась поддержка службы каталога в стиле NT4. С 2001 года Триджелл работает в VA Linux Systems над устройствами сетевого хранения данных и развивает Samba в части оптимизации под ядро Linux. Работая в Quantum с октября 2001 года над корпоративными системами хранения, Триджелл добавляет в Samba возможность работы Linux-компьютера в составе домена Active Directory. С января 2003 года Триджелл работал над развитием систем хранения в исследовательском центре IBM, и в том же году выходит Samba 3, в которой была реализована поддержка протоколов SMB2.2 и SMB3.

В части функций Active Directory переломным моментом для проекта Samba стал 2004 год, когда комиссия Европейского союза признала Microsoft виновной в злоупотреблении монопольным положением и наложила штраф в 500 млн евро с требованием предоставить полную информацию о протоколах для обеспечения совместимости. Триджелл работал в исследовательском центре IBM, там решили воспользоваться ситуацией и запросить необходимые спецификации, но теперь этот запрос уже соответствовал интересам корпорации Microsoft. Для усиления своих позиций в судах несколько лет спустя Microsoft даже наняла разработчика Samba Криса Хартела (Chris Hertel) для написания документации.

Открывшиеся возможности определили дальнейший вектор развития продукта, и с 2005 года Триджелл полностью переключился на разработку Samba 4 как участник OSDL (Open Source Development Laboratory). Эту некоммерческую организацию IBM учредила вместе с другими технологическими гигантами — Intel, Hitachi, Hewlett-Packard, Fujitsu, NEC, Computer Associates — для ускорения проникновения Linux в корпоративную среду. Через нее финансировались ключевые проекты, именно там работал сам Линус Торвальдс и несколько других разработчиков ядра операционной системы.

При этом важно понимать, что директора этих ИТ-компаний не были какими-то наивными альтруистами, коммунистами или сторонниками культуры хиппи. Просто к тому моменту общество уже пришло к осознанию, что, закрывая исходные коды, коммерческие организации создают точно такие же барьеры для развития индустрии, как это делала AT&T несколькими десятилетиями ранее, ограничивая доступ к использованию своих патентов. Поэтому совместная работа над системными решениями может значительно способствовать развитию и выгодна всем.

Благодаря беспрецедентной открытости компании Microsoft (по известным причинам) через семь лет удалось выпустить релиз Samba 4, в котором появилась возможность работы в роли контроллера Active Directory с Heimdal Kerberos и анонсировалась возможность промышленной эксплуатации, см. рисунок 1. На тот момент было реализовано только 40% от необходимого функционала, но этого хватило, чтобы ряд компаний стал делать на этом бизнес.

Рисунок 1.История развития проекта Samba
Рисунок 1.История развития проекта Samba

В вопросах внедрения Samba AD дальше всех продвинулась французская компания Tranquil IT (https://www.tranquil.it), которой на данный момент удалось реализовать более 300 проектов, в самом крупном из которых было порядка 140 контроллеров домена. Начинали они с развертывания доменов NT4 на Samba 3, поэтому часть клиентов им нужно было просто обновить. Выступая на конференции SambaXP в 2017 году, основатели компании Денис и Винсент Кардон (Denis Cardon, Vincent Cardon) отметили, что для миграции небольших инфраструктур на Samba AD препятствий практически нет, а проблемы в основном связаны с недостаточной квалификацией сотрудников – незнанием компьютерных сетей, устройства Active Directory, отсутствием навыков администрирования Linux.

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

Берите продукт, используйте его. А если он не решит ваших задач, то вспомните, сколько вы за него заплатили. И не забудьте отправить мне отчет об ошибке.

Эндрю Триджелл

Samba-Unix Talking with PCs, Linux Journal выпуск #7, ноябрь 1994

Кстати, в части документации обязательно обратите внимание на сайт Tranqil IT, на который ссылаются даже на официальном сайте wiki.samba.org

Если с маленькими инфраструктурами понятно, то крупные проекты внедрения возможны только при значительных доработках продукта, которые Tranquil IT воплощала через коммерческие заказы в Catalyst, например:

  • При внедрении продукта в центральных банках западноафриканских государств была реализована поддержка последнего входа (4.4.0).

  • На проекте министерства окружающей среды Франции потребовалось реализовать поддержку дополнительных протоколов шифрования (4.7.0), журналов в формате JSON (4.9.0), функций экспорта/импорта объектов групповой политики (4.9.0).

  • Внедрение в министерстве культуры и коммуникаций Франции не обошлось без реализации Read Only Domain Controller (4.7.0).

  • Внедрение в министерстве государственных финансов Франции стало возможным благодаря устранению ограничения в 4 ГБ на размер базы данных (4.9.0), разработке графических инструментов анализа топологии (4.9.0), улучшению управления DNS (4.9.0) и работы pre‑fork (4.10.0).

  • Для национального агентства по безопасности информационных систем значительно доработана документация в части функций безопасности.

Проект развивается не быстро, но за последние годы в направлении Enterpise было сделано уже достаточно много, чтобы даже крупные проекты стали принципиально возможны. Конечно, еще нет поддержки лесов, штатной репликации SYSVOL, не стоит рассчитывать на поддержку таких приложений, как Exchange, которые имеют сильную привязку к расширенным функциям Active Directory, но при необходимости без всего этого можно обойтись. Основные причины, по которым мы не сделали выбор в пользу Samba, заключаются в другом.

Если проанализировать последние коммиты, то можно увидеть, что большинство улучшений в Samba вносят сотрудники Catalyst, Red Hat (IBM), SerNet, SUSE, имеющие прямой коммерческий интерес, а иногда даже конкурирующие между собой. Но интересы Microsoft никуда не делись, и этот держатель фишек продолжит препятствовать развитию проекта в той мере, насколько это будет уместно в рамках установленных правил. Ну, и самое главное, что проект Samba AD изначально был направлен на создание совместимости с Windows, а не разработку нативного доменного решения для Linux, поэтому участникам Samba Team навсегда уготована роль догоняющих.

FreeIPA

Возможность вводить Linux-компьютеры в домен Active Directory впервые появилась в службе Winbind из состава компонентов Samba, что позволило сократить разрыв между двумя мирами и начать проникновение Linux в корпоративную среду, где в то время безгранично доминировала компания Microsoft со своей активной директорией. Но если Samba искала простые способы интеграции с Windows, то команда FreeIPA направила свои усилия на то, чтобы создать новое решение с оглядкой на лучшие практики Microsoft, которое бы в полной мере соответствовало потребностям Linux, как сделала сама Microsoft в конце 90-х, когда создала свою Active Directory, используя передовые технологии UNIX, такие как LDAP, Kerberos и DNS.

Проект IPA (https://www.freeipa.org) официально стартовал в 2007 году, но готовиться к этому компания Red Hat начала сильно раньше, когда в 2004 году приобрела у компании AOL (America Online) права на код Netscape Directory Server, а заодно и команду разработчиков, которые развивали этот продукт последнее десятилетие. Если внимательно приглядеться к истории LDAP, то за сухими формулировками из пресс-релизов откроется настоящая детективная история, полная экшена, конфликтов интересов, провалов и свержений, по которой можно снять настоящий блокбастер, см. рисунок 2.

Рисунок 2. История развития FreeIPA
Рисунок 2. История развития FreeIPA

Изначально стандарт электронных каталогов X.500 был разработан международным союзом электросвязи (International Telecommunication Union, ITU) и драйвером развития технологии были телекоммуникационные компании, которым нужно было предоставлять авторизованные услуги связи миллионам абонентов. К слову, в инфраструктуре российских операторов из большой тройки LDAP тоже использовался. Основную роль в разработке технологии сыграли исследователи из Мичиганского университета (University of Michigan), Университетского колледжа Лондона (University College London), компаний PSI, Critical Angle, Netscape, Sun, America Online, HP и др. Компания Microsoft тоже участвовала в обсуждении стандарта, но ее роль заключалась в большей степени в том, что она показала альтернативный способ применения технологии для построения корпоративных доменов, и далее эстафетную палочку у телекоммуникационных компаний перехватили уже ИТ-гиганты.

На момент покупки Netscape их программный код вобрал в себя последние разработки ведущих игроков рынка, поэтому в LDAP-сервере Red Hat до сих пор таится большой потенциал, который пока еще не задействован в их IdM-решении. Например, 389 Directory Server позволяет выстраивать трехуровневую топологию, состоящую из Мастеров, Хабов и Потребителей, в которой практически нет ограничений по горизонтальному масштабированию для построения систем, испытывающих колоссальные нагрузки по операциям чтения.

В фокусе внимания FreeIPA находится разработка функций централизованной идентификации, политик и аудита (от англ. identity, policy, audit). Для этого разработчики интегрировали с LDAP-сервером эталонную реализацию Kerberos SSO (MIT Kerberos) и одну из лучших реализаций DNS-службы (ISC Bind9). А для взаимодействия с Active Directory команда Red Hat воспользовалась наработками проекта Samba AD, в создании которых принимала и продолжает принимать участие.

Еще большее значение имеют усилия команды FreeIPA в развитии клиентской части. Переосмысление потребностей Linux в части аутентификации привело к созданию новой службы SSSD, работа над которой в 2009 году была выделена в отдельный проект. Данная аббревиатура официально расшифровывается как System Security Services Daemon, но, как рассказывает один из разработчиков продукта в кулуарах, это на самом деле первые буквы имен четырех основателей: Simo Sorce, Sumit Bose, Stephen Gallagher и Dmitri Pal.

Для становления проекта SSSD потребовалось некоторое время, но на сегодняшний день эта служба практически полностью вытеснила Winbind и является самым правильным ответом на вопрос о том, как обеспечить работу компьютера под управлением операционной системы из семейства Linux в составе домена. С помощью этой службы компьютер Linux можно ввести в домен Microsoft Active Directory, Samba AD и даже использовать в качестве бэкенда простой LDAP v3 - сервер. Но в полном объеме продукт раскрывается, конечно же, если в роли бэкенда выступает FreeIPA, в этом случае становятся доступны такие функции, как правила HBAC и SUDO, политики монтирования AutoFS, сопоставление пользователей SELinux. А на компьютерах под управлением Astra Linux, оснащенных подсистемой безопасности PARSEC, через FreeIPA можно централизованно управлять мандатным доступом для защиты конфиденциальной информации, и мы обязательно расскажем об этой технологии в одной из следующих статей.

Для того чтобы окончательно развеять сомнения, сравним продукты через анализ программного кода. Разработка Samba AD выполнялась в условиях нехватки ресурсов, поэтому исходные коды предыдущей версии, отвечающие за работу SMB-протокола, были добавлены на скорую руку практически без изменений, и эти проблемы остаются в проекте до сих пор: достаточно открыть репозиторий с исходными кодами, и вы увидите папку с названием «Samba 3». И так было всегда. Например, еще в начале 2000-х Люк Лейтон (Luke Leighton) предлагал переписать продукт на микросервисную архитектуру, но привлечь финансирование ему не удалось, поэтому форк Samba TNG (The Next Generation) в 2005 году окончательно умер. И только 20 лет спустя в версии 4.16 его идеи наконец-то были реализованы и службы MS-RPC были разнесены по отдельным приложениям с взаимодействием через сокеты unix. В проекте FreeIPA дела обстоят совсем иначе: разработчики вкладывают значительные ресурсы в рефакторинг программного кода. Например, с выходом Python 3 весь программный код был переписан под новый язык, чтобы задействовать его новые возможности.

Если посмотреть на объем кода командой wc -l $(git ls-files), то окажется, что в Samba сейчас почти 5.5 млн строк, в то время как в проектах FreeIPA суммарно только 3 млн, но, как известно, больше не значит лучше, и следует учесть еще два обстоятельства:

  1. Проект Samba 4 вобрал в себя порядка 2,5 млн строк Samba 3, где была реализована поддержка протоколов SMB, что не относится напрямую к функциям службы каталога, и с учетом этой поправки объем кода будет уже сопоставим.

  2. Продукт FreeIPA использует программный код Samba AD для интеграции с Active Directory, и более того, именно сотрудники Red Hat помогают проекту Samba в развитии этой функциональности.

Рисунок 3. Сравнение объема кода по количеству строк
Рисунок 3. Сравнение объема кода по количеству строк

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

cd samba/
git log --shortstat --pretty='^ "%h", "%as", "%an", ' |  tr "\n" " " | tr "^" "\n"
 "4c291514a9e", "2023-10-17", "Joseph Sutton",    2 files changed, 2 insertions(+), 12 deletions(-)
 "d209cdf4f0c", "2023-10-17", "Joseph Sutton",    2 files changed, 3 insertions(+), 2 deletions(-)
 "37594035547", "2023-10-17", "Joseph Sutton",    1 file changed, 1 insertion(+), 1 deletion(-)

Если сравнить показатели по добавлению/удалению строк, то станет очевидным, что в последние годы компания Red Hat инвестировала в проект значительно больше усилий, чем Samba Team. И это не считая того, что часть изменений Samba внесена теми же сотрудниками Red Hat.

Рисунок 4. Динамика изменений по проектам
Рисунок 4. Динамика изменений по проектам

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

Если вы отвечаете только за серверную группировку и надеетесь реализовать импортозамещение БЕЗ замещения, просто заменив одни контроллеры на другие, не затрагивая сервисы и рабочие станции, то у вас действительно нет альтернатив, кроме как Samba AD, т. к. только эта служба каталога пытается мимикрировать под Active Directory. Но даже в этом случае не стоит рассчитывать, что получится обойтись малой кровью, и верить консультантам, которые будут убеждать вас в обратном. Обязательно закладывайте значительные временные и финансовые ресурсы на проверку совместимости с другими компонентами инфраструктуры и решение сопутствующих проблем, чтобы не оказаться у разбитого корыта. И уж тем более не стоит рассчитывать на надежную работу домена, в составе которого будут одновременно контроллеры Samba AD и Microsoft Active Directory: эксплуатация такой инфраструктуры потребует от сотрудников запредельных компетенций по устройству активной директории вообще и каждой реализации в частности, если такие вообще есть на рынке труда. Как говорится, кто считает, что трудно найти настоящую любовь, тот не искал разработчиков на Scala.

Если же вы делаете стратегический выбор в развитии ИТ-инфраструктуры предприятия на десятилетия и планируете полностью перейти на отечественные операционные системы, использующие в подавляющем большинстве ядро Linux, то правильнее будет сразу внедрять службу каталога, основанную на FreeIPA, и выгоды от принятия такого решения с каждым годом будут только расти.

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

Комментарии (29)


  1. turbidit
    27.10.2023 20:30
    +14

    общество уже пришло к осознанию, что, закрывая исходные коды, коммерческие организации создают точно такие же барьеры для развития индустрии, как это делала AT&T

    Именно поэтому вы городите закрытые поделки поверх свободного и открытого Debian?


    1. Vitimbo
      27.10.2023 20:30
      -1

      А как тогда прибыль извлекать? Идея скорее в том, чтобы снизить затраты на конкуренцию.


      1. trojan218
        27.10.2023 20:30
        +1

        С Астрой о конкуренции или конкурентном приемуществе речи не идёт. Support использует виртуалки, при решении проблем у клиентов...


        1. flamelcadet
          27.10.2023 20:30
          +1

          А что не так с виртуалками?


        1. UsrBoot
          27.10.2023 20:30

          А Вы там частый клиент ?:)


        1. egor_overdrive
          27.10.2023 20:30
          +1

          Прошу подсказать, а чем плоха технология виртуализации при стендировании и последующем воспроизведении проблем клиентов?

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

          Я не представитель данной компании, но мне стало очень интересно.
          Расскажите, пожалуйста, альтернативные способы решения.

          Заранее благодарю за ответ!


    1. AnatolijL
      27.10.2023 20:30

      Внести изменения в код открытых проектов даже при лояльном отношении к разработчикам может оказаться крайне непростой задачей. Например, для внесения своих изменений в основные ветки Heimdal и MIT Kerberos команде Samba потребовалось целых 15 лет. Чего это будет стоить российским разработчикам в текущих условиях - вопрос риторический. В том числе и по этой причине появляются форки, некоторые из которых иногда даже успешнее основных веток.


      1. turbidit
        27.10.2023 20:30
        +2

        Внести изменения в код открытых проектов даже при лояльном отношении к разработчикам может оказаться крайне непростой задачей.

        Даже если так. Кто вам мешает форкнуть и тащить в свою сторону открытый проект параллельно? Нет, вы намеренно городите закрытый Fly, закрытую и несовместимую с другими дистрами ALD Pro на основе FreeIPA и т.д. Где вклад в сообщество от вашей компании?

        А если глянуть вашу фашисткую лицензию - еще меньше желания с вами связываться.


  1. nitro80
    27.10.2023 20:30
    +5

    Уважаемые авторы Astra Linux, а почему ваша ос становится кирпичом после apt update && apt upgrade?


    1. IkaR49
      27.10.2023 20:30
      +2

      1. Делать это надо лучше без графической сессии

      2. Предварительно отключить все системы безопасности (мандатки, целостность, зпс и кажется что-то ещё)

      3. Есть утилита astra-update, которая как минимум пункт 2 сделает за вас.

      4. Всё вышеописанное есть в документации.

      P.S. В Астре не работаю.


      1. nitro80
        27.10.2023 20:30

        1. Доступ к документации нам дали несколько позже, к тому времени у нас образовались 2 кирпича


        1. flamelcadet
          27.10.2023 20:30
          +2

          Так документация по обновлению и всякие pdfки валяются в открытом доступе на wiki, хотя интерфейс там, конечно, мало интуитивный.


          1. AnatolijL
            27.10.2023 20:30

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


        1. myxep
          27.10.2023 20:30

          Но документация вся в открытом доступе


    1. mylitsyn
      27.10.2023 20:30
      +2

      Собственно, можно почитать в интернете разницу между upgrade и dist-upgrade. Вкратце - они по разному разрешают зависимости, например в части ситуаций, когда необходимо замена пакетов или их удаление. Upgrade некорректно отрабатывает в этих случаях.


      1. nitro80
        27.10.2023 20:30

        На debian-based я всегда использую как раз dist-upgrade.

        Но сам никогда не сталкивался с тем, что вот так linux легко просто поломать обновлением. Опыт не такой большой, чаще мои действия к этому приводили.

        Поэтому без проблем и пробовали обновить свежие, как казалось нам, компьютеры. И вдвоём с помощником убили 2 компьютера.


    1. AnatolijL
      27.10.2023 20:30
      +4

      Если ответить одним предложением, то это потому, что в Linux намного выше степень повторного использования кода, чем в Windows. Именно по этой причине и появились пакетные менеджеры с репозиториями программного обеспечения.

      Для корректной работы Windows-приложений, конечно, тоже могут потребоваться DirectX, .NET или кодеки, но в Linux это доведено до абсолюта. При инсталляции одного приложения через зависимости могут быть установлены десятки или даже сотни вспомогательных пакетов. При этом разработчики могут использовать разные стратегии обновления своих продуктов.

      Например, команда apt upgrade обновляет только уже установленные пакеты, а утилита astra-update использует под капотом среди прочего команду apt dist-upgrade, которая удаляет и заменяет пакеты, если это необходимо для разрешения конфликтов зависимостей. Могут быть отличия и в части работы с конфигурационными файлами, например, для обновления ALD Pro следует указывать опцию Dpkg::Options::=--force-confnew, которая позволяет переопределить содержимое конфигурационных файлов, даже если они были изменены вручную или скриптами автоматизации.

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


  1. mc2
    27.10.2023 20:30
    +3

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


    1. AnatolijL
      27.10.2023 20:30
      +1

      Есть еще KasperskyOS, в ядре которого не используется код ОС Linux.


    1. mozgolika
      27.10.2023 20:30

      Они используют в большинстве своём не только ядро, а за частую полностью систему. Чисто так сказать кастомная сборка дебиана. Так еще и с устаревшими репозиториями


  1. Alcogolic
    27.10.2023 20:30
    +2

    Все хрень, нет ничего нормального на замену MSAD.

    Самба глюкавая до безумия, надо в штате реально крутого админа держать или двух, которые сумеют разгребать косяки и делать припарки, FreeIPA на вид норм, работает хорошо, пока не подрубишь какой ни будь почтовик по лдапу и не осознаешь что всякие штуки типа password expire или или счетчик неправильно ваеденных паролей тупо не работают. Все эти фишки, политики паролей работают на уровне freeipa, через керберос, а ldap который опенлдап сам по себе ничего о freeipaшных темах не знает. В итоге, пароль просрочился, на тачке введенной в домен не авторизуешься, а к лдапу подрубайся наздоровье. Официальное решение - отказаться от ldap подключений, что совсем не прикольно. И если эту хрень как то можно обойти через ввод сервака в домен, что не всегда возможно, особенно на сетевом оборудовании, то хрень номер 2, а именно невозможность ввести винду в домен делает ситуацию еще более печальной. Мы конечно все теперь будем стремиться к линуксу и хоронить винду, но в ближайшей перспективе это маловероятно.


    1. AnatolijL
      27.10.2023 20:30
      +5

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

      Нашей команде R&I удалось разработать альтернативный способ, которому не требуются локальные учетные записи, а после входа пользователь олицетворяется своим доменным SID и может использовать прозрачную аутентификацию по протоколу Kerberos V5.

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


  1. grumbler70
    27.10.2023 20:30
    +1

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

    Такое можно ставить в прод только от полной безнадёги. И, в отличии от китайской автомобильной промышленности, перспектив нет. Мир "свободныхх художников" никогда не договорится между собой, что оставить в стандарте и "куда и какие педали" размещать.


    1. AnatolijL
      27.10.2023 20:30

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


  1. mvv-rus
    27.10.2023 20:30
    +1

    Ну, и самое главное, что проект Samba AD изначально был направлен на создание совместимости с Windows, а не разработку нативного доменного решения для Linux, поэтому участникам Samba Team навсегда уготована роль догоняющих.

    Пардон, что там догонять-то?

    Вы в курсе, что текущие функциональные уровни домена и леса AD DS для новейшей на сечас версии Windows Server 2022 - то, что определяет возможности AD DS как распределенной базы данных учетных записей - это уровни Windows Server 2016. Что касается клиентов, то они в большинстве случаев нечуствительны даже к таким изменениям этих самых функциональных уровней. То есть, спецификация продукта под названием Active Directory Domain Services не меняется уже почти 8 лет. Неужели за это время нельзя было (при нормальной работе) проапгрейдить роль догоняющих на роль догнавших и на это успокоившихся?

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

    Из обзора совершенно непонятно, что поддерживается каждым продуктом из возможнойстей AD, кроме базовых: каталог LDAP, хранение пользователей и групп в рамках одного домена, доступ к спискам пользователей и групп по протоколу Netlogon, аутентификация с передачей авторизационной информацией по протоколам Kerberos и NTLM. Интересует:
    -возможность изменения содержимого каталога параллельно на нескольких контроллерах домена с репликацией этих изменений на другие контроллеры и разрешением конфликтов при репликации;
    -возможность хранения в одном каталоге учетных записей и групп для нескольких разных доменов (поддержка леса доменов) с автоматическими доверительными отношениями между этими доменами;
    -возможность установки доверительных отношений через протоколы NTLM (внешнее доверие) и Kerberos (межлесное доверие);
    -возможность репликации с контроллерами AD под Windows (поддержка соответствующего протокола репликации)

    IMHO в техническом обзоре всё это должно быть.

    PS Особенно интересует первый пункт: возможность изменения содержимого каталога параллельно на нескольких контроллерах домена с репликацией этих изменений на другие контроллеры и разрешением конфликтов при репликации. Потому что в те времна, когда я смотрел возможности Netscape Directory Server, этой возможности в нем не было.


    1. Alcogolic
      27.10.2023 20:30

      Вот да(насчет 8 лет), я даже больше скажу, 2003 домен прекрасно работает, а это уже 20 лет, неужели за 20 лет нельзя было создать аналогичное по стабильности и функционалу решение? Недавно пытались добавить trusted домен на самбе к виндовому домену - обплевались, наигрались с разными версиями самбы и забили.


      1. AnatolijL
        27.10.2023 20:30
        +1

        Со своей стороны можем точно уверить, что Samba AD позволяет создавать доверительные отношения с Microsoft Active Directory как домен к домену (External trust), так и лес к лесу (Forest trust), где Samba AD выступает в роли леса с одним доменом. Для создания доверительных отношений вы можете воспользоваться как оснасткой Microsoft Windows Active Directory Domains and Trusts, так и утилитой из состава Samba (samba-tool domain trust create). Возможно, журнал ошибок утилиты samba-tool даст вам больше подсказок.


    1. AnatolijL
      27.10.2023 20:30
      +1

      Неужели за это время нельзя было (при нормальной работе) проапгрейдить роль догоняющих на роль догнавших и на это успокоившихся?

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

      возможность изменения содержимого каталога параллельно на нескольких контроллерах домена с репликацией этих изменений на другие контроллеры и разрешением конфликтов при репликации;

      Обе службы каталога, и FreeIPA и Samba AD, поддерживают репликацию в мульти-мастер режиме, т.е. с несколькими ведущими серверами. Механизмы реализации во многом похожи и опираются на RFC 3384. В FreeIPA протокол называется «DS 5.0 multi-supplier incremental replication protocol», версия 5.0 указывает на то, что впервые этот протокол был реализован еще Netscape Directory Server версии 5.0, но после того, как компания Red Hat приобрела кодовую базу Netscape, репликация многократно дорабатывалась, и в коде можно встретить указания на версии Red Hat DS 7.0, 7.1 и 9.0.

      За работу репликации отвечает плагин Multimaster Replication Plugin, алгоритм основан на так называемых RUV'ах (Replica Update Vector) с использованием журнала изменений, который хранится в отдельной базе данных, настройки этого журнала можно найти в записи с DN «cn=changelog5,cn=config». Для работы механизма репликации требуются заранее установленные соглашения о репликации, за управление которыми отвечает плагин IPA Topology Configuration.

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

      возможность хранения в одном каталоге учетных записей и групп для нескольких разных доменов (поддержка леса доменов) с автоматическими доверительными отношениями между этими доменами;

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

      Поддержки леса доменов сейчас нет ни в Samba AD ни в FreeIPA. В продукте ALD Pro поддержка лесов появится в конце текущего года, мы сейчас активно разрабатываем механизм доверительных отношений FreeIPA-FreeIPA, эта функция позволит не только повышать безопасность инфраструктуры, но и снизить технические требования к отдельным контроллерам домена.

      возможность установки доверительных отношений через протоколы NTLM (внешнее доверие) и Kerberos (межлесное доверие);

      Доверительные отношения FreeIPA реализованы через интеграцию с продуктом Samba AD, поэтому в части этих функций службы каталога аналогичны, и "более того, именно сотрудники Red Hat помогают проекту Samba в развитии этой функциональности"

      Доверительные отношения с Microsoft Active Directory можно создать как домен к домену (External trust), так и лес к лесу (Forest trust), где Samba AD или FreeIPA выступает в роли леса с одним доменом. Внешние доверительные отношения по умолчанию используют также Kerberos V5, переключение на NTLM происходит в случае проблем с Kerberos.

      Подробнее о доверительных отношениях мы рассказывали в нашей статье "Одна миграция подобна двум пожарам: двусторонние трасты с AD DS и реализация глобального каталога в ALD Pro" https://habr.com/ru/companies/astralinux/articles/734788/

      возможность репликации с контроллерами AD под Windows (поддержка соответствующего протокола репликации)

      Такая возможность есть только в Samba AD, но "не стоит рассчитывать на надежную работу домена, в составе которого будут одновременно контроллеры Samba AD и Microsoft Active Directory: эксплуатация такой инфраструктуры потребует от сотрудников запредельных компетенций по устройству активной директории вообще и каждой реализации в частности, если такие вообще есть на рынке труда."


    1. ilyakruchinin
      27.10.2023 20:30

      Вы написали очень много текста для вопроса, суть которого сводится к "где вы были 8 лет"...

      По теме: меня больше смущает лицензионная чистота (как я понял, закрытых) доработок (частично извользуемой) Samba, которая идет под GPL!