<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
  <channel>
    <language>ru</language>
    <title>LDAP</title>
    <description/>
    <link>https://tproger.ru/tag/ldap</link>
    <atom:link href="https://tproger.ru/tag/ldap/feed" rel="self" type="application/rss+xml"/>
    <lastBuildDate>Thu, 24 Sep 2026 00:51:57 GMT</lastBuildDate>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>12</sy:updateFrequency>
    <image>
      <title>LDAP</title>
      <link>https://tproger.ru</link>
      <url>https://tproger.ru/apple-touch-icon.png</url>
    </image>
    <item>
      <title>Как энергетика собирает ядро под требования КИИ</title>
      <link>https://tproger.ru/articles/kak-energetika-sobiraet-korporativnoe-yadro-pod-trebovaniya-kii-2</link>
      <comments>https://tproger.ru/articles/kak-energetika-sobiraet-korporativnoe-yadro-pod-trebovaniya-kii-2?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Виталий Попов]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/kak-energetika-sobiraet-korporativnoe-yadro-pod-trebovaniya-kii-2</guid>
      <description><![CDATA[<p>Как в энергетике строят корпоративное ИТ-ядро под требования КИИ: от сегментации и домена до dual-OS, fallback-сценариев и ОПЭ.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/kak-energetika-sobiraet-korporativnoe-yadro-pod-trebovaniya-kii-2">Как энергетика собирает ядро под требования КИИ</a>»</p>]]></description>
      <category><![CDATA[Архитектура ПО]]></category>
      <category><![CDATA[Информационная безопасность]]></category>
      <category><![CDATA[LDAP]]></category>
      <category><![CDATA[Инфраструктура]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 24 Mar 2026 08:35:02 GMT</pubDate>
      <content:encoded><![CDATA[<p>В энергетике ИТ-ландшафт проектируется от ограничений, а не от продуктов. Сначала – сегментация, изоляция, модель угроз. Потом – все остальное. Архитектура рождается из этих рамок. Отсюда ключевой вопрос: каким должно быть корпоративное ядро в компаниях с КИИ, где требования безопасности задают рамки всей архитектуры? Формальные инструкции здесь не работают – зато работает набор практик, который стабильно выдерживает пилоты и ОПЭ.</p><h2>Корпоративное ядро: как оно устроено</h2><p>Сразу важно оговориться: корпоративное ядро и КИИ-контуры – это разные среды с разными задачами. В технологических сегментах КИИ требования строже, а фокус смещен в сторону изоляции и максимального импортозамещения. Корпоративная среда, о которой мы и говорим, проще по функционалу и ориентирована на поддержку пользователей и управленческих процессов.</p><p>В зависимости от зрелости архитектуры и глубины легаси корпоративный сегмент может быть как жестко отделен от КИИ-контуров, так и существовать с ними в управляемой гибридной модели. В обоих случаях именно требования КИИ задают архитектурные рамки, в которых проектируется корпоративная среда</p><p>В корпоративном сегменте энергетики ядро состоит из набора базовых сервисов: каталог, почта, коммуникации, документооборот, файловый слой, рабочие места и защита. Его фундамент – доменная структура, часто на Alt Domain или RedADM (службы на базе Samba DC): эти решения без сюрпризов проходят проверки совместимости и корректно работают с Kerberos и LDAP.</p><p>В реальных проектах переход к новому домену почти всегда начинается с гибридного режима. Старый Active Directory продолжает хранить SID и привязки приложений – без trust-связей массовую миграцию просто не запустить. Так домен становится точкой опоры для всех остальных компонентов. Почта – один из первых сервисов в корпоративном сегменте, который начинает жить по доменной модели: учетные записи, группы, права. И чаще всего именно она на прикладном уровне первой замечает любые отклонения в каталоге.</p><p>Остальные коммуникации строятся по той же схеме: централизованная авторизация, согласованные журналы и стабильные узлы связи. От этой части инфраструктуры не ждут чего-то сверхестественного, только спокойной, предсказуемой работы под нагрузкой.</p><p>Документооборот и файловый сервис – отдельный слой. Для пользователя это привычные папки с доступом к документам, но под капотом здесь ролевая модель, оргструктура и строгие ACL. Когда включается централизованная модель прав, самодельные сетевые диски исчезают из контура, а файловый слой превращается в управляемую систему доступа.</p><p>На уровне ниже находится невидимый пласт сервисов, на которых держится все ядро: DNS/DHCP домена, репликация, политики и настройки безопасности. Ошибки в любом из них могут спровоцировать каскад проблем – от задержек авторизации до потери доступа у части пользователей. На такие сценарии и заточены внутренние ППИ/ПМИ каждого компонента. Сценарии отрабатывают вручную, фиксируют протоколы, закрывают замечания – и только после этого переходят к пилоту.</p><p>Все это – «серверная» часть ядра. Но самый сложный участок начинается там, где архитектура сталкивается с пользователями – на АРМ (рабочих станциях). Здесь требуется подключение к каталогу, перенос профилей, миграция данных, проверка приложений, контроль целостности и унификация конфигураций.</p><p>В корпоративном сегменте на практике применяются переходные схемы – гибридный режим домена и поэтапная миграция пользовательских сервисов. В КИИ-контуре такие компромиссы возможны далеко не всегда</p><p>Если каждый компьютер конфигурировать по-своему, стабильного поведения сотен рабочих мест не добиться. Поэтому рабочие станции собирают из стандартизированных образов – виртуальных или аппаратных.</p><p>В рамках такой стандартизации на пользовательском уровне и появляется частичный dual-OS: критичные приложения остаются в Windows, а пользовательская среда переезжает в Linux. Это самый безопасный способ пройти миграцию без остановки процессов.</p><p>Во всех компонентах ядра действует единое правило: никакой архитектурной импровизации. Инфраструктура должна быть предсказуемой. Иначе она не выдержит эксплуатацию в среде, где архитектура определяется требованиями КИИ</p><h2>Как выглядит внедрение на практике</h2><p>На проектах внедрение почти всегда проходит в три этапа.</p><ol><li>Прототипирование – создание в миниатюре будущей инфраструктуры и выявление несовместимостей.</li><li>Настройка паттернов – сборка образов, настройка групп, OU, профилей, fallback-логики.</li><li>Переходный период – введение dual-OS, выравнивание политик и подготовка к ОПЭ.</li></ol><p>Прототипирование занимает от трех до шести месяцев. На этом этапе всплывает все, что невозможно увидеть на этапе проектирования. Где-то рабочие станции не загружаются на новых образах без обновления BIOS. Где-то плоттеры, сканеры и терминалы требуют ручной настройки. Профили Windows при переносе в Linux теряют ярлыки, MIME-ассоциации и политики. Если корпоративный домен в гибридном режиме, любое расхождение по времени, сбой Kerberos или конфликт GPO могут вывести из строя авторизацию на половине контура.</p><p>После пилота начинается настройка паттернов – определяем, какие драйверы исключать из образа, как собирать профили, какие группы синхронизировать, какие параметры ядра уменьшают количество сбоев, как организовать корректный fallback.</p><p>Но часть задач паттернами не решить – слишком много рабочих мест держится на Windows-приложениях. Поэтому dual-OS закрепляется как рабочая норма в корпоративном контуре: пользовательский профиль — в Linux, технологические приложения — в Windows, а архитектура постепенно приводится к единому набору политик, профилей и прав.</p><p>Откат в этом контуре обязателен. Пользователь должен иметь возможность вернуться в привычную среду в любой момент. На практике команда стремится уложиться в 10–15 минут – иначе миграционный участок становится неуправляемым</p><p>Даже после перехода в ОПЭ двухслойная конфигурация сохраняется. Часть сервисов – на новой платформе, часть – на старой. Пока среды существуют параллельно, они должны быть синхронны. Расхождение в правах, политиках или репликации моментально ломает согласованность контуров – и превращается в локальный инцидент.</p><h2>Информационная безопасность как каркас архитектуры</h2><p>Эта архитектура не может существовать без четкой рамки ИБ. Причем ИБ здесь – не надстройка, а несущая конструкция. Она определяет, что допустимо в контуре, а что нет, и где проходят реальные границы риска.</p><p>Виртуализацию разрешают только там, где можно контролировать изоляцию гостевых систем. Каналы управления – только внутри защищенных сегментов. Требования к виртуализации опираются на ГОСТ 56938: разделение зон исполнения, защита потоков управления, никаких «черных ящиков» в обновлениях.</p><p>Внешние сетевые зависимости исключаются, если они не описаны в проекте и не находятся под контролем заказчика. Неконтролируемые каналы передачи данных запрещены. Поэтому к Kerberos, репликации и маршрутам авторизации относятся как к минному полю: любая двусмысленность – это уже риск.</p><p>Сегментация подчиняется тому же принципу. Рабочие станции, серверы и хранилища данных разделены так, чтобы сбой в одном контуре не влиял на другие. Отсюда и значительные затраты времени на проверку, отладку подсетей и синхронизацию политик.</p><p>С данными та же история – они требуют отдельного контура контроля. Кто имеет доступ, где лежат журналы, что мы считаем инцидентом – эти вопросы нельзя решать по остаточному принципу. Ответы на них должны быть зашиты в архитектуру подсистем с самого начала.</p><p>И все это не имело бы смысла без гарантированного восстановления: система должна уметь возвращать себя в рабочее состояние через резервные копии, откат и проверенные сценарии. Например, компания в финсекторе после отказа всей инфраструктуры, потери ЦОД должна заработать через 2 часа.</p><h2>Стандартизация через эксплуатацию</h2><p>Когда среду удается стабилизировать на первой площадке, возникает главный вопрос: можно ли повторить тот же результат без пересборки с нуля? В энергетике – можно.</p><p>Конечно же, у компаний в разных регионах – своя история, парк оборудования или глубина легаси. Но архитектурные требования одинаковые везде. Они и формируют единый «слепок» корпоративного ядра при сохранении изоляции КИИ-контуров: правила для каталога, почты, коммуникаций и подготовки рабочих мест.</p><p>Если система стабильно прошла ОПЭ на одной площадке, она, как правило, так же ведет себя и на других</p><p>В этот момент внедрение перестает быть разовым проектом и превращается в последовательный сценарий. Архитектуру не приходится пересобирать – запускается отлаженная цепочка шагов с заранее понятными точками риска и стабильности. А полевые практики – унифицированные образы, dual-OS, fallback-механизмы – закрепляются как формальные требования.</p><h2>Импортонезависимое ядро – основа цифровой устойчивости</h2><p>В корпоративном сегменте энергетики импортонезависимое ядро давно перестало быть вопросом выбора платформ или брендов. Оно формируется как совокупность эксплуатационных ограничений, в которых заранее определены допустимые сценарии работы, отказов и восстановления.</p><p>Ключевым критерием здесь становится не функциональная насыщенность и не гибкость, а управляемость среды. Архитектура считается состоятельной тогда, когда ее поведение предсказуемо при изменениях конфигурации, обновлениях и инцидентах — и не требует ручной донастройки на каждом участке.</p><p>Поэтому внедрение импортонезависимого ядра — это не проект по замене ИТ-ландшафта, а переход к фиксированной эксплуатационной модели. В ней требования информационной безопасности заложены в архитектуру изначально, а корпоративная среда рассматривается как управляемый контур, рассчитанный на долгую и стабильную работу, а не на постоянную реконфигурацию.</p>]]></content:encoded>
    </item>
    <item>
      <title>Подтвердите личность: Как устроена многофакторная аутентификация и зачем она нужна командам</title>
      <link>https://tproger.ru/articles/podtverdite-lichnost--kak-rabotaet-mnogofaktornaya-autentifikaciya-v-multifactor</link>
      <comments>https://tproger.ru/articles/podtverdite-lichnost--kak-rabotaet-mnogofaktornaya-autentifikaciya-v-multifactor?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Анна Ельцова]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/podtverdite-lichnost--kak-rabotaet-mnogofaktornaya-autentifikaciya-v-multifactor</guid>
      <description><![CDATA[<p>Пароли уязвимы: фишинг, брут-форс и утечки угрожают бизнесу. Многофакторная аутентификация (MFA) добавляет уровни защиты, используя несколько факторов для подтверждения личности. В статье разбираем, как MFA работает, почему она критична для удалённых команд и как её реализует платформа MULTIFACTOR.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/podtverdite-lichnost--kak-rabotaet-mnogofaktornaya-autentifikaciya-v-multifactor">Подтвердите личность: Как устроена многофакторная аутентификация и зачем она нужна командам</a>»</p>]]></description>
      <category><![CDATA[API]]></category>
      <category><![CDATA[Linux]]></category>
      <category><![CDATA[Android]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[Windows]]></category>
      <category><![CDATA[iOS]]></category>
      <category><![CDATA[Боты]]></category>
      <category><![CDATA[Telegram]]></category>
      <category><![CDATA[Windows Server]]></category>
      <category><![CDATA[CSR]]></category>
      <category><![CDATA[VMware]]></category>
      <category><![CDATA[Приложение]]></category>
      <category><![CDATA[Дата-центр]]></category>
      <category><![CDATA[Сервер]]></category>
      <category><![CDATA[LDAP]]></category>
      <category><![CDATA[Бизнес]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 26 May 2025 14:00:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Мы в эпохе цифровизации, а значит — пароли больше не могут служить единственной защитой корпоративных данных. Атаки вроде фишинга, brute-force и утечек паролей из баз данных ставят под угрозу конфиденциальность, приводят к финансовым убыткам и недоверию пользователей. Многофакторная аутентификация (MFA) решает эту проблему, сочетая несколько независимых способов подтверждения личности, и становится ключевым элементом безопасности в удаленных и гибридных командах.</p><p>Рассмотрим, что представляет собой MFA и как помогает избежать утечек.</p><h2>Проблемы с паролями и принципы MFA</h2><p>Несмотря на развитые технологии, простые пароли остаются уязвимыми. Фишинг обманывает пользователей через фальшивые сайты или имейлы, brute-force использует автоматизированный перебор комбинаций, а утечки происходят при взломе внешних сервисов, где пароли повторяются.</p><p>MFA противостоит этому, требуя не менее двух факторов аутентификации. Основные типы:</p><ul><li>То, что известно пользователю: пароль или PIN-код — наиболее распространенный, но и самый слабый фактор.</li><li>То, что есть у пользователя: устройство вроде смартфона, USB-токена или аппаратного ключа.</li><li>То, кем выступает пользователь: биометрия типа отпечатка пальца, распознавание лица или сканирование сетчатки.</li></ul><p>От двухфакторной аутентификации (2FA) MFA отличается гибкостью: 2FA обычно ограничивается паролем плюс одноразовым кодом (например, из SMS), в то время как MFA позволяет добавлять третий фактор для критических систем.</p><p>С MFA часто интегрируют связанные технологии. Единый вход (SSO) упрощает доступ: пользователь авторизуется один раз и получает права на несколько сервисов. Модель нулевого доверия (Zero Trust) проверяет каждый запрос заново, учитывает IP, время и устройство, независимо от источника. Вместе они создают многоуровневую защиту, идеальную для распределенных команд.</p><h2>Общие принципы работы MFA-систем</h2><p>MFA-системы обычно развертываются как облачные сервисы (SaaS) или on-premise решения, с акцентом на совместимость с существующими инфраструктурами. Они поддерживают протоколы вроде RADIUS, LDAP, SAML и OpenID Connect/OAuth, что позволяет интегрировать их с VPN, VDI, RDP, SSH, межсетевыми экранами (например, Check Point, Cisco, UserGate), облачными платформами (VMware, Huawei Cloud) и приложениями (G Suite, Salesforce).</p><p>При выборе MFA стоит обратить внимание на:</p><ul><li>Методы доставки факторов: SMS/звонки, push-уведомления в мобильных приложениях, боты в мессенджерах (например, Telegram), OTP-токены (аппаратные или программные), U2F/FIDO-ключи и биометрия. Разнообразие методов повышает удобство и адаптивность.</li><li>Политики доступа: Возможность задавать правила на основе IP, времени суток, дней недели или групп пользователей. Это помогает ограничить доступ, например, только из офисной сети или в рабочее время.</li><li>Инфраструктура и надежность: Размещение в сертифицированных дата-центрах с защитой от DDoS, высоким уровнем доступности (SLA не ниже 99.9%) и резервированием данных.</li><li>Интеграция и развертывание: Минимальные требования к аппаратным ресурсам (например, 4 ядра CPU и 4 ГБ RAM для агентов), открытый код для прозрачности и быстрая настройка (от нескольких часов).</li><li>Аудит и мониторинг: Журналы событий с фиксацией IP, страны, результатов аутентификации и алертами на подозрительную активность.</li><li>Самообслуживание: Порталы, где пользователи самостоятельно настраивают факторы или сбрасывают пароли.</li><li>API для кастомизации: Для встраивания MFA в собственные приложения, с поддержкой регистрации пользователей и генерации токенов.</li></ul><p>Важно учитывать конфиденциальность: системы должны маскировать чувствительные данные в уведомлениях и соответствовать регуляциям, по типу GDPR или российским законам о защите ПДн.</p><h2>MULTIFACTOR как пример MFA-решения</h2><p>В качестве практического примера можно рассмотреть российскую систему <a href="https://multifactor.ru/?utm_source=tproger&amp;utm_medium=article&amp;utm_campaign=sistema-mf">MULTIFACTOR</a>, которая применяется для защиты удалённых подключений — RDP, VPN, VDI и SSH.</p><p>Решение разворачивается в гибридной модели: часть компонентов работает в облаке, часть устанавливается у заказчика. Облачная часть расположена в российских дата-центрах (Selectel, LinxCloud), сертифицированных по стандартам PCI DSS и ISO 27001. В инфраструктуру встроена защита от DDoS-атак, SLA по доступности заявлен на уровне 99,99%, состояние сервисов можно отслеживать на публичной статус-странице.</p><p>Что требуется со стороны клиента:</p><ul><li>служба каталогов (Active Directory или аналог);</li><li>RADIUS-адаптер для обработки запросов;</li><li>портал самообслуживания для пользователей.</li></ul><p>Адаптер проверяет первый фактор (логин/пароль) локально, а второй передаёт в облако. Для работы необходима базовая конфигурация (4 ядра CPU, 4 ГБ RAM на Windows Server), а портал самообслуживания требует ещё меньше ресурсов. Ключевые компоненты системы доступны в открытом коде.</p><p>Интеграция занимает от нескольких часов: установка агентов и настройка по документации. Поддерживаются стандартные протоколы RADIUS, LDAP, SAML, OpenID Connect/OAuth, что позволяет встроить решение в большинство инфраструктур — файрволы (Check Point, Cisco, UserGate), облачные платформы (VMware, Huawei Cloud), VDI (Citrix, VMware Horizon), RDP/SSH, а также в приложения вроде G Suite, Salesforce и Slack.</p><p>Совместимость охватывает Windows (включая Outlook Web Access, Remote Desktop Gateway), Linux (SSH, PAM-модули, sudo), а также российские дистрибутивы (ALT Linux, Astra Linux, РЕД ОС). MULTIFACTOR внесён в реестр отечественного ПО, имеет лицензию ФСТЭК и может использоваться в проектах импортозамещения.</p><p>Методы аутентификации:</p><ul><li>мобильное приложение (iOS/Android) с push-уведомлениями и QR-регистрацией;</li><li>Telegram-бот;</li><li>SMS и телефонные звонки;</li><li>OTP-токены (аппаратные и программные, включая Rutoken и ЯКлюч);</li><li>U2F/FIDO-ключи;</li><li>биометрия (Face ID, отпечаток пальца) — при этом приватные ключи остаются на устройстве.</li></ul><p>Политики доступа можно задавать так: по IP-диапазону, времени суток, дню недели или группам пользователей. Внедрён единый вход (SSO), портал самообслуживания для настройки 2FA и сброса паролей, а также журнал событий с алертами на подозрительные попытки входа.</p><p>Для разработчиков предусмотрен REST API — регистрация пользователей, вызовы на аутентификацию, интеграция MFA в сторонние продукты. Это позволяет адаптировать систему под SaaS-сценарии и корпоративные приложения.</p><p>Кейс MULTIFACTOR демонстрирует, как можно построить MFA с поддержкой разных факторов, протоколов и сценариев использования в российском контексте. Перед внедрением важно протестировать совместимость с инфраструктурой и оценить удобство для сотрудников — от этого зависит реальная эффективность защиты.</p><h2>Рекомендации по выбору и внедрению MFA</h2><p>При внедрении MFA оценивайте совместимость с вашей инфраструктурой, удобство для пользователей и стоимость владения. Начните с анализа рисков: определите критичные ресурсы (серверы, облачные приложения) и протестируйте решение в пилотном режиме. Обратите внимание на поддержку биометрии и токенов для сценариев с высокой безопасностью, а также на инструменты аудита для оперативного реагирования на инциденты.</p><p>MFA — не панацея, но в сочетании с Zero Trust и SSO значительно повышает устойчивость к атакам. Выбирайте системы с гибкими политиками и открытой документацией, чтобы минимизировать зависимость от вендора и облегчить масштабирование.</p>]]></content:encoded>
    </item>
    <item>
      <title>Разбираем ArgoCD: автоматизированный деплой в Kubernetes</title>
      <link>https://tproger.ru/articles/razbiraem-argocd--avtomatizirovannyj-deploj-v-kubernetes</link>
      <comments>https://tproger.ru/articles/razbiraem-argocd--avtomatizirovannyj-deploj-v-kubernetes?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Вадим Егорцев]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/razbiraem-argocd--avtomatizirovannyj-deploj-v-kubernetes</guid>
      <description><![CDATA[<p>Что такое ArgoCD. Показываем основы работы с ArgoCD. Рассматриваем пошаговую инструкцию и основные нюансы инструмента ✔ Tproger</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/razbiraem-argocd--avtomatizirovannyj-deploj-v-kubernetes">Разбираем ArgoCD: автоматизированный деплой в Kubernetes</a>»</p>]]></description>
      <category><![CDATA[Тестирование]]></category>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[Git]]></category>
      <category><![CDATA[DevOps]]></category>
      <category><![CDATA[Slack]]></category>
      <category><![CDATA[Работа]]></category>
      <category><![CDATA[GitHub]]></category>
      <category><![CDATA[Боты]]></category>
      <category><![CDATA[GitLab]]></category>
      <category><![CDATA[Сервисы]]></category>
      <category><![CDATA[Docker]]></category>
      <category><![CDATA[Сервер]]></category>
      <category><![CDATA[LDAP]]></category>
      <category><![CDATA[Kubernetes]]></category>
      <category><![CDATA[CI/CD]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 13 May 2025 10:00:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>Представьте ситуацию: вы внесли изменения в код, отправили их в Git. А дальше?</p><p>Загибайте пальцы:</p><ol><li>Собрать Docker-образ.</li><li>Обновить конфигурацию в Kubernetes.</li><li>Применить изменения командами kubectl.</li><li>Проверить, что все работает.</li><li>Если не работает — откатить изменения, исправить, повторить.</li></ol><p>И так каждый раз. А если на проекте не только тестовая среда, но и предпродакш, продакшн? А если команда из 10 разработчиков? Кошмар!</p><p>Инструмент Argo CD ускоряет развертывание приложений, синхронизирует Git-репозиторий с фактическим состоянием в кластере. В итоге у разработчика больше времени на написание кода и меньше проблем с деплоем. Компания тоже выигрывает — получает более быстрые и надежные релизы.</p><p><i>После прочтения статьи вы сможете самостоятельно настроить деплой Kubernetes с помощью ArgoCD и применить эти знания в собственных проектах.</i></p><p>ArgoCD раскрывается лучше, когда уже понятен весь путь до <a href="https://tproger.ru/articles/chto-takoe-gitops-prostymi-slovami--git-kak-istochnik-istiny-dlya-d">GitOps</a>: контейнеры, CI/CD, Kubernetes, Helm, наблюдаемость и безопасность. Общий контекст собран в статье <a href="https://tproger.ru/articles/roadmap-devops-inzhenera-v-2026-godu--chto-uchit-i-v-kakom-poryadke">Roadmap DevOps-инженера в 2026 году</a>, а сам подход отдельно разобран в материале <a href="https://tproger.ru/articles/chto-takoe-gitops-prostymi-slovami--git-kak-istochnik-istiny-dlya-d">что такое GitOps простыми словами</a>.</p><h2>Введение в ArgoCD: возможности и преимущества</h2><h3>Git коммитишь — кластер обновляется</h3><p>Вася написал новую фичу и отправил ее в Git. Через 2 минуты функция уже работает в тестовой среде, но с багом. Вася исправляет код, делает коммит, — и через 2 минуты исправление снова в тестовой среде.</p><p>Когда все готово к релизу, девопс применяет изменения в ветке, и ArgoCD автоматически обновляет продакшн.</p><p><b>Без ArgoCD</b>: 30+ минут ручной работы на каждый деплой, высокая вероятность ошибки.</p><p><b>С ArgoCD</b>: 2 минуты автоматической работы, минимальный риск ошибок.</p><p>Изменили код, отправили в Git — работа сделана. Платформа GitOps без вашего участия обнаружит изменения и обновит приложение в кластере.</p><h3>Интерактивная панель управления</h3><p>В Argo CD видно все компоненты приложения — деплойменты, сервисы, конфигмапы — и их состояние. В один клик можно посмотреть историю синхронизаций, детали развертывания и логи.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-04-24/8330a415-6bcb-498b-b712-c28217978479.jpg" alt="" /></figure><p>ArgoCD — это быстрый доступ к событиям, управление средами и кластерами с одной панели, мгновенный откат к предыдущей версии. Также доступна проверка изменений перед их применением.</p><h3>Универсальный подход к конфигурациям</h3><p><b>Команда применяет Helm для управления зависимостями? </b></p><p>— ArgoCD интегрируется с ним напрямую.</p><p><b>Предпочитаете Kustomize для настройки под разные среды?</b></p><p>— ArgoCD распознает эти конфигурации автоматически.</p><p><b>Используете стандартные YAML-манифесты?</b></p><p>— Они тоже поддерживаются без дополнительной настройки.</p><h3>Безопасный доступ для команды любого размера</h3><p>Можно разделить доступ между участниками проекта с точностью до отдельных приложений и действий:</p><ul><li>Девопсы управляют всеми развертываниями.</li><li>Разработчики получают права на просмотр логов и статуса своих сервисов.</li><li>Тестировщики видят статус только тестовых сред.</li></ul><p>Права разграничиваются по проектам, именам и типам ресурсов. Например, команда фронтенда видит только свои сервисы, бэкенд-разработчики — только свои.</p><p>Система интегрируется с корпоративными провайдерами аутентификации через OIDC, LDAP, SAML. Каждый сотрудник сможет использовать персональные учетные данные для входа.</p><h2>Установка и настройка Argo CD</h2><p>ArgoCD устанавливается в действующий кластер Kubernetes с помощью стандартного набора манифестов. Перед установкой потребуются: настроенный <a href="https://kubernetes.io/docs/tasks/tools/">kubectl</a>, файл <a href="https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/">kubeconfig</a> и работающий CoreDNS.</p><p>Команды создают пространство имен argocd и устанавливают компоненты: серверы приложений, репозиториев и другие службы.</p><p>Доступ к ArgoCD осуществляется через CLI и веб-интерфейс.</p><p>CLI устанавливается из официальных релизов:</p><ul><li><i>brew install argocd</i> — для macOS, Linux и WSL.</li><li><a href="https://github.com/argoproj/argo-cd/releases/latest">бинарный файл</a> — для Windows.</li></ul><p>По умолчанию сервер ArgoCD не имеет внешнего IP. Это значит, что веб-интерфейс и API ArgoCD доступны только из кластера Kubernetes.</p><p>Есть три способа настройки доступа:</p><p><b>1. Изменение типа сервиса на LoadBalancer</b>:</p><p><b>2. Настройка Ingress-ресурс для маршрутизации трафика через входной контроллер кластера</b>.</p><p><b>3. Использование kubectl port-forward для временного доступа</b>:</p><p>Начальный пароль администратора генерируется автоматически и хранится в секрете argocd-initial-admin-secret:</p><p>Вход в систему через CLI:</p><p>После первого входа необходимо сменить пароль:</p><p>Секрет argocd-initial-admin-secret следует удалить после смены пароля, так как он содержит пароль в открытом виде:</p><p>Для веб-интерфейса используется тот же адрес и учетные данные, что и для CLI.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-04-24/98ded9fb-d864-431d-80b8-e2e5a0a64a83.jpg" alt="" /></figure><p>Регистрация кластера (необходима только для внешних кластеров):</p><p>При добавлении внешнего кластера ArgoCD создает сервисный аккаунт argocd-manager в пространстве имен kube-system и выдает ему права администратора. При работе с тем же кластером, где установлен Argo CD, используется адрес https://kubernetes.default.svc.</p><p>Создание приложения:</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-04-24/f5979198-7cdf-474b-aec0-9e1a15a6a57a.jpg" alt="" /></figure><p>То же самое через веб-интерфейс:</p><ol><li>Нажать кнопку «New App».</li><li>Заполнить форму с указанием имени, Git-репозитория, пути к манифестам.</li><li>Выбрать целевой кластер и пространство имен.</li><li>Нажать «Create».</li></ol><p>После создания приложение находится в состоянии «OutOfSync». Для развертывания ресурсов в кластер:</p><p>Через CLI:</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-04-24/f3ec0f6c-476e-4e3c-9e09-26deda8fcef5.jpg" alt="" /></figure><p>Через веб-интерфейс:</p><ol><li>Нажать «Sync» для нужного приложения.</li><li>В открывшейся панели выбрать «Synchronize».</li></ol><p>Для автоматической синхронизации при изменениях в Git-репозитории используется флаг –sync-policy automatic:</p><p>При загрузке манифестов из репозитория Арго автоматически определяет формат и применяет соответствующий инструмент для развертывания.</p><h2>Основные команды и работа с CLI</h2><p>Рассмотрим 4 базовые команды:</p><ul><li>Добавление нового приложения.</li><li>Проверка состояния развертывания.</li><li>Автоматическая и ручная синхронизация.</li><li>Откат изменений.</li></ul><h3>Добавление нового приложения</h3><p>Команда <b>argocd app create</b> создает приложение в Argo CD, связывая Git-репозиторий с целевым кластером Kubernetes.</p><p>Нужно указать имя приложения, источник манифестов и целевую среду:</p><p>Альтернативой ручному созданию приложения служит определение через YAML-файл:</p><h3>Проверка состояния развертывания</h3><p>Команда <b>argocd app get</b> отображает текущее состояние приложения, включая статус синхронизации, ревизию Git и состояние ресурсов:</p><p>Для вывода информации о ресурсах приложения используется флаг -o wide:</p><p>Можно отслеживать состояние ресурсов во время синхронизации:</p><p>Еще ArgoCD сохраняет историю синхронизаций приложения:</p><h3>Автоматическая и ручная синхронизация</h3><p>Команда argocd app sync применяет изменения, обнаруженные в Git-репозитории, к кластеру Kubernetes:</p><p>При ручной синхронизации Argo CD:</p><ol><li>Скачивает манифесты из Git.</li><li>Формирует план изменений.</li><li>Применяет его к кластеру.</li><li>Отслеживает состояние до завершения развертывания.</li></ol><p>Синхронизация определенной ревизии Git:</p><p>Принудительная синхронизация:</p><p>Обновление только определенных ресурсов:</p><h3>Откат изменений</h3><p>Команда <b>argocd app rollback</b> отменяет последнюю синхронизацию и возвращает приложение к предыдущему стабильному состоянию:</p><p>По умолчанию откат выполняется на предыдущую успешную ревизию. Для отката к конкретной ревизии требуется указать ее ID:</p><p>где 5 — номер ревизии из истории.</p><p>При откате не происходит изменений в Git-репозитории — это временное изменение, направленное на быстрое восстановление работоспособности.</p><p>После отката приложение перейдет в состояние «OutOfSync», поскольку Git-репозиторий по-прежнему содержит новую версию.</p><p>Для долгосрочного решения после отката нужно:</p><ol><li>Исправить ошибки в манифестах.</li><li>Отправить исправления в Git.</li><li>Синхронизировать приложение.</li></ol><h2>Работа с ArgoCD в реальных проектах</h2><p>ArgoCD дополняет классические CI/CD-системы, разделяя ответственность за процесс доставки. CI-системы отвечают за сборку кода и создание артефактов, ArgoCD берет на себя развертывание в Kubernetes.</p><p>В GitHub Actions пайплайн компилирует приложение, собирает Docker-образ, обновляет манифест с новым тегом образа и отправляет изменения в Git. ArgoCD замечает изменения в репозитории и обновляет приложение в кластере.</p><p><a href="https://tproger.ru/articles/integraciya-ci-cd-processov-s-ispolzovaniem-github-actions">Подробнее про интеграцию CI/CD с GitHub Actions</a></p><p>GitLab CI/CD использует подобную схему — сначала тестирование и сборка, затем запись актуальных версий в манифесты. CI-пайплайн завершается, как только изменения попадают в Git. Остальную работу делает ArgoCD.</p><p><a href="https://tproger.ru/articles/razvorachivaem-instrumenty-ci-cd--praktiki-ot-devops-inzhenerov">Подробнее про инструменты CI/CD на практике от DevOps-инженеров</a></p><p>Jenkins требует дополнительной настройки для интеграции с ArgoCD. Возможна работа через REST API ArgoCD или через обновление манифестов в Git-репозитории. Для командной строки Argo CD создают отдельные сервисные аккаунты с ограниченными правами.</p><h3>Настройка уведомлений</h3><p>Уведомления Argo CD информируют команду о состоянии приложений. Система уведомлений настраивается в ConfigMap argocd-notifications-cm:</p><ul><li>Для <b>Slack </b>нужно определять шаблоны сообщений и триггеры событий. Соединение настраивается через токен бота. Приложения активируют уведомления через аннотации.</li><li><b>Microsoft Teams</b> работает через веб-хуки. Каждый канал получает собственный URL-адрес, который ArgoCD использует для отправки сообщений.</li><li><b>Email-оповещения</b> требуют настройки SMTP-сервера. ArgoCD поддерживает TLS-шифрование и аутентификацию. Письма содержат детальную информацию о событиях и могут включать ссылки для быстрого доступа.</li></ul><p>Каждое приложение самостоятельно подписывается на нужный набор событий: ошибки синхронизации, успешные деплои, проблемы с доступностью.</p><h3>Управление секретами</h3><p>Стандартная модель <a href="https://tproger.ru/articles/chto-takoe-gitops-prostymi-slovami--git-kak-istochnik-istiny-dlya-d">GitOps</a> требует хранения всех манифестов в Git, что небезопасно.</p><p>Популярные решения для управления секретами:</p><ul><li><b>Sealed Secrets</b>. Публичный ключ используется для шифрования секретов перед сохранением в Git. Контроллер в кластере расшифровывает их закрытым ключом и создает стандартные Secret-объекты.</li><li><a href="https://tproger.ru/articles/nachalo-raboty-s-hashicorp-vault-i-sozdanie-pervogo-sekreta">HashiCorp Vault</a>. Манифесты содержат переменные, которые заполняются значениями из Vault в момент синхронизации. Секреты никогда не попадают в Git-репозиторий.</li></ul><h2>3 лучшие практики использования ArgoCD</h2><h3>1. Организация репозитория</h3><p>Структура Git-репозитория влияет на эффективность работы с Argo CD. Рассмотрим два основных подхода: «моно» и «мульти» модель.</p><ul><li><b>Монорепозиторий </b>хранит все манифесты в одном месте. Каталоги первого уровня разделяют приложения и конфигурацию среды. Преимущество — целостная структура и возможность внесения согласованных изменений.</li><li><b>Мультирепозиторная модель</b> разделяет компоненты по нескольким репозиториям. Каждая команда управляет своим набором приложений. Конфигурации для разных окружений хранятся отдельно. Этот подход четко разграничивает ответственность.</li></ul><p><a href="https://argo-cd.readthedocs.io/en/latest/operator-manual/cluster-bootstrapping/">App of Apps</a> упрощает управление множеством приложений через главное приложение ArgoCD. Один манифест верхнего уровня содержит определения для всех приложений, что упрощает развертывание однотипной инфраструктуры.</p><h3>2. Использование Kustomize и Helm</h3><p><b>Kustomize</b> накладывает патчи на базовые манифесты. Конфигурация определяет основные параметры приложения, оверлеи содержат изменения для конкретных сред.</p><p><b>Helm </b>применяет шаблонизацию для создания манифестов. Чарты содержат шаблоны с переменными, значения которых задаются в файлах values.yaml. Для каждого окружения создается собственный файл значений.</p><p>Можно комбинировать оба инструмента. Helm создает базовые манифесты, а Kustomize настраивает их под конкретные требования.</p><h3>3. Мониторинг приложений и настройка alert-уведомлений</h3><p>Арго собирает метрики синхронизации, состояния здоровья, времени развертывания. Данные передаются в Prometheus для создания дашбордов в Grafana и настройки алертов.</p><figure><img src="https://media.tproger.ru/user-uploads/105601/2025-04-24/7398a2b4-8873-4e20-a1b7-29dba22c13f6.png" alt="" /><figcaption>Интерфейс Grafana</figcaption></figure><p>Система уведомлений информирует команды о критичных изменениях: ошибках синхронизации, деградации здоровья, успешных развертываниях. Алерты отправляются в Slack, Teams, Email через настраиваемые триггеры и шаблоны.</p><h2>6 популярных ошибок при работе с ArgoCD</h2><p><b>Ошибка аутентификации по SSH-ключу</b>. ArgoCD выдает «Permission denied (publickey)» при попытке доступа к репозиторию. Причина — неправильно настроенный или отсутствующий SSH-ключ.</p><p>Решение:</p><ul><li>Проверить корректность SSH-ключа.</li><li>Убедиться, что в репозитории ключ добавлен как deploy key с правами чтения.</li><li>Проверить формат ключа (должен начинаться с —–BEGIN OPENSSH PRIVATE KEY—–).</li></ul><p><b>Отсутствие прав доступа к репозиторию</b>. Даже при корректных учетных данных пользователь может не иметь прав чтения.</p><p>Решение:</p><ul><li>Проверить права доступа пользователя или deploy key к репозиторию.</li><li>Убедиться, что для организации не включено SSO или 2-FA.</li></ul><p><b>Несоответствие версий Helm</b>. Argo CD использует встроенную версию Helm, которая может отличаться от локальной.</p><p>Решение:</p><ul><li>Проверить версию Helm в Argo CD через argocd admin helm version.</li><li>Настроить кастомную версию Helm через конфигурацию argocd-cm.</li></ul><p><b>Отсутствующие значения в values.yaml</b>. Ошибка «Error: execution error at line X» с указанием на неопределенное значение.</p><p>Решение:</p><ul><li>Убедиться, что все required значения указаны в файле values или через флаги –set</li><li>Использовать условные блоки для необязательных параметров</li></ul><p>Одна из основных проблем в GitOps-модели — расхождение между фактическим состоянием кластера и описанием в Git.</p><p><b>Отказ при синхронизации из-за drifts</b>. ArgoCD отображает ресурс как «OutOfSync» и отказывается выполнять синхронизацию.</p><p>Решение:</p><ul><li>Использовать флаг –force при синхронизации для перезаписи изменений.</li><li>Включить опцию автоматического самовосстановления (self-heal) для критичных ресурсов</li></ul><p><b>Ошибка Update не разрешена для некоторых полей</b>. Kubernetes запрещает изменение определенных полей после создания ресурса.</p><p>Решение:</p><ul><li>Добавить аннотацию argocd.argoproj.io/sync-options: Replace=true</li></ul><h2>Подведем итоги</h2><p><b>Поздравляем! </b>Вы познакомились с инструментом, который спасает от ручных деплоев!</p><p>В мире, где все постоянно ломается, Argo CD — тот самый друг, который поможет собрать приложение, пока вы пьете кофе и притворяетесь, что все так и задумано.</p><p>Если после внедрения ArgoCD у вас внезапно появилось свободное время — не пугайтесь, это нормально. Используйте его, чтобы наконец-то прочитать те 348 вкладок про Kubernetes, которые вы открыли 2 года назад. А еще можете использовать его, чтобы почитать <a href="https://t.me/+c6lPaQBXLvE4YmMy">наш тг-канал</a>, найдете больше советов!</p>]]></content:encoded>
    </item>
    <item>
      <title>MultiDirectory: российская альтернатива Active Directory с 2FA, SSO и совместимостью с AD</title>
      <link>https://tproger.ru/articles/multidirectory-rossijskaya-alternativa-active-directory-s-2fa-sso-i-sovmestimostyu-s-ad</link>
      <comments>https://tproger.ru/articles/multidirectory-rossijskaya-alternativa-active-directory-s-2fa-sso-i-sovmestimostyu-s-ad?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Анна Ельцова]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/multidirectory-rossijskaya-alternativa-active-directory-s-2fa-sso-i-sovmestimostyu-s-ad</guid>
      <description><![CDATA[<p>MultiDirectory от компании МУЛЬТИФАКТОР — современная служба каталогов для централизованного хранения данных и управления информацией о пользователях, группах и сетевых ресурсах. Она помогает российским компаниям администрировать инфраструктуру с помощью удобных инструментов и гибких механизмов для поиска и фильтрации данных. Рассказываем об особенностях и функционале MultiDirectory.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/multidirectory-rossijskaya-alternativa-active-directory-s-2fa-sso-i-sovmestimostyu-s-ad">MultiDirectory: российская альтернатива Active Directory с 2FA, SSO и совместимостью с AD</a>»</p>]]></description>
      <category><![CDATA[Java]]></category>
      <category><![CDATA[Linux]]></category>
      <category><![CDATA[Инструменты]]></category>
      <category><![CDATA[Безопасность]]></category>
      <category><![CDATA[Python]]></category>
      <category><![CDATA[SQL]]></category>
      <category><![CDATA[Windows]]></category>
      <category><![CDATA[Microsoft]]></category>
      <category><![CDATA[Базы данных]]></category>
      <category><![CDATA[LDAP]]></category>
      <category><![CDATA[PostgreSQL]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Mon, 03 Mar 2025 14:00:03 GMT</pubDate>
      <content:encoded><![CDATA[<p>К корпоративным сетям подключены тысячи пользователей и устройств, и без служб каталогов у сотрудников будут теряться доступы к серверам и сервисам, а права не будут выдаваться в принципе. Самая популярная служба LDAP-каталогов на рынке — Microsoft Active Directory. Она долго оставалась стандартом, но из-за ограничений на зарубежное ПО многим компаниям приходится искать альтернативу, плюс она использует устаревшие протоколы, которые небезопасны.</p><p>MultiDirectory, разработанная компанией МУЛЬТИФАКТОР — российская служба каталогов с открытым кодом, в которой используется тот же набор атрибутов, что и в AD — это упрощает интеграцию с различными системами. Она поддерживает Kerberos, LDAP, SSO, двухфакторную аутентификацию и легко интегрируется с текущей IT-инфраструктурой. В статье расскажем:</p><ul><li>чем служба каталогов MultiDirectory отличается от AD и других систем;</li><li>как она помогает управлять доступами и безопасностью в корпоративной сети;</li><li>какие функции упрощают администрирование и защиту данных.</li></ul><h2>Что такое службы каталогов и как они работают</h2><p>Служба каталогов — это база данных пользователей, групп и устройств, которая управляет их доступами в корпоративной сети. Учетные данные сотрудников хранятся централизованно, поэтому админам не нужно вручную раздавать права каждому сотруднику и следить, кто к чему подключается. Система автоматически проверяет учетные данные и позволяет администраторам управлять доступом к сервисам, добавляя пользователей в нужные группы. А уже сами сервисы, опираясь на эти группы, выдают пользователям нужные права.</p><p>Сотрудник входит в систему — служба каталогов проверяет его логин и пароль. Для этого используются протоколы аутентификации, такие как LDAP или Kerberos. MultiDirectory поддерживает Kerberos, поэтому пользователям не нужно вводить пароли повторно: система автоматически подтверждает их личность.</p><p>Вся эта информация хранится в иерархической или реляционной структуре, которая организована по объектам: пользователи, группы, устройства и так далее. Когда администратор меняет пароль пользователя в службе каталогов, это затрагивает все системы, которые используют каталог для аутентификации через LDAP или Kerberos, но при этом изменения в сами системы не вносятся. Пользователь также может самостоятельно сменить пароль через программу, в которой он работает, а она сама отправит запрос в каталог и обновит данные через протокол LDAP или Kerberos.</p><p>А если какой-то сервер выйдет из строя, в службах каталогов используется механизм репликации: копии базы данных хранятся на нескольких серверах — так данные будут доступны всегда. Плюс система автоматически переключится на резервный сервер, и пользователи этого даже не заметят.</p><h2>Какие есть службы каталогов</h2><p>Вот наиболее популярные решения:</p><ul><li>Microsoft Active Directory. Он интегрируется с Windows Server и поддерживает протокол LDAP и механизм доменов.</li><li>OpenLDAP. Он используется в UNIX- и Linux-системах, подходит для опенсорсных систем. Но это только реализация LDAP — у него нет встроенного Kerberos, DNS, DHCP и так далее.</li><li>Apache Directory. Java-реализация службы каталогов, поддерживающая LDAP и другие протоколы, часто используется в кроссплатформенных средах.</li></ul><p>Зарубежные Open-Source-решения не поддерживаются официально либо требуют значительных затрат на локальную интеграцию и поддержку — это создаёт дополнительные риски для бизнеса.</p><p>В моменте, когда компании ищут замену Active Directory, они сталкиваются с проблемами:</p><ul><li>Не все решения поддерживают 2FA для Kerberos и совместимы с текущей инфраструктурой.</li><li>Сложный перенос учётных записей пользователей.</li><li>Не хватает встроенной двухфакторной аутентификации.</li></ul><p>MultiDirectory имитирует работу AD, поэтому системы, в которых раньше была AD, можно перенастроить на MultiDirectory без изменений в работе — они будут думать, что всё так же работают с AD.</p><h2>Основные технические характеристики MultiDirectory</h2><p>MultiDirectory работает по трёхзвенной архитектуре: сервер каталогов, репликация данных и система аутентификации. Это позволяет масштабировать систему без простоев, автоматически синхронизировать данные между серверами и минимизировать риски отказов.</p><p>Опенсорсный исходный код MultiDirectory написан на Python — это дает возможность гибкой настройки и контроля на отсутствие закладок. Код можно бесплатно использовать и предлагать исправления. Развёртывание происходит через Docker, что упрощает установку: система запускается на любом сервере с поддержкой контейнеров, без сложных зависимостей и долгой настройки.</p><p>Более того, в отличие от обычных служб каталогов, MultiDirectory хранит данные в базе Postgres. Поэтому репликация и бэкапирование настраиваются через саму СУБД или внешние инструменты, а не самой службой каталогов.</p><h2>Функциональные возможности и простая миграция</h2><p>MultiDirectory позволяет плавно «переехать» с Active Directory, а еще в ней есть поддержка 2FA, SSO и централизованное управление учетными записями. Рассказываем об этих функциях ниже.</p><h3>Централизованное управление учётными записями</h3><p>Администраторы могут управлять учётными записями пользователей и правами через открытый API или вручную с помощью понятного веб-интерфейса. Также у них есть возможность создавать, изменять и удалять учётки и разграничивать права пользователей.</p><p>Доступ пользователей настраивается через группы и роли:</p><ul><li>Domain Admins — администраторы с полными правами</li><li>Read Only — пользователи, которые могут только просматривать данные</li><li>Domain Users — пользователи, у которых есть доступ только к своим учетным записям</li></ul><h3>Надежность, безопасность и 2FA</h3><p>Хэши паролей хранятся в базе данных. А если нужно дополнительное шифрование, можно воспользоваться наложенными средствами защиты или встроенными функциями PostgreSQL. Для аутентификации используется Kerberos — протокол, реализация которого не предполагает передачу пароля по каналам связи. Это обеспечивает гораздо более высокий уровень безопасности по сравнению с тем же NTLM.</p><p>Двухфакторная аутентификация в MultiDirectory работает для нескольких интерфейсов: Admin API, LDAP и Kerberos. Каждый из них может быть защищен с помощью 2FA, а правила его использования настраиваются через политики безопасности.</p><ol><li>Admin API (HTTP) поддерживает OTP или Push-уведомления.</li><li>LDAP также работает с OTP или Push.</li><li>Kerberos поддерживает только Push.</li></ol><p>Если аутентификация происходит через Kerberos, после успешного подтверждения система выдает пользователю тикет доступа.</p><figure><img src="https://media.tproger.ru/user-uploads/101078/2025-02-25/90e556de-e79b-4652-a25e-9e9929b9bef1.png" alt="" /></figure><p>2FA снижает риск компрометации аккаунтов, даже если основной пароль утёк.</p><p>MULTIFACTOR — 2FA-система того же разработчика — интегрирована с MultiDirectory, поэтому настройка двухфакторной аутентификации не требует установки дополнительных адаптеров.</p><h3>Режим Bypass</h3><p>Если облачный сервис MULTIFACTOR временно недоступен, в MultiDirectory автоматически включается режим Bypass. В зависимости от настроек можно разрешить или запретить вход в систему без 2FA.</p><p>Настройки режима позволяют:</p><ul><li>Разрешить вход без 2FA в случае сбоя, чтобы бизнес-процессы не останавливались.</li><li>Полностью запретить авторизацию при отсутствии двухфакторной проверки — если безопасность важнее доступности.</li></ul><h3>Поддержка DNS</h3><p>MultiDirectory интегрируется с Bind9 и позволяет управлять всеми типами записей зоны через веб-интерфейс. При настройке DNS автоматически создаются необходимые записи для Kerberos и LDAP.</p><h3>Быстрая авторизация с Single Sign-On (SSO)</h3><p>Технология единого входа (SSO) позволяет пользователям вводить пароль только один раз — дальше система автоматически авторизует их в корпоративной почте, CRM, облачных сервисах и других внутренних приложениях.</p><p>В чем плюсы:</p><ul><li>Сотрудники не тратят время на постоянный ввод паролей.</li><li>IT-отделу не приходится восстанавливать доступ к забытым учетным записям.</li><li>Снижается риск утечек паролей.</li></ul><h2>Заключение</h2><p>MultiDirectory — это российская альтернатива AD с поддержкой 2FA, SSO и централизованного управления.</p><p>Задачи, которые решает MultiDirectory:</p><ul><li>централизованное управление учетными записями, компьютерами группами;</li><li>единая точка идентификации, аутентификации и авторизации;</li><li>поддержка современных стандартов безопасности;</li><li>управление DNS-записями через Bind9</li><li>гибкая интеграция с внешними системами.</li></ul><p>Продукт уже работает в корпоративных средах, а в 2025 году разработчики планируют регистрацию в реестре отечественного ПО и выпуск Enterprise-версии с расширенными возможностями. В ней появятся:</p><ul><li>поддержка доверия доменов;</li><li>дополнительные методы защиты;</li><li>DHCP-сервер;</li><li>гранулированная настройка доступа;</li><li>делегирование полномочий;</li><li>интерфейс для логов;</li><li>журнал событий;</li><li>и многое другое.</li></ul>]]></content:encoded>
    </item>
    <item>
      <title>OpenShift 4 — добавление LDAP провайдера и автоматическая синхронизация групп</title>
      <link>https://tproger.ru/articles/openshift-4-dobavlenie-ldap-provajdera-i-avtomaticheskaja-sinhronizacija-grupp</link>
      <comments>https://tproger.ru/articles/openshift-4-dobavlenie-ldap-provajdera-i-avtomaticheskaja-sinhronizacija-grupp?scrollTo=tproger-comments</comments>
      <dc:creator><![CDATA[Василий Кулаженков]]></dc:creator>
      <guid isPermaLink="true">https://tproger.ru/articles/openshift-4-dobavlenie-ldap-provajdera-i-avtomaticheskaja-sinhronizacija-grupp</guid>
      <description><![CDATA[<p>В статье расскажу, как можно настроить LDAP в качестве провайдера для кластера Openshift 4. И объясню, почему выбрал этот протокол.</p><p>— Читать дальше «<a rel="follow" href="https://tproger.ru/articles/openshift-4-dobavlenie-ldap-provajdera-i-avtomaticheskaja-sinhronizacija-grupp">OpenShift 4 — добавление LDAP провайдера и автоматическая синхронизация групп</a>»</p>]]></description>
      <category><![CDATA[Пост пользователя]]></category>
      <category><![CDATA[LDAP]]></category>
      <category><![CDATA[Openshift]]></category>
      <category><![CDATA[Статьи]]></category>
      <slash:comments>0</slash:comments>
      <pubDate>Tue, 03 Aug 2021 09:18:31 GMT</pubDate>
      <content:encoded><![CDATA[<p>В этом руководстве я объясню, как можно настроить LDAP в качестве провайдера для кластера Openshift 4. Это позволит пользователям входить в OpenShift со своей учётной записью LDAP. Также расскажу, почему именно LDAP. Итак, приступим.</p><h2>Почему LDAP?</h2><p>Зачем использовать LDAP, когда для OpenShift доступны другие варианты: HTPasswd, Basic Auth, Github, Keystone? LDAP — это протокол открытого стандарта, известный своей лёгкостью, безопасностью и зрелостью, но все ещё развивающийся. Обычно он используется для обмена информацией о пользователях, системе, сети и услугах.  Представьте его как дерево каталогов, в котором вы можно искать сверху вниз и между самими каталогами. Также мы LDAP можно использовать в инфраструктуре, как единую точку для управления доступами к ресурсам.</p><p>Далее будем отталкиваться от того, что в инфраструктуре уже есть LDAP.</p><p>Добавим отдельную группу <b>openshift</b> и пользователя <b>srv_acct_ocp</b>. С помощью ldapsearch проверим есть ли связь между LDAP и master нодой OpenShift cluster — например, с помощью команды ниже. Она создаёт связь с сервером LDAP с использованием предоставленного bindDN (флаг -D) и пароля (флаг -W):</p><p>Если все параметры верны, будет возвращен вывод LDIF, содержащий информацию на сервере.</p><h2>Добавление провайдера LDAP в Openshift</h2><p>В Openshift 4 есть хорошая инструкция для добавления LDAP провайдера.Но я опишу всё в рамках статьи — для наглядности. Все действия выполняются с ноды master.</p><ul><li>Для начала создадим project:</li></ul><ul><li>Добавим secret для нашего LDAP:<b> </b></li></ul><ul><li>После того, как мы создали secret, нужно создать ConfgiMap, который будет содержать информацию о сертификате ca.crt:<b>  </b></li></ul><ul><li>На последнем этапе создаём custom resource (CR), который будет содержать информацию о параметрах  нашего identity provider:</li></ul><ul><li>Применяем только что созданный CR:</li></ul><ul><li>Проверим корректно ли работает наш добавленный провайдер, войдем в cluster с помощью пользователя LDAP <b>srv_acc_okd:</b></li></ul><h2>Управление доступами</h2><p>Отлично, мы добавили провайдера LDAP. Теперь нам необходимо управлять привилегиями в нашем Openshift cluster. В инструкции к Openshift нам предлагают создать sync LDAP, но он запускается руками — это нам не подходит. Поэтому отойдём от родной инструкции и добавим решение на базе автоматизации — создадим <b>cronjob, </b>ещё одну сущность в нашем Openshift cluster. По сути это обычный <b>cron:</b></p><ul><li>Создаём project для нашего cronjob:</li></ul><ul><li>Создаём новый cronjob — ldap-group-sync.yaml :</li></ul><h2>Заключение</h2><p>В данной статье мы удачно добавили провайдера LDAP  в наш Openshift cluster и настроили автоматическую синхронизацию групп и пользователей с нашим LDAP.</p>]]></content:encoded>
    </item>
  </channel>
</rss>