FreeIPA
FreeIPA | |
---|---|
![]() | |
Тип | Управление учётными данными |
Разработчик | Red Hat |
Написана на | Python[1] JavaScript[2] C[3] |
Операционные системы | Linux / Unix |
Последняя версия | |
Репозиторий | pagure.io/freeipa |
Состояние | активное |
Лицензия | GNU GPL |
Сайт | freeipa.org |
![]() |
FreeIPA (акроним от англ. Free Identity, Policy and Audit) — открытое программное обеспечение, специализированная служба каталогов, предназначенная для создания в ОС Linux среды, позволяющей централизованно управлять аутентификацией пользователей, устанавливать политики доступа и аудита. Функционал FreeIPA подобен Active Directory, используемому в Windows[5][6].
Развитие проекта осуществляется сообществом разработчиков при спонсорской поддержке Red Hat[5].
Серверная часть FreeIPA разработана только для дистрибутивов Linux, основанных на коде Red Hat (Centos, Fedora и прочих), а клиентская часть реализована также и для других дистрибутивов Linux, операционных систем и платформ, в частности, для Debian, Ubuntu, openSUSE, AIX, HP-UX, Solaris[5].
История разработки
В мае 2008 года код FreeIPA увидел свет в составе ОС Fedora 9[5].
В октябре 2009 года началась работа над FreeIPA 2.0 (был а начата соответствующая ветка разработки), и в конце марта 2011 года, в ходе «Fedora 15 Test Day» был выпущен релиз FreeIPA 2.0[5].
На 2012 год во FreeIPA были реализованы[5]:
- централизованное управление учетными записями пользователей, групп, компьютеров и сервисов;
- управление доступом к приложениям, установка политик паролей и настроек Kerberos, управление правилами SUDO;
- аутентификация Kerberos для пользователей и узлов;
- управление и хранение ролей в LDAP (англ. HBAC — Host Based Access Control);
- служба управления сертификатами (англ. Dogtag Certificate Server, DCS).
Начиная с версии 3.0.0, во FreeIPA реализована интеграция с Active Directory посредством доверительных отношений, для чего используется Samba[6].
Архитектура и возможности FreeIPA
FreeIPA представляет собой специализированный контроллер домена, используемые им механизмы похожи на таковые в Active Directory, разработанной Microsoft. Он не является сервером каталогов общего назначения (Red Hat Directory Server, Fedora Directory Server и подобных)[6].
Во FreeIPA предусмотрены следующие функциональные элементы[5]:
- серверы (один или несколько);
- клиентские компьютеры;
- компьютер администратора (клиентский компьютер с консольными программами для дистанционного управления FreeIPA) — он не является необходимым компонентом, поскольку во FreeIPA реализовано управление с помощью веб-интерфейса, запускаемого на сервере.
FreeIPA сделан модульным как в серверной, так и в клиентской его части[5].
Компоненты FreeIPA[6]:
- сервер LDAP: 389 Directory Server;
- служба аутентификации и единого входа: MIT Kerberos;
- служба управления сертификатами: DogTag;
- служба синхронизации времени: NTP;
- служба для управления DNS: BIND
- служба DHCP;
- средство интеграции с Active Directory: Samba (начиная с FreeIPA 3.0.0);
- веб-интерфейс управления (написан на Java[5]).
С целью снижения нагрузки на сервер у клиентов для хранения настроек используется локальный кеш (LDB и XML)[5].
Управление политиками во FreeIPA реализовано правилами HBAC (англ. host based access control — управление доступом на уровне узла), которые описывают, какие службы доступны пользователям на конкретном зарегистрированном во FreeIPA хосте (компьютере)[6].
FreeIPA позволяет гибко делегировать пользователям отдельные роли, не раскрывая им пароль администратора. К примеру, роль Enroll hosts даёт возможность пользователю регистрировать хосты в каталоге FreeIPA[6].
Во FreeIPA есть возможность построения многоуровневой системы управления доступом, в которой, например, руководителю подразделения можно дать полномочия добавлять в группу этого подразделения новых пользователей[6].
Использование
FreeIPA служит основой для других решений, например, Red Hat (спонсор разработки FreeIPA) использует FreeIPA как основу для Red Hat Identity Manager[6], а в Astra linux на нём реализован глобальный каталог в ALD Pro[7].
Примечания
- ↑ Python Coding Style - FreeIPA (неопр.). Дата обращения: 16 ноября 2017. Архивировано 16 ноября 2017 года.
- ↑ FreeIPA Code Analysis // Ohloh.net
- ↑ Coding Style - FreeIPA (неопр.). Дата обращения: 16 ноября 2017. Архивировано 16 ноября 2017 года.
- ↑ https://www.freeipa.org/release-notes/4-12-1.html
- ↑ 1 2 3 4 5 6 7 8 9 10 Хакер, 2012, 05. FreeIPA.
- ↑ 1 2 3 4 5 6 7 8 Кантер, 2018.
- ↑ Одна миграция подобна двум пожарам: двусторонние трасты с AD DS и реализация глобального каталога в ALD Pro : [арх. 7 июля 2023] // Блог компании ГК «Астра». — 2023. — 12 мая.
Литература
- Кантер, Л. Корпоративная система управления идентификационной информацией на базе FreeIPA // Системный администратор : журн. — 2018. — Вып. 10 (191).
- Wirth, K. IPA – Identity, Policy, Audit / K. Wirth, K. Unthank. — Red Hat, 2008. — 12 p. — (Red Hat Summit 2008, Boston, Jun 18–29).
- Опенсорсные решения для централизованного управления доступом к ресурсам // Хакер : журн. — 2012. — 30 марта.
Ссылки
- freeipa.org — официальный сайт FreeIPA
- Калошин, В. Описание интеграции сервера OpenVPN c FreeIPA. — 2016. — 28 января.