Добавление windows в freeipa

Обновлено: 02.07.2024

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

В данной статье мы рассмотрим использование SSO при аутентификации на веб-прокси.

В качестве интегрированной системы проверки подлинности мы будем использовать FreeIPA .

Настройка SSO аутентификации в интегрированной системе проверки подлинности FreeIPA состоит из нескольких этапов:

Настройка SSO аутентификации в интегрированной системе проверки подлинности FreeIPA перекликается с настройкой аутентификации в Active Directory через Kerberos.

Для дальнейшей настроки примем следующие значения:

контроллер домена FreeIPA

IP адрес контроллера домена FreeIPA

имя устройства TING

IP адрес устройства TING

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

Настройка FreeIPA.¶

Залогиньтесь в консоль управления, используя учетные данные с правами администратора созданного домена.

Если у вас не создана обратная зона DNS 192.168.1.0/24 - создайте ее и проверьте, чтобы в ней содержалась запись для ip адреса контроллера домена FreeIPA.

Создайте учетную запись компьютера (узла) для устройства TING.

Для этого перейдите в меню Идентификация -> Узлы и нажмите кнопку Добавить.

_images/sso_freeipa_add_comp.jpg

Перейдите в раздел Сетевые службы -> DNS -> Зоны DNS

Проверьте, что запись появилась в прямой freeipa.local и обратной 1.168.192.in-addr.arpa зоне. Если нет - добавьте эти записи вручную.

Для этого перейдите в раздел Идентификация -> Службы и нажмите кнопку Добавить

_images/sso_freeipa_add_principal.jpg

имя устройства TING

Настройка устройства TING.¶

Настройка имени устройства и DNS

  • Установить флаг Не используйте локальную службу DNS в качестве сервера имен для этой системы

  • В поле DNS-серверы прописать IP адрес контроллера домена FreeIPA ( 192.168.1.4 )

Настройка сетевого времени

Перейдите в раздел Службы -> Сетевое время -> Общие.

В поле Серверы времени укажите имя контроллера домена FreeIPA dc.freeipa.local либо IP адрес контроллера домена FreeIPA 192.168.1.4 .

Примечание

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

Настройка LDAP коннектора

Пройдите в раздел Система -> Доступ -> Серверы, в правом верхнем углу нажмите на кнопку Добавить сервер и задайте следующие настройки:

Описательное имя

freeipa

Тип

LDAP

Имя хоста или IP-адрес

192.168.1.4

Значение порта

389

Транспортный протокол

TCP

Версия протокола

3

Привязать параметры доступа

пусто 1

Область поиска

Уровень: Целое поддерево

Базовый DN

DC=freeipa,DC=local

Контейнеры для аутентификации

cn=users,cn=accounts,dc=freeipa,dc=local

Начальный шаблон

FreeIPA

Атрибут присвоения имени пользователю

uid

1

Сервер FreeIPA разрешает анонимную привязку (binding), поэтому данное поле следует оставить пустым. В случае, если вы отключили анонимную привязку (binding), необходимо указать имя и пароль.

Проверка LDAP коннектора

  • В разделе Службы -> Веб-прокси -> Администрирование, на вкладке Основные настройки прокси, установите флаг Включить прокси, если он еще не установлен.

_images/sso_enable_web_proxy1.jpg

В разделе Службы -> Веб-прокси -> Администрирование, на вкладке Перенаправляющий прокси -> Настройка Аутентификации, в поле Метод аутентификации укажите ваш настроенный LDAP-коннектор.

_images/sso_proxy_select_ldap1.jpg

Установка плагина os-proxy-sso

Пройдите в раздел Система -> Прошивка -> Обновления. На вкладке Плагины нажмите на кнопку + напротив плагина os-proxy-sso для его установки.

После установки плагина os-proxy-sso, в разделе Службы -> Веб-прокси появляется подраздел Технология единого входа (SSO).

Настройка аутентификации по протоколу Kerberos

7.1 Включите Single Sign On

_images/sso_enable1.jpg

В разделе Службы -> Веб-прокси -> Технология единого входа (SSO), на вкладке Общие настройки, установите флаг Включить Single Sign On.

В поле Реализация AD Kerberos выберите значение Windows 2008 with AES.

  • происходит автогенерация конфигурационного файла krb5.conf для библиотеки Kerberos

  • модифицируется конфигурационный файл Squid /usr/local/sbin/squid.conf для загрузки хелпера Kerberos-аутентификации negotiate_kerberos_auth

  • производится перезапуск веб-прокси сервера Squid

7.2 Настройте аутентификацию по протоколу Kerberos

  • Перейдите в раздел Службы -> Веб-прокси -> Технология единого входа (SSO) -> Аутентификация по протоколу Kerberos и нажмите кнопку Обновить

_images/sso_check_kerb1.jpg

Все пункты, кроме Файл keytab должны быть отмечены зеленым.

Если это не так - перепроверьте все шаги.

Запустите терминал на контроллере домена FreeIPA (лобо воспользуйтесь удаленным подключением с помощью ssh - поключения)

Разворачиваем FreeIPA сервер

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

Ранее речь шла о замене MS Active Directory на свободный аналог Samba DC. Это решение почти полностью заменяет (с некоторыми ограничениями) MS AD. Хорошо работает, если в сети остаются много ПК под управлением Windows. Но как и MS AD практически не работает с клиентами Unix (Linux). Если стоит задача полностью в сети избавиться от Microsoft, то одно из решений использовать сервер идентификации и авторизации FreeIPA.

Все работы будут производится на ОС Rosa Cobalt (он же CentOS 7, он же RedHat 7)

В данном примере мы рассмотрим конфигурацию из трех серверов IPA (два в центральном офисе и один в удаленном). А также создадим доверительные отношения между доменом IPA и доменом MS Active Directory.

  • dc01.rpn.loc - первый сервер в корневом домене
    Имя сервера - dc01
    FQDN - dc01.rpn.loc
    IP - 192.168.20.105
    Домен IPA (REALM)- RPN.LOC
  • dc02.rpn.loc - второй сервер в корневом домене
    Имя сервера - dc02
    FQDN - dc02.rpn.loc
    IP - 192.168.20.106
    Домен IPA (REALM)- RPN.LOC
  • dc.01.rpn.loc - сервер в удаленном офисе
    Имя сервера - dc
    FQDN - dc.01.rpn.loc
    IP - 192.168.20.107
    Домен IPA (REALM)- RPN.LOC
  • addc.win.loc - контроллер домена Active Directory в центральном офисе
    Имя сервера - addc
    FQDN - adsc.win.loc
    IP - 192.168.20.108
    Домен AD (REALM)- WIN.LOC

Важно. В общем случае имя DNS домена и REALM в домене IPA могут быть различными. Но в этом случае невозможно будет настроить доверительные отношения между IPA и MS Active Directory (более подробно об этом речь пойдет ниже). Нам же нужно будет затем настроить доверительные отношения между доменами. Поэтому имена доменов (DNS и REALM) мы делаем одинаковыми.

Первый сервер FreeIPA

  1. Устанавливаем ОС в режиме минимальной установки
  2. Подключаем необходимые репозитарии (на Rosa Cobalt правим файл /etc/yum.repos.d/rels.repo , на CentOS подключаем репозитарий EPEL )
    В CentOS 8 (RH 8) включаем необходимые компоненты:
  3. Обновляем систему.
  4. Если в локальной сети не используется ipv6, то отключаем его.
  5. Добавляем в файл /etc/hosts данные нашего сервера:
  6. Устанавливаем необходимые пакеты: Все зависимые пакеты установятся автоматически.
    Небольшая хитрость (глюк), касающаяся CentOS 8.
    По умолчанию устанавливаются (на момент написания статьи) FreeIPA Server 4.8.0-13 и Samba 4.10.
    Но если в дальнейшем планируется использовать доверительные отношения с доменом Active Directory, то в данной связке ничего не получиться. Дело в том, что в составе FreeIPA Server идет модуль, заточенный для работы с Samba 4.9.1 и Samba в составе FreeIPA просто не может стартовать. Поэтому сразу откатываем версию самбы до 4.9.1:
  7. Замыкаем запросы DNS на этот же сервер. Приводим файл /etc/resolv.conf к виду:
  8. Открываем в файерволе необходимые порты:
  9. На всякий случай в файл /etc/named.conf вносим изменения: " dnssec-validation no " необходимо, что бы заработал форвардинг на внешний DNS. Если внешний DNS поддерживает dnssec, то можно ничего не менять.
  10. Запускаем DNS сервер
  11. Запускаем установку сервера IPA:

Устанавливаем сервер репликации FreeIPA

  1. Выполняем шаги 1-10 раздела "Первый сервер FreeIPA" с поправками на новое имя сервера и IP адрес. В настройках сервера DNS указываем адрес первого сервера FreeIPA
  2. В файл /etc/hosts кроме устанавливаемого сервера вносим так же данные нашего первого сервера FreeIPA
  3. Файл /etc/resolv.conf оставляем без изменений (указываем в качестве DNS сервера установленный первый сервер FreeIPA).
  4. Файл /etc/named.conf оставляем без изменений.
  5. Для установки сервера репликации в первую очередь устанавливаем ipa клиент: После выполнения этой операции хост dc02.rpn.loc должен появиться в веб-интерфейсе FreeIPA. Переходим к настройке репликации LDAP-каталога.
  6. Останавливаем и запрещаем автозапуск сервера chronyd:
  7. Вносим в файл /etc/ntp.conf данные нашего первого контроллера: Остальные сервера точного времени запрещаем.
  8. Запускаем ntpd и разрешаем его автозапуск:
  9. После этого выполняем собственно установку репликации LDAP-каталога:
  10. Добавляем в DNS второй NTP сервер:
  11. Устанавливаем репликацию DNS зон:
  12. После окончания установки перезагружаем сервер
  13. Устанавливаем репликацию CA:
  14. Исправляем файл /etc/ntp.conf (убираем левые сервера времени и назначаем наш первый контроллер в качестве единственного сервера времени)
  15. Если что-то пошло не так, то выполняем: Устраняем ошибки и повторяем все начиная с п.5
  16. После настройки и репликации контроллеров посмотреть топологию можно в веб-интерфейсе FreeIPA (IPA Server -> Topology -> Topology Graph).

Установка сервера FreeIPA в филиале.

Прежде чем устанавливать сервер в филиале несколько слов о теории и принципе организации территориально распределенной структуре FreeIPA.

Домен Active Directory - сложная система. Он включает в себя логически структурированный набор ресурсов (машины, пользователи, службы и т. Д.), Которые принадлежат потенциально нескольким доменам DNS. Несколько доменов DNS могут быть частью одного домена AD (где домен AD по определению совпадает с областью AD Kerberos). Несколько доменов AD можно объединить в лес. Самый первый домен AD, созданный в лесу, называется корневым доменом леса . Верхнее имя основного домена DNS домена AD используется как имя домена Kerberos AD.

Домен IPA представляет собой сложную систему. Он включает в себя логически структурированный набор ресурсов (машины, пользователи, службы и т.д.), Которые принадлежат потенциально нескольким доменам DNS. В отличие от Active Directory у нас есть один домен / область IPA для развертывания, а для Active Directory этот единственный домен IPA выглядит как отдельный лес Active Directory. Active Directory считает основной домен DNS, используемый в качестве основы для области Kerberos FreeIPA, как корневой домен леса для домена FreeIPA (например, корневой домен леса для Active Directory).

Когда вы устанавливаете первый сервер FreeIPA, вы всегда определяете имя области Kerberos для этой установки. При выборе названия области выполните следующие правила:

Серверы и клиенты FreeIPA могут распространяться в разных географических точках. Механизм местоположения DNS позволяет разделить топологию на отдельные области, называемые местоположениями (отображение в географические области). Клиенты, использующие записи DNS SRV (например, SSSD) в определенном месте, затем используют серверы из того же места, что и первые (ближайшие серверы FreeIPA), и серверы из разных мест в качестве резервной копии (удаленные серверы FreeIPA).

При планировании развертывания важно иметь в виду, что функции DNS в FreeIPA требуют, по крайней мере, одного DNS-сервера в каждом месте.

FreeIPA работает в реплицированной среде с несколькими мастер-серверами. Количество серверов зависит от нескольких факторов:

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

Как правило, рекомендуется иметь по меньшей мере 2-3 реплики в каждом центре обработки данных. В каждом центре обработки данных должна быть по крайней мере одна реплика с дополнительными услугами FreeIPA, такими как PKI или DNS, если они используются. Обратите внимание, что не рекомендуется иметь более 4 соглашений о репликации на каждую реплику. В следующем примере показана рекомендуемая инфраструктура:

Топология FreeIPA
Репликация FreeIPA

Можно приступить к установки сервера в филиале.

  1. В оснастке управления FreeIPA создаем два новых местоположения (Сервера IPA -> IPA Locations): "centr" и "filial01"
  2. Заходим в созданный "centr" и добавляем два установленных ранее сервера FreeIPA.
  3. Высветится предупреждение, что необходимо перестартовать добавленные сервера. Выполняем поочередно на каждом из серверов:
  4. Сервер в филиале будет принадлежать DNS зоне (субдомену)"01.rpn,loc". В оснастке управления DNS сервером создаем новую зону "01.rpn.loc"
  5. В настройках зоны параметр "Динамическое обновление" переключаем на значение "Верно". Ставим галочку в параметре "разрешить синхронизацию PTR". Нажимаем "Сохранить".
  6. В зоне " rpn.loc " создаем запись типа "A", соответствующую нашему серверу в филиале (dc.01.rpn.loc с ip адресом 192.168.20.107) (т.е. необходимо добавить запись с именем " dc.01 ")
  7. Повторяем шаги с 1 по 14 раздела "Устанавливаем сервер репликации FreeIPA".
  8. Назначаем серверу в филиале местоположение "filial01"
  9. Добавляем репликацию на второй сервер центрального офиса: Этим мы создаем репликацию LDAP между серверами dc02.rpn.loc и dc.01.rpn.loc
    То же самое проводим для CA (имя суффикса вводим "CA")
    Более наглядно и может быть быстрее можно сделать в вэб-интерфейсе управления FreeIPA (Сервер IPA -> Topology Graph)

Установка клиента FreeIPA на рабочую станцию и подключение к серверу.

Работы будут проводится на рабочей станции ROSA Cobalt WS. На CentOS и RedHat действия аналогичные.

Рабочая станция будет находится в филиале и принадлежать домену 01.centr.rpn.

  1. Устанавливаем имя компьютера:
  2. Настраиваем DNS на сервер в этом домене (dc.01.rpn.loc)
  3. Устанавливаем необходимые пакеты:
  4. Останавливаем и запрещаем автозапуск сервиса chronyd.
  5. Запускаем установку клиента:
  6. После этого можно входить на компьютер под учетной записью пользователя FreeIPA.
  7. Если машина до этого была в других доменах или есть проблемы со входом пользователей рекомендуется очистить кэш sssd:

Создание доверительных отношений с MS ActiveDirectory

  • Сервер IPA:
    Имя сервера: dc01.rpn.loc
    IP адрес: 192.168.20.105
    Домен IPA: rpn.loc
    Realm: RPN.LOC
  • Сервер AD:
    Имя сервера: addc.win.loc
    IP адрес: 192.168.20.2
    Домен AD: win.loc

Настраиваем доверительные отношения.

  1. Настраиваем DNS на обоих серверах, для того что бы они знали друг о друге:
    • На сервере IPA:
      • В параметрах зоны "rpn.loc" добавляем адрес DNS сервера AD (192.168.20.2)
      • Создаем зону перенаправления DNS "win.loc". В Параметре "Перенаправление зон" указываем адрес DNS сервера AD
    • На сервере АД:
      • В свойствах зоны "win.loc" переходим на вкладку "Передача зон" и либо разрешаем передачу зон на любой сервер, либо указываем IP адрес сервера IPA
      • В разделе "Сервер условной пересылки" создаем новый сервер. В поле DNS-домен вводим домен IPA сервера (rpn.loc). В поле IP адреса вводим адрес сервера IPA.
    Небольшое отступление в теорию. На практике встречается достаточно редко, но упомянуть об этом стоит.
    Если AD являетя поддоменом IPA (т.е. AD домен - addomain.ipadomain.example.com , IPA домен - ipadomain.example.com )
    В этом случае на IPA сервере необходимо добавить записи A и NS для AD домена: В домене AD можно использовать один из двух способов.
    Первый: настраивается глобальная переадресация для пересылки DNS запросов в домен IPA: Второй: настроить зону DNS для репликации master-slave. Затем данные для этой зоны будут периодически копироваться с главного (сервера IPA) на подчиненный (сервер AD).
    Для этого сначала явно разрешите передачу зоны на сервере IPA: Затем добавляем DNS зону IPA в домен AD: Следующий экзотический вариант: домен IPA является субдоменом AD (домен IPA - ipadomain.addomain.example.com , домен AD - addomain.example.com )
    В этом случае домене AD необходимо добавить записи A и NS для домена IPA:
  2. Настраиваем сервер IPA: Скрипт спросит необходимо ли настраивать slapi-nis плагин для поддержки работы старых клиентов (SSSD < 1.9) с пользователем из доверенного домена: Отвечаем YES
    На IPA сервере добавлен хотя бы один пользователь (администратор сервера), поэтому скрипт предложит сгенерировать SID для всех существующих пользователей и групп: Отвечаем YES
  3. Настраиваем Samba на сервере IPA: Проверим проходит ли Samba аутентификацию Kerberos со стороны IPA сервера:
  4. Проверка конфигурации DNS:
    • На сервере Active Directory:
      Проверим наличие записей для работы сервисов IPA на DNS-сервере AD.
      Запись отвечающая за работу сервисов Kerberos через UDP и LDAP через TCP: Запись отвечающая за имя Kerberos realm IPA домена: После выполнения команды ipa-adtrust-install должны появится записи отвечающие за работу сервисов MS DC Kerberos через UDP и LDAP через TCP: Далее проверим наличие записей для работы сервисов AD на DNS-сервере AD.
      Запись отвечающая за работу сервисов Kerberos через UDP и LDAP через TCP:
    • На сервере IPA
      Проверим наличие записей для работы сервисов IPA на DNS-сервере IPA.
      Запись отвечающая за работу сервисов Kerberos через UDP и LDAP через TCP: Запись отвечающая за имя Kerberos realm IPA домена: После выполнения команды ipa-adtrust-install должны появится записи отвечающие за работу сервисов MS DC Kerberos через UDP и LDAP через TCP: Далее проверим наличие записей для работы сервисов AD на DNS-сервере IPA. 4. Запись отвечающая за работу сервисов Kerberos через UDP и LDAP через TCP: Внимание! Если запись _kerberos._udp.dc._msdcs.source-win.loc. не доступна проверьте _kerberos._tcp.dc._msdcs.source-win.loc.
  5. Добавление двунаправленных доверительных отношений леса (Forest Trust) с AD:
    • Если мы имеем пароль администратора домена Active Directory: Будет выдан запрос пароля администратора домена Active Directory после чего установятся доверительные отношения между доменами.
      По умолчанию устанавливается одностороннее доверие. Для установления двухстороннего доверия необходимо добавить параметр"--two-way=true"
      В документации сказано, что устанавливаются двух сторонние отношения между доменами. Но таким способом почему то мне их установить не удалось на ОС "ROSA Cobalt". Постоянно операция завершалась словами "Внутренняя ошибка" без всяких коментариев (на CentOS доверия установились без каких-либо проблем). Пришлось пойти немного другим путем. Выполняем команду: Важно заметить , что в этом случае устанавливаются доверительные отношения типа "внешние не транзетивные" Транзетивное доверие типа "лес" мне таким способом установить не удалось.

  • Создаем внешнюю группу в IPA для доверенного домена:
  • Создаем POSIX группу для внешней группы ad_admins_external
  • Добавляем пользователей из доверенного домена во внешнюю группу: При запросе членов группы оставляем пустой ответ и нажимаем Enter
    ПРИМЕЧАНИЕ. Поскольку аргументы в приведенной выше команде содержат обратную косую черту, пробелы и т. д., обязательно нужно использовать кавычки (').
  • Добавляем внешнюю группу в POSIX группу:

Создание аккаунта для доступа к LDAP

Некоторые сервисы использующие LDAP требуют предварительно настроенной учетной записи. Использование обычной учетной записи пользователя предпочтительней, но не всегда это целесообразно делать. Можно сделать системную учетную запись следующим образом на сервере FreeIPA используя пароль Directory :

Замените пароль на более сложный. Параметр passwordExpirationTime: 20380119031407Z означает, что срок действия пароля неограничен Причина использования такой учетной записи, а не создание обычной учетной записи пользователя IPA, и использование этой системы заключается в том, что системная учетная запись существует только для привязки к LDAP. Это не настоящий пользователь POSIX, он не может войти в систему и ему не принадлежат файлы. У этого пользователя нет особых прав и он не может ничего записывать какие-либо данные на сервер LDAP FreeIPA, только права на чтение.

Предполагается, что у вас уже есть IPA домен, готовый к использованию. В этом примере IPA устанавливается в домен ipa.test.

IPA будет предоставлять услугу аутентификации для клиента Windows с помощью Kerberos. IPA не может поддерживать базу данных учетных записей для компьютеров Windows таким же образом, что и Active Directory, поэтому нам по-прежнему необходимо создавать локальные учетные записи Windows для каждого пользователя на компьютере под управлением Windows, хотя у них не будет паролей, установленных в Windows.

Настройка IPA



Далее на сервере IPA нужно запустить команду ipa-getkeytab для создания файла keytab для созданного хоста. Чтобы выполнять административные задачи на сервере IPA, сначала нужно аутентифицироваться, делается это с помощью команды kinit, укажите пользователя admin, как показано ниже.

Затем вы можете запустить команду «klist», чтобы проверить, что у вас есть действительный билет керберос.

Нужно выполнить команду ipa-getkeytab, как показано ниже.

Keytab successfully retrieved and stored in: krb5.keytab.windows

-s используется для указания IPA-сервера, в примере dc.ipa.test

-p используется для указания главного имени хоста, которым в примере является «host/», за которым следует полное доменное имя (FQDN) компьютера Windows, которое мы добавили через веб-интерфейс IPA ранее.

-e используется для указания типа шифрования, используемого для генерации ключей, здесь мы используем arcfour-hmac.

-k используется для указания файла keytab, который мы хотим создать, в этом случае файл krb5.keytab.windows будет создан в текущем рабочем каталоге.

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

Настройка Windows

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

Обратите внимание, что вышеприведенный пароль является паролем, который был установлен ранее в веб-интерфейсе IPA. Команда mapuser отразит все учетные записи в области Kerberos IPA.TEST в любую существующую учетную запись с таким же именем на этом компьютере под управлением Windows.

Затем нажмите клавишу Windows + R, чтобы открыть окно «Выполнить», введите gpedit.msc и выберите «ОК».

Это откроет редактор локальной групповой политики.

В разделе «Параметры конфигурации компьютера» выберите «Конфигурация Windows»> «Параметры безопасности»> «Локальные политики»> «Параметры безопасности»> «Сетевая безопасность настройка типов шифрования, разрешенных Kerberos.

В этом случае мы выберем все, кроме первых двух параметров DES. Выберите «Применить» или «ОК», чтобы сохранить изменения.

Перезагрузите компьютер Windows, чтобы применить изменения ksetup.

Создайте локальную учетную запись пользователя с именем пользователя IPA. Пароль задавать не нужно..

Вы можете создать локальную учетную запись пользователя, нажав клавишу Windows + R, чтобы открыть окно «Выполнить», и введите «mmc», затем нажмите «ОК».


В открывшемся MMC, выберите «Файл»> «Добавить или удалить оснастку».

В следующем окне выберите «Локальные пользователи и группы», затем нажмите кнопку «Добавить», затем «Готово», затем «ОК». Отсюда вы можете создавать свои локальные учетные записи пользователей в Windows. Помните, что не нужно добавлять пароли. Имя пользователя также должно совпадать с именем пользователя, которое существует в IPA.

Настройка удаленного рабочего стола

По умолчанию новая учетная запись пользователя не сможет подключаться по удаленному рабочему столу. Находясь в оснастке «Локальные пользователи и группы» добавьте созданного пользователя в группу «пользователи удаленного рабочего стола»



Вот и все, теперь вы можете войти в Windows с этой учетной записью. Вам нужно будет указать имя пользователя @REALM для входа в систему, поэтому, если вы будете следовать этому примеру, используйте win-test@IPA.TEST.

Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.

Для ввода клиентского компьютера в домен FreeIPA должны быть выполнены следующие условия:

    Клиентский компьютер и сервер FreeIPA должны видеть друг друга по сети (для проверки использовать команду "ping <ip адрес>");

Файл /etc/hosts не должен использоваться в качестве базы данных доменных имен других хостов. Так как запрос к этому файлу имеет приоритет перед обращением к DNS.

Чтобы не было путаницы, в нем рекомендуется только запись "самого себя", <ip адрес> + имя в формате FQDN + короткое имя. Данная запись добавляется автоматически во время установки FreeIPA сервера.

Для добавления имени хоста можно выполнить команду:

Для клиентов, использующих динамические IP-адреса, получаемые от DHCP-сервера, для обновления таблиц адресов после добавления имени хоста рекомендуется выполнить команды:

Настроить разрешение имён можно с помощью графического менеджера сетевых подключений NetworkManager.

После внесения изменений перезапустить сетевое подключение.

Пример сценария настройки DNS на клиентском компьютере из командной строки (сценарий применим для русскоязычных компьютеров с включенной сетевой службой NetworkManager):

При наличии подключенного репозитория пакетов все необходимые для установки пакеты можно установить командой apt или из графического менеджера пакетов synaptic.
При установке инструментов Astra Linux все необходимые пакеты устанавливаются автоматически.

Графический инструмент

Графический инструмент для ввода в домен представлен в пакете fly-admin-freeipa-client. Для его установки можно использовать команду:

Командная строка

Для установки инструмента командной строки можно использовать команду:

Графический инструмент

После установки графический инструмент fly-admin-freeipa-client доступен для запуска из командной строки или через систему меню:

"Пуск" - "Панель управления" - Сеть" - "Настройка FreeIPA клиент Fly"

Для ввода компьютера в домен нужно:

  • Выполнить предварительную настройку DNS, как описано выше;
  • Запустить графический инструмент fly-admin-freeipa-client и в открывшемся окне ввести
    • Имя домена;
    • Имя администратора домена;
    • Пароль администратора домена;


    После ввода данных нажать кнопку "Подключиться"

    Командная строка

    Выполнить предварительную настройку DNS, как описано выше, после чего ввод компьютера в домен FreeIPA выполняется командой:

    в качестве имени домена будет автоматически использовано доменное имя сервера DNS.



    Привет, меня зовут Денис, и я около двух лет работаю DevOps инженером в компании Altenar. Наша инфраструктура располагается как в Google Cloud, так и в собственном облаке на базе VMWare, в котором находится более 200 серверов и виртуальных машин.

    Когда количество Linux машин в компании достаточно велико, то рано или поздно возникает необходимость в централизованном управлении доступом к серверам и если в случае с Windows использование AD является индустриальным стандартом, то, когда дело доходит до Linux приходится использовать такие инструменты как FreeIPA.

    FreeIPA (Free Identity, Policy and Audit) ─ это open-source решение для Linux (аналогичное MS Active Directory), которое обеспечивает централизованное управление учетными записями и централизованную аутентификацию.

    Необходимо отметить, что у RedHat есть решение IdM, которое является частью RHEL. Они технически идентичны с FreeIPA и, можно сказать, что FreeIPA является upstream версией для IdM на которой обкатываются новые фичи (как Fedora для RHEL).

    FreeIPA использует клиент-серверную модель. Клиентом может быть любая Linux машина, которая настроена для взаимодействия с FreeIPA (IdM) контроллером домена. Клиент осуществляет взаимодействие с помощью Kerberos, NTP, DNS сервисов и сертификатов.


    Как настроить решение с репликацией из двух FreeIPA серверов с DNS можно почитать в этой статье, а для установки FreeIPA клиентов нам понадобится:
    ● Функционирующий FreeIPA контроллер с настроенным DNS сервером
    ● Один CentOS 7 сервер по крайней мере с 1GB памяти.
    ● Ansible version: 2.8+
    ● Terraform version: 0.13+

    Конечно, можно устанавливать FreeIPA клиентов вручную. Это можно сделать в 3 шага:
    1) Установить пакет yum install ipa-client
    2) Запустить скрипт установки ipa-client-install
    3) Пройти по шагам, ответив на вопросы установщика.


    Playbook для запуска роли выглядит так:

    Изначально мы также использовали ansible для создания DNS записей.


    При этом возникала проблема: чтобы создать dns запись необходимо было сначала явно указать IP адрес ">" в inventory файле, что было не очень удобно.

    И так как мы используем в том числе Terraform в нашем частном облаке и стараемся придерживаться подхода IaC был найден terraform-provider-freeipa, который позволил нам добавлять DNS записи при создании виртуальных машин.


    В результате мы получаем готовую DNS запись при создании виртуальной машины.


    И ничто нам не мешает продолжить установку FreeIPA клиента с помощью Ansible роли.

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

    Читайте также: