Добавление Windows 7 в домен Freeipa
Существует возможность добавления Windows машин в домен Freeipa и последующая авторизация а них с помощью доменных аккаунтов с импользованием протокола Kerberos. Freeipa это проект с открытым исходныи кодом, спонсируемый RedHat, который старается предоставить аналогичную с доменом Active Directory функциональность, только для Linux и Unix систем.
Настройку сервера Freeipa мы рассматривали в статьях ранее.
Для настройки будет испоьзоваться настроенный ранее сервер Freeipa на операционный системе CentOs7 с именем freeipa.test.un и машина Windows 7 с именем test-windows.
Настройка сервера Freeipa
С помощью веб-интерфейса Freeipa созданим новый узел в домене
Identity->Узлы(Hosts)->+Добавить(+Add):
Автоматически будет добавлена A-запись в интегрированный DNS сервер домена Freeipa
Теперь необходимо сгенерировать keytab файл для Windows машины
Получаем билет Kerberos для админа:
kinit admin
Вводим пароль пользователя admin:
Password for [email protected]:
Проверяем полученный билет:
klist
Ticket cache: KEYRING:persistent:0:0 Default principal: [email protected] Valid starting Expires Service principal 29.11.2017 10:20:35 30.11.2017 10:20:32 krbtgt/[email protected]
Генерируем файл keytab:
ipa-getkeytab -s freeipa.test.un -p host/test-windows.test.un \
-e arcfour-hmac -k krb5.keytab.test-windows.test.un -P
Создаем пароль для доступа к файлу keytab
New Principal Password: Verify Principal Password: Keytab successfully retrieved and stored in: krb5.keytab.test-windows.test.un
Настройка Windows
На Windows машине в качестве DNS сервера должен быть указан DNS сервер домена Freeipa
Открываем командную строку и вводим следующие команды (Имя области должно быть в верхнем регистре):
ksetup /setdomain TEST.UN ksetup /addkdc TEST.UN freeipa.test.un ksetup /addkpasswd TEST.UN freeipa.test.un ksetup /setcomputerpassword *password* - пароль который указан при создании keytab ksetup /mapuser * *
Теперь добавляем локальных пользователей на Windows машине у которых логин совпадает с логинами в домене Freeipa. Под этимм пользователями можно будет логиниться на машину и получать доступ к сервисам домена, аутентификацию они будут проходить в домене.
После этого перезагружаем машину и пытаемся залогиниться под учеткой из домена Freeipa.
Для входа указываем логи пользователя и домен в верхнем регистре «[email protected]»
Службы Active Directory
Службы Active Directory состоят из нескольких служб каталогов. Наиболее известными являются доменные службы Active Directory, обычно сокращенно AD DS или просто AD.
Доменные службы
Доменные службы Active Directory (AD DS) — это фундамент каждой доменной сети Windows . Он хранит информацию о членах домена, включая устройства и пользователей, проверяет их учетные данные и определяет их права доступа . Сервер, на котором запущена эта служба, называется контроллером домена . С контроллером домена связываются, когда пользователь входит в систему, обращается к другому устройству в сети или запускает бизнес -приложение в стиле Metro, загруженное на устройство.
Другие службы Active Directory (за исключением , как описано ниже), а также большинство серверных технологий Microsoft полагаются на доменные службы или используют их; примеры включают в себя групповую политику , шифрованный файловую систему , BitLocker , доменные имена , Desktop Services Remote , Exchange Server и SharePoint Server .
Самоуправляемые AD DS не следует путать с управляемыми Azure AD DS , которые являются облачным продуктом.
Сертификационные услуги
Службы сертификатов Active Directory (AD CS) создают локальную инфраструктуру открытых ключей . Он может создавать, проверять и отзывать сертификаты открытых ключей для внутреннего использования в организации. Эти сертификаты могут использоваться для шифрования файлов (при использовании с шифрованной файловой системой ), электронной почты (в соответствии со стандартом S / MIME ) и сетевого трафика (при использовании виртуальными частными сетями , протоколом безопасности транспортного уровня или протоколом IPSec ).
AD CS появился раньше Windows Server 2008, но назывался просто «Службы сертификации».
AD CS требует инфраструктуры AD DS.
Службы федерации
Как следует из названия, AD FS работает на основе концепции федеративного удостоверения .
AD FS требует инфраструктуры AD DS, хотя ее партнер по федерации не может.
Услуги по управлению правами
Службы управления правами Active Directory ( AD RMS , известные как службы управления правами или RMS до Windows Server 2008 ) — это серверное программное обеспечение для управления правами на информацию, поставляемое с Windows Server . Он использует шифрование и форму выборочного отказа в функциональности для ограничения доступа к таким документам, как корпоративная электронная почта , документы Microsoft Word и веб-страницы , а также к операциям, которые авторизованные пользователи могут выполнять с ними.
Using Kerberized web applications
If you need to install and configure a web application for the purposes of testing Kerberos authentication, MediaWiki can be used.
To add Kerberos authentication to an existing web application, the following Apache configuration is needed:
<Location "/mywebapp"> AuthType Kerberos AuthName "IPA Kerberos authentication" KrbMethodNegotiate on KrbMethodK5Passwd on KrbServiceName HTTP KrbAuthRealms IPA_DOMAIN Krb5Keytab /etc/httpd/conf/ipa.keytab KrbSaveCredentials off Require valid-user </Location>
Make sure you replace IPA_DOMAIN in the above configuration with your actual IPA domain (in caps) and to restart the apache service:
# service httpd restart
Lepide Auditor for Active Directory
Control Active Directory changes using this powerful software called Lepide Auditor for Active Directory.
It was specifically designed to offer a tool to manage the directory changes.
Lepide Auditor for Active Directory lets you quickly view who made the changes, what changes, when, and where. It can trail both modifications and unravel the ones that are undesirable.
The best part is that it also lets system audits even where audit logs are not present.
LepideAuditor offers a 360º Radar Tab, that allows you to monitor your whole Active Directory environment changes.
Instantly see a summary of the total number of changes per administrator, per source, and even by the trend to help you identify change/event anomalies.
Source: Lepide
Among its other features are, control panel for all audited systems, customizable control panel views, build up all audit logs to one central location, creating a business view instantly for who is making modifications and what’s being modified and more.
It also notifies you whenever it detects any critical changes.
Features of Lepide Auditor:
- Monitor AD Changes with an Intuitive Dashboard
- Detect and React to Insider Threats
- Easily Meet Compliance Demands
- Real-Time Alerts on Critical AD Changes
- Rollback Unwanted Active Directory Changes
- Granular Audit Reports for Active Directory Changes
Free Trial
Demo
389 Directory Server
389 Directory Server is a fully-featured business-class open source and free LDAP server for the Linux platform that makes a great alternative to the Microsoft Active Directory. What’s interesting about it is that it is seasoned with use in the actual world, aids multi-master repetition, and already manages several biggest LDAP distributions across the globe. The best part is that it is available to download for free and can be assembled within an hour with the help of the graphical interface.
The LDAP server is high performing that can manage innumerable operations per second and over tens of thousands parallel users. It boasts of an extensive directory that is limited only by disk space, that offers high performance, convenience to expand and multi-mater repetition, the 389 Directory Server can fulfill paramount demands.
Настройка active directory
Что бы настроить, active directory необходимо выполнить инструкцию:
- Запустить автоматический установщик приложений.
- В верхней части окна выбрать «Повысить роль сервера до нужного уровня ».
- Нажать на создание нового «дерева» и написать название для главного домена. Нажмите кнопку «Продолжить».
- Задайте пароль и следуйте дальше. Пароль сохраните или запомните.
- Если возникнет предупреждение о проверке имени домена, пропустите его
- При необходимости измените, путь к каталогам, где хранятся базы данных
- Приложение проверяет, правильность выполнения предварительных требований и автоматически приступит к установке.
- Когда установка программы закончиться компьютер перегрузится автоматически.
Если возникла необходимость добавить нового сетевого пользователя домена воспользуйтесь меню «Панель управления» «Администрирование» «Пользователи» или компьютеры Active Directory.
Возможные проблемы
Для диагностики проблем, удобнее всего запускать freeradius в режиме дебага. Для этого сначала остановим его:
systemctl stop radiusd
После запускаем радиус командой:
radiusd -X
После проведения диагностики не забываем снова запустить сервис:
systemctl start radiusd
Рассмотрим проблему, с которой столкнулся я.
eap_peap: ERROR: TLS Alert write:fatal:protocol version
При подключении некоторых устройств мы можем получить ошибку:
(18) eap_peap: ERROR: TLS Alert write:fatal:protocol version
tls: TLS_accept: Error in error
(18) eap_peap: ERROR: Failed in __FUNCTION__ (SSL_read): error:14209102:SSL routines:tls_early_post_process_client_hello:unsupported protocol
(18) eap_peap: ERROR: System call (I/O) error (-1)
(18) eap_peap: ERROR: TLS receive handshake failed during operation
(18) eap_peap: ERROR: = fail
(18) eap: ERROR: Failed continuing EAP PEAP (25) session. EAP sub-module failed
Причина: по умолчанию, eap настроен на использование TLS версии 1.2. Если устройство, с которого мы подключаемся использует версию протокола выше или ниже, то мы получим ошибку.
Решение: в настройках RADIUS-сервера есть возможность указать, какие версии TLS должны поддерживаться. Открываем конфигурационный файл:
vi /etc/raddb/mods-available/eap
Приводим к следующему виду опции:
tls-config tls-common {
…
# disable_tlsv1_2 = no
disable_tlsv1_1 = no
disable_tlsv1 = no
…
tls_min_version = «1.0»
tls_max_version = «1.3»
…
}
* в данном примере указаны не самые лучшие параметры с точки зрения безопасности. Лучше всего отказаться от TLS 1.0 и 1.1. — для этого, как правило, необходимо установить обновления на клиентском устройстве.
Перезагружаем freeradius:
systemctl restart radiusd
2: Установка клиента FreeIPA
Клиентский пакет FreeIPA можно найти в репозитории CentOS 7 по умолчанию:
Запустите команду установки FreeIPA. Она запустит сценарий, который поможет настроить FreeIPA и выполнить аутентификацию на сервере FreeIPA.
Благодаря флагу –mkhomedir FreeIPA будет создавать домашние каталоги для пользователей IPA при первом входе. При желании этот флаг можно опустить.
Инсталлятор запросит домен IPA.
Затем нужно ввести домен сервера IPA (это URL-адрес, который вы используете для доступа к веб-интерфейсу IPA). Скорее всего, он будет совпадать с доменом сервера IPA.
Примечание: Системы с избыточными серверами IPA, скорее всего, будут использовать другой домен и имя сервера IPA.
При использовании одного сервера обработка отказа не будет работать. FreeIPA предупредит вас об этом; введите yes, чтобы продолжить.
Убедитесь, что все опции установлены правильно и введите yes.
Затем введите имя администратора. Можно просто использовать администратора по умолчанию IPA, который был создан при установке сервера.
Введите пароль администратора IPA, который был установлен во время настройки сервера FreeIPA.
После этого клиент FreeIPA подготовит систему. Если установка прошла успешно, в конце вывода вы увидите:
Настройка репликации
Репликация будет настраиваться в несколько шагов:
- Настройка DNS для корректного разрешения имен в момент конфигурирования реплики.
- Настройка репликации каталога.
- Репликация центра сертификации.
Рассмотрим их выполнение подробнее.
1. Добавление записей в DNS
На сервере создаем запись PTR в обратной зоне DNS. Это можно сделать через веб-интерфейс в разделе Сетевые службы — DNS — Зоны DNS.
А также, в момент установки у нас еще нет корректно работающей DNS на вторичном узле, но система может требовать разрешения имени хоста — добавим нужную запись в hosts:
vi /etc/hosts
…
192.168.0.15 ipa-server.dmosk.local
192.168.0.16 ipa-server-2.dmosk.local
* предполагается, что у нас хост ipa-server с адресом 192.168.0.15 и ipa-server-2 с 192.168.0.16.
Выполняем команду:
ipa-replica-install —setup-dns —no-forwarders
Мы увидим ошибку, что невозможно разрешить обратное имя нашего хоста, либо игнорируем ее:
Lookup failed: Preferred host ipa-server-2.dmosk.local does not provide DNS.
Reverse DNS resolution of address 192.168.0.16 (ipa-server-2.dmosk.local) failed. Clients may not function properly. Please check your DNS setup. (Note that this check queries IPA DNS directly and ignores /etc/hosts.)
Continue? : yes
,,, либо возвращаемся к вопросу — возможно, была допущена ошибка.
Ждем — в конечном итоге мы увидим:
…
The ipa-replica-install command was successful
3. Установка ipa-ca
После настройки репликации мы увидим предупреждение:
WARNING: The CA service is only installed on one server (ipa-server.dmosk.local).
It is strongly recommended to install it on another server.
Run ipa-ca-install(1) on another master to accomplish this.
Оно означает, что роль центра сертификации пока находится только на первом сервере. Рекомендуется ее также установить на вторичный сервер. Для этого запускаем команду:
ipa-ca-install
Дожидаемся ее выполнения. Мы должны увидеть:
…
Done configuring certificate server (pki-tomcatd).
Updating DNS system records
Создание пользователей
Создадим пользователя. Для этого рассмотрим пример использования командной строки и веб-интерфейса.
Командная строка
Авторизуемся на FreeIPA:
kinit admin
Создаем нового пользователя командой:
ipa user-add mid —first=Дикий —last=Прапор —password
* где mid — логин; first — имя пользователя; last — фамилия; password — ключ для запроса пароля.
… после ввода команды система запросит пароль для создаваемого пользователя — вводим его дважды.
Мы должны увидеть сводку по параметрам для созданного пользователя:
Добавлен пользователь «mid»
——————————
Логин пользователя: mid
Имя: Дикий
Фамилия: Прапор
Полное имя: Дикий Прапор
Отображаемое имя: Дикий Прапор
Инициалы: ДП
Домашний каталог: /home/midGECOS: Дикий Прапор
Оболочка входа: /bin/sh
Principal name: [email protected]
Principal alias: [email protected]
User password expiration: 20190725205853Z
Электронный адрес: [email protected]: 1798800001ID группы: 1798800001
Пароль: True
Member of groups: ipausers
Kerberos ключей доступно: True
Веб-интерфейс
Открываем браузер и переходим по адресу имени сервера — в нашем примере, https://ipa-server.test.ru. Закрываем всплывающее окно с запросом пароля. В появившейся странице авторизации вводим логин admin и его пароль.
Откроется страница управления пользователями:
В открывшемся окне заполняем поля для создания пользователя и нажимаем по Добавить:
Проверка
На компьютере с клиентом вводим команду для проверки:
kinit mid
… и вводим пароль от созданной учетной записи:
Password for [email protected]:
При первом входе система попросит поменять пароль на новый:
Password expired. You must change it now.
Enter new password:
Enter it again:
Samba Active Directory
Samba is an open-source and free CIFS implementation that runs on Unix platforms and works towards a harmonious coexistence of Unix and Windows.
It is a powerful and versatile server application…
Samba is an important component to seamlessly integrate Linux/Unix Servers and Desktops into Active Directory environments.
It can function both as a domain controller or as a regular domain member.
It’s a software package that gives network administrators flexibility and freedom in terms of setup, configuration, and choice of systems and equipment.
While it runs on Unix, it speaks to the Windows clients in a way as if it belongs to them.
It lets Unix shift to a Windows Network Neighborhood without any fuss, followed by which Windows users can access the print and file services effortlessly, without knowing or bothering the benefits offered are by the Unix system.
This project is able to manage all this through a code of conduct currently called as CIFS or “Common Internet File System”.
Samba has been moved over to different non-Unix hosts such as NetWare, AmigaOS, and VMS.
Exclusive file server programs also support CIFS via several different vendors which make it available almost everywhere.
What Samba can do aka Features:
- Serve directory trees and printers to Linux, UNIX, and Windows clients
- Assist in network browsing (with or without NetBIOS)
- Authenticate Windows domain logins
- Provide Windows Internet Name Service (WINS) name server resolution
- Act as a Windows NT-style Primary Domain Controller (PDC)
- Act as a Backup Domain Controller (BDC) for a Samba-based PDC
- Act as an Active Directory domain member server
- Join a Windows NT/2000/2003 PDC
Get Started
User Guide
Какие атаки может предотвратить Active Directory?
Как видите, Active Directory — это центральный инструмент для управления рядом функций безопасности бизнеса. Существует ряд распространенных атак, которые могут помочь предотвратить хорошие практики Active Directory:
- Атака передачи хэша: эта атака существует уже более десяти лет. Несмотря на то, что данный тип один из самых известных, ему все же удалось нанести значительный ущерб. Используя атаку передачи хэша, злоумышленник извлекает хэшированные (более короткие значения фиксированной длины) учетные данные пользователя, чтобы перейти на удаленный сервер. Проще говоря, если злоумышленник добьется успеха с помощью тактики передачи хэша, в вашем процессе аутентификации есть слабость.
- Brute-force: простая, но эффективная атака методом «грубой силы», включает в себя перебор случайных имен пользователей и паролей в быстрой последовательности, чтобы получить доступ к вашей системе. Каковы шансы хакера на успех с помощью этого метода? Больше, чем ты думаешь. Злоумышленники, практикующие грубую силу, используют усовершенствованное программирование для создания триллионов комбинаций за считанные секунды.
Запуск службы «Диспетчер печати» и других
Чтобы работала печать в операционной системе семейства Windows 7, 8 или 10, обязательно должна быть запущена минимум одна служба. Речь идет о «Диспетчере печати»
В случае с сетевым принтером также стоит обратить внимание на работу «Диспетчера автоматических подключений удаленного доступа», «Диспетчера локальных устройств», «Диспетчера локальных сеансов»
Чтобы перепроверить, а при необходимости запустить, нужно выполнить несколько несложных действий.
- Одновременно нажмите на клавиатуре клавиши Windows+R. В открывшемся окне введите команду «services.msc» и нажмите кнопку «OK».
- В списке найдите службы, которые были перечислены выше. Все они должны быть в состоянии «Работает».
- Если это не так, то запустите их, используя контекстное меню или кнопки на панели вверху справа.
- Также можно произвести перезапуск каждой службы.
Using Samba shares
To create a Samba share on IPA server:
# net conf setparm 'share' 'comment' 'Trust test share' # net conf setparm 'share' 'read only' 'no' # net conf setparm 'share' 'valid users' 'ad_admins_sid' # net conf setparm 'share' 'path' '/path/to/share'
NOTE: To obtain the SID (Security Identifier) of the AD admins group, run:
# wbinfo -n 'ad_netbios\Domain Admins'
It is a string that looks like this: S-1-5-21-16904141-148189700-2149043814-512. wbinfo executable is contained in samba-winbind-clients package which is optional to FreeIPA.
To access the share from a Windows machine:
- Start -> right click on Network -> Map Network Drive
- ‘Drive’: choose a drive letter for the share
- ‘Folder’: \\ipa_hostname.ipa_domain\share
- The share should now be mounted under the drive letter that you chose
NOTE: This method can be used for testing purposes only, as file sharing is not yet supported in RHEL 6.4.
Используем базу данных на Windows Server 2012
Установка и настройка Active Directory — весьма нетрудное дело, а также выполняется проще, чем это кажется на первый взгляд.
Чтобы загрузить службы, для начала необходимо выполнить следующее:
- Поменять название компьютера: нажмите на «Пуск», откройте Панель управления, пункт «Система». Выберите «Изменить параметры» и в Свойствах напротив строки «Имя компьютера» кликните «Изменить», впишите новое значение для главного ПК.
- Выполните перезагрузку по требованию ПК.
- Задайте настройки сети так:
- Через панель управления откройте меню с сетями и общим доступом.
- Откорректируйте настройки адаптера. Правой клавишей нажмите «Свойства» и откройте вкладку «Сеть».
- В окне из списка кликните на протокол интернета под номером 4, опять нажмите на «Свойства».
- Впишите требуемые настройки, например: IP-адрес — 192.168.10.252 , маска подсети — 255.255.255.0, основной подшлюз — 192.168.10.1.
- В строке «Предпочтительный DNS-сервер» укажите адрес локального сервера, в «Альтернативном…» — другие адреса DNS-серверов.
- Сохраните изменения и закройте окна.
Установите роли Active Directory так:
- Через пуск откройте «Диспетчер сервера».
- В меню выберите добавление ролей и компонентов.
- Запустится мастер, но первое окно с описанием можно пропустить.
- О, перейдите дальше.
- Выберите ваш компьютер, чтобы поставить на него Active Directory.
- Из списка отметьте роль, которую нужно загрузить — для вашего случая это «Доменные службы Active Directory».
- Появится небольшое окно с предложением загрузки необходимых для служб компонентов — примите его.
- После вам предложат установить другие компоненты — если они вам не нужны, просто пропустите этот шаг, нажав«Далее».
- Мастер настройки выведет окно с описаниями устанавливаемых вами служб — прочтите и двигайтесь дальше.
- Появиться перечень компонентов, которые мы собираемся установить — проверьте, всё ли верно, и если да, жмите на соответствующую клавишу.
- По завершении процесса закройте окно.
- Вот и всё — службы загружены на ваш компьютер.
Доменное имя
-
В случаях, если при запуске службы FreeIPA используется имя домена, не имеющее IP-адреса (например, при запуске в тестовых целях), запуск службы следует производить в режиме «для изолированной сети»(опция -o инструмента astra-freeipa-server или пункт «Изолированная сеть (без шлюза/DNS)» в меню «Расширенные опции» графического инструмента fly-admin-freeipa-server).Далее в примерах подразумевается запуск именно сервиса в режиме «для изолированной сети».Проверить, имеет ли выбранный домен IP-адрес, можно из терминала командой nslookup или dig, например:
или
- В имени домена нельзя использовать кириллицу;
- Выбранное доменное имя не должно обслуживаться другим контроллером домена.Это значит, что при первичной настройке службы FreeIPA будет проверено, существует ли уже в домене любой иной контроллер домена, и, если он будет обнаружен, настройка не будет выполнена.
- Пароль администратора домена должен состоять не менее, чем из восьми символов.
Настройка на сервере FreeIPA
На стороне сервера IPA нам необходимо добавить узел для нашего вторичного сервера в группу ipaservers. Это можно сделать в веб-интерфейсе (раздел Идентификация — Группы — Группы узлов). Но мы рассмотрим пример для работы из командной строки.
Авторизовываемся в консоли от администратора:
kinit admin
Добавляем наш хост в группу ipaservers:
ipa hostgroup-add-member ipaservers —hosts ipa-server-2.dmosk.local
Мы должны увидеть что-то на подобие:
Host-group: ipaservers
Description: IPA server hosts
Member hosts: ipa-server.dmosk.local, ipa-server-2.dmosk.local
————————-
Number of members added 1
Теперь можно переходить к настройке репликации.
Подготовка сервера
Для подготовки сервера безопасности с доступом к данным по LDAP необходим сервер с правильно настроенным временем. Также необходимо правильно настроить межсетевой экран и систему безопасности SELinux.
Время
Установим часовой пояс:
cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime
* в данном примере используется московское время.
Затем устанавливаем и запускаем утилиту для синхронизации времени chrony.
yum install chrony
systemctl enable chronyd
systemctl start chronyd
Имя сервера
Для корректной работы сервера, необходимо, задать ему полное доменное имя (FQDN). Выполняем команду:
hostnamectl set-hostname ipa-server.test.ru
* где ipa-server.test.ru — имя сервера, которое будет использоваться.
Брандмауэр
Необходимо открыть несколько портов, которые используются службами FreeIPA:
firewall-cmd —permanent —add-port=53/{tcp,udp} —add-port=80/tcp —add-port=88/{tcp,udp} —add-port=123/udp —add-port=389/tcp —add-port=443/tcp —add-port=464/{tcp,udp} —add-port=636/tcp
firewall-cmd —reload
Интеграция с Unix
Различные уровни взаимодействия с Active Directory могут быть достигнуты в большинстве Unix-подобных операционных систем (включая Unix , Linux , Mac OS X или программы на основе Java и Unix) с помощью совместимых со стандартами клиентов LDAP, но эти системы обычно не интерпретируют многие атрибуты. связанные с компонентами Windows, такими как групповая политика и поддержка односторонних доверительных отношений.
Третьи стороны предлагают интеграцию с Active Directory для Unix-подобных платформ, включая:
- PowerBroker Identity Services , ранее Likewise ( BeyondTrust , ранее Likewise Software) — позволяет клиенту , отличному от Windows, присоединиться к Active Directory.
- ADmitMac (Программные системы Терсби )
- Samba ( бесплатное программное обеспечение под GPLv3 ) — может выступать в качестве контроллера домена.
Дополнения схемы, поставляемые с Windows Server 2003 R2, включают атрибуты, которые достаточно близко соответствуют RFC 2307, чтобы их можно было использовать в целом. Эталонная реализация RFC 2307, nss_ldap и pam_ldap, предоставленная PADL.com, напрямую поддерживает эти атрибуты. Схема по умолчанию для членства в группах соответствует RFC 2307bis (предлагается). Windows Server 2003 R2 включает оснастку консоли управления Microsoft, которая создает и редактирует атрибуты.
Альтернативный вариант — использовать другую службу каталогов, поскольку клиенты, отличные от Windows, аутентифицируются в ней, в то время как клиенты Windows аутентифицируются в AD. Клиенты , отличные от Windows, включают 389 Directory Server (ранее Fedora Directory Server, FDS), ViewDS Identity Solutions — ViewDS v7.2 XML Enabled Directory и Sun Microsystems Sun Java System Directory Server . Оба последних могут выполнять двустороннюю синхронизацию с AD и, таким образом, обеспечивать «отклоненную» интеграцию.
Другой вариант — использовать OpenLDAP с его полупрозрачным оверлеем, который может расширять записи на любом удаленном сервере LDAP дополнительными атрибутами, хранящимися в локальной базе данных. Клиенты, указывающие на локальную базу данных, видят записи, содержащие как удаленные, так и локальные атрибуты, в то время как удаленная база данных остается полностью нетронутой.
Администрирование (запросы, изменение и мониторинг) Active Directory можно осуществить с помощью многих языков сценариев, включая PowerShell , VBScript , JScript / JavaScript , Perl , Python и Ruby . Бесплатные и платные инструменты администрирования AD могут помочь упростить и, возможно, автоматизировать задачи управления AD.
С октября 2017 года Amazon AWS предлагает интеграцию с Microsoft Active Directory.
Разница между группой безопасности и группой рассылки
AD состоит из двух основных групп — групп рассылки и групп безопасности.
Группы рассылки — создаются в первую очередь для распространения электронных писем. Они полезны для таких приложений, как Microsoft Exchange или Outlook, и, как правило, позволяют легко добавлять и удалять контакты из одного из этих списков. Нельзя использовать группу рассылки для фильтрации параметров групповой политики, группа не предназначена для работы с предоставлением доступа на ресурсы. По возможности, пользователей следует назначать в группы рассылки, а не в группы безопасности, поскольку членство в слишком большом количестве групп безопасности может привести к замедлению входа в систему.
Группы безопасности — позволяют ИТ-отделу управлять доступом к общим ресурсам, контролируя доступ пользователей и компьютеров. Группы безопасности можно использовать для назначения прав безопасности в сети AD. (Эти группы также можно использовать для рассылки электронной почты.) Каждой группе безопасности назначается набор прав пользователей, определяющих их возможности в лесу. Например, некоторые группы могут восстанавливать файлы, а другие нет.
Эти группы обеспечивают ИТ-контроль над параметрами групповой политики, что означает, что разрешения могут быть изменены на нескольких компьютерах. Разрешения отличаются от прав — они применяются к общим ресурсам в домене. Некоторые группы могут иметь больше доступа, чем другие, когда дело доходит до общих ресурсов.
Freeipa Client Installation
The freeipa client is installed on centos 7 linux machine. After installing and configuring it, it’s possible to login by ssh with windows credential or using service ticket obtained from a windows user authenticated to a windows client.
The first thing to do, after installing ipa client, is to configure it.
#more hosts |grep ipa
192.168.1.52 ipaclient.linux.kali.it ipaclient
192.168.1.51 ipaserver.linux.kali.it
#more resolver.conf
192.168.1.51 ipaserver.linux.kali.it
# yum -y install ipa-client
# ipa-client-install –hostname=ipaclient.linux.kali.it –server=ipaserver.linux.kali.it –domain=linux.kali.it –realm=LINUX.KALI.IT –enable-dns-updates –mkhomedir
Autodiscovery of servers for failover cannot work with this configuration.
If you proceed with the installation, services will be configured to always access the discovered server for all operations and will not fail over to other servers in case of failure.
Proceed with fixed values and no DNS discovery? : yes
Client hostname: ipaclient.linux.kali.it
Realm: LINUX.KALI.IT
DNS Domain: linux.kali.it
IPA Server: ipaserver.linux.kali.it
BaseDN: dc=linux,dc=kali,dc=it
The sssd configuration must be changed in this way (in bolt the new configurations):
# vi sssd.conf
[domain/linux.kali.it]override_shell=/bin/bash homedir_substring = /home
cache_credentials = True
krb5_store_password_if_offline = True
ipa_domain = linux.kali.it
id_provider = ipa
auth_provider = ipa
access_provider = ipa
ipa_hostname = ipaclient.linux.kali.it
chpass_provider = ipa
dyndns_update = True
ipa_server = _srv_, ipaserver.linux.kali.it
dyndns_iface = enp0s3
ldap_tls_cacert = /etc/ipa/ca.crtsudo_provider = ldap ldap_uri = ldap://ipaserver.linux.kali.it ldap_sudo_search_base = ou=sudoers,dc=lx,dc=kali,dc=it ldap_sasl_mech = GSSAPI ldap_sasl_authid = host/ipclient.linux.kali.it ldap_sasl_realm = LINUX.KALI.IT krb5_server = ipaserver.linux.kali.it
services = nss, sudo, pam, ssh,pac
config_file_version = 2
domains = linux.kali.it
In the krb5.conf the following line need to add inside realms section:
auth_to_local = RULE:(^.*@KALI.IT)s/@KALI.IT/@kali.it/
The dns_lookup must be true: it force the sssd to find by dns query the active directory services
dns_lookup_realm = true
dns_lookup_kdc = true
Check in the nsswitch.conf the presence of the following line:
sudoers: files sss
Now the sssd and ssh can be started:
# systemctl restart sssd
# systemctl restart ssh
If everything has been done fine, the ssh kerberos authentication to ipaclient from freeipa client or windows client must be completed with success.
Below the ssh connection is done by ipaserver. The user used is windows administrator that has the right grant to access to any system because the domain admins belong to freeipa admin.
# kinit [email protected]
Password for [email protected]:
kinit: Preauthentication failed while getting initial credentials
# kinit [email protected]
Password for [email protected]:
# klist
Ticket cache: KEYRING:persistent:0:0
Default principal: [email protected]
Valid starting Expires Service principal
06/04/2016 10:44:34 06/04/2016 20:44:34 krbtgt/[email protected]
renew until 06/05/2016 10:44:33
# ssh -l [email protected] ipaclient.linux.kali.it
Last login: Sat Jun 4 10:40:58 2016 from ipaserver.linux.kali.it
$ id
uid=97200500([email protected]) gid=97200500([email protected]) groups=97200500([email protected]),5400000(admins),5400004(ad_admins),97200512(domain [email protected]),97200513(domain [email protected]),97200518(schema [email protected]),97200519(enterprise [email protected]),97200520(proprietari autori criteri di [email protected])
$ pwd
/home/kali.it/administrator
$ exit
logout
Connection to ipaclient.linux.kali.it closed.
# klist
Ticket cache: KEYRING:persistent:0:0
Default principal: [email protected]
Valid starting Expires Service principal
06/04/2016 10:42:04 06/04/2016 20:44:34 host/[email protected]
renew until 06/05/2016 10:44:33
06/04/2016 10:44:43 06/04/2016 20:44:34 krbtgt/[email protected]
renew until 06/05/2016 10:44:33
06/04/2016 10:44:34 06/04/2016 20:44:34 krbtgt/[email protected]
renew until 06/05/2016 10:44:33
The freeipa client installation and configuration is completed. In the next paragraph an real life example is showed: a windows user with sudo grant connects to linux system and from here changes his password in active directory.
Как подключить Windows 10 к домену с помощью PowerShell
Данный метод ввода в домен Active Directory, будет быстр и полезен, особенно для начинающих системных администраторов. Открываете оболочку PowerShell от имени администратора и пишите вот такую команду:
Add-Computer -DomainName root.pyatilistnik.org (где root.pyatilistnik.org, это имя вашего домена, у вас оно будет свое)
У вас появится окно авторизации, где вы должны указать учетные данные пользователя, у которого есть права на ввод в рабочей станции Windows 10 в домен.
Если учетные данные правильные, то у вас появится уведомление, что изменения вступят в силу после перезагрузки компьютера, это будет означать, что компьютер стал частью домена.
Если открыть оснастку ADUC на контроллере домена, то в контейнере Computers, вы обнаружите вашу рабочую станцию.