Scroll to navigation

SSSD-AD(5) Формати файлів та правила SSSD-AD(5)

NAME

sssd-ad - Модуль надання даних Active Directory SSSD

ОПИС

На цій сторінці довідника описано налаштування засобу керування доступом AD для sssd(8). Щоб дізнатися більше про синтаксис налаштування, зверніться до розділу «ФОРМАТ ФАЙЛІВ» сторінки довідника sssd.conf(5).

Засіб надання даних AD — це модуль, що використовується для встановлення з’єднання з сервером Active Directory. Цей засіб потребує долучення комп’ютера до домену AD та доступності таблиці ключів.

У засобі надання даних AD передбачено підтримку встановлення з’єднання з Active Directory 2008 R2 або пізнішою версією. Робота з попередніми версіями можлива, але не підтримується.

The AD provider can be used to get user information and authenticate users from trusted domains. Currently only trusted domains in the same forest are recognized. In addition servers from trusted domains are always auto-discovered.

Інструментом надання даних AD використовуються ті самі параметри, що використовуються надавачем даних профілів sssd-ldap(5) та надавачем даних для розпізнавання sssd-krb5(5) з певними винятками, описаними нижче.

However, it is neither necessary nor recommended to set these options. The AD provider can also be used as an access, chpass, sudo and autofs provider. No configuration of the access provider is required on the client side.

Типово, модуль надання даних AD виконуватиме прив’язку до значень UID та GID з параметра objectSID у Active Directory. Докладніший опис наведено у розділі «ВСТАНОВЛЕННЯ ВІДПОВІДНОСТІ ІДЕНТИФІКАТОРІВ». Якщо вам потрібно вимкнути встановлення відповідності ідентифікаторів і покладатися на атрибути POSIX, визначені у Active Directory, вам слід встановити

ldap_id_mapping = False

Щоб отримати дані щодо користувачів і груп за допомогою атрибутів POSIX з надійних доменів, адміністратор AD має переконатися, що атрибути POSIX відтворюються у загальному каталозі (Global Catalog).

Дані щодо користувачів, груп та інших записів, які обслуговуються SSSD, у модулі надання даних AD завжди обробляються із врахуванням регістру символів для забезпечення сумісності з реалізацією Active Directory у LDAP.

ПАРАМЕТРИ НАЛАШТУВАННЯ

Зверніться до розділу «РОЗДІЛИ ДОМЕНІВ» сторінки довідника (man) sssd.conf(5), щоб дізнатися більше про налаштування домену SSSD.

ad_domain (рядок)

Визначає назву домену Active Directory. Є необов’язковим. Якщо не вказано, буде використано назву домену з налаштувань.

Для забезпечення належної роботи цей параметр слід вказати у форматі запису малими літерами повної версії назви домену Active Directory.

Скорочена назва домену (також відома як назва NetBIOS або проста назва) автоматично визначається засобами SSSD.

ad_server, ad_backup_server (рядок)

The comma-separated list of hostnames of the AD servers to which SSSD should connect in order of preference. For more information on failover and server redundancy, see the “FAILOVER” section.

This is optional if autodiscovery is enabled. For more information on service discovery, refer to the “SERVICE DISCOVERY” section.

Note: Trusted domains will always auto-discover servers even if the primary server is explicitly defined in the ad_server option.

ad_hostname (рядок)

Необов’язковий. Може бути встановлено на комп’ютерах, де hostname(5) не відповідає повній назві, що використовується доменом Active Directory для розпізнавання цього вузла.

Це поле використовується для визначення основної назви вузла, яка використовуватиметься у таблиці ключів. Ця назва має відповідати назві вузла, для якого випущено таблицю ключів.

ad_enable_dns_sites (булеве значення)

Вмикає сайти DNS — визначення служб на основі адрес.

Якщо вказано значення true і увімкнено визначення служб (див. розділ щодо пошуку служб у нижній частині сторінки підручника (man)), SSSD спочатку спробує визначити сервер Active Directory для встановлення з’єднання на основі використання визначення сайтів Active Directory і повертається до визначення за записами SRV DNS, якщо сайт AD не буде знайдено. Налаштування SRV DNS, зокрема домен пошуку, використовуються також під час визначення сайтів.

Типове значення: true

ad_access_filter (рядок)

Цей параметр визначає фільтр керування доступом LDAP, якому має відповідати запис користувача для того, щоб йому було надано доступ. Будь ласка, зауважте, що слід явним чином встановити для параметра «access_provider» значення «ad», щоб цей параметр почав діяти.

У параметрі також передбачено підтримку визначення різних фільтрів для окремих доменів або дерев. Цей розширений фільтр повинен мати такий формат: «КЛЮЧОВЕ СЛОВО:НАЗВА:ФІЛЬТР». Набір підтримуваних ключових слів: «DOM», «FOREST» або ключове слово слід пропустити.

Якщо вказано ключове слово «DOM» або ключового слова не вказано, «НАЗВА» визначає домен або піддомен, до якого застосовується фільтрування. Якщо ключовим словом є «FOREST», фільтр застосовується до усіх доменів з лісу, вказаного значенням «НАЗВА».

Декілька фільтрів можна відокремити символом «?», подібно до способу визначення фільтрів у базах для пошуку.

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

Приклади:

# застосувати фільтрування лише для домену з назвою dom1:
dom1:(memberOf=cn=admins,ou=groups,dc=dom1,dc=com)
# застосувати фільтрування лише для домену з назвою dom2:
DOM:dom2:(memberOf=cn=admins,ou=groups,dc=dom2,dc=com)
# застосувати фільтрування лише для лісу з назвою EXAMPLE.COM:
FOREST:EXAMPLE.COM:(memberOf=cn=admins,ou=groups,dc=example,dc=com)

Типове значення: не встановлено

ad_site (рядок)

Визначає сайт AD, з яким має встановлювати з’єднання клієнт. Якщо не буде вказано, виконуватиметься спроба автоматичного визначення сайта AD.

Типове значення: не встановлено

ad_enable_gc (булеве значення)

Типово, SSSD для отримання даних користувачів з надійних (довірених) доменів спочатку встановлює з’єднання із загальним каталогом (Global Catalog). Якщо ж отримати дані не вдасться, система використовує порт LDAP для отримання даних щодо участі у групах. Вимикання цього параметра призведе до того, що SSSD встановлюватиме зв’язок лише з портом LDAP поточного сервера AD.

Будь ласка, зауважте, що вимикання підтримки загального каталогу (Global Catalog) не призведе до вимикання спроб отримати дані користувачів з надійних (довірених) доменів. Просто SSSD намагатиметься отримати ці ж дані за допомогою порту LDAP надійних доменів. Втім, загальним каталогом (Global Catalog) доведеться скористатися для визначення зв’язків даних щодо участі у групах для різних доменів.

Типове значення: true

ad_gpo_access_control (рядок)

Цей параметр визначає режим роботи для функціональних можливостей керування доступом на основі GPO: працюватиме система у вимкненому режимі, режимі примушення чи дозвільному режимі. Будь ласка, зауважте, що для того, щоб цей параметр запрацював, слід явним чином встановити для параметра «access_provider» значення «ad».

Функціональні можливості з керування доступом на основі GPO використовують параметри правил GPO для визначення того, може чи не може той чи інший користувач увійти до системи певного вузла мережі.

ЗАУВАЖЕННЯ: якщо встановлено режим роботи «примусовий» (enforcing), можлива ситуація, коли користувачі, які раніше мали доступ до входу, позбудуться такого доступу (через використання параметрів правил GPO). З метою полегшити перехід на нову систему для адміністраторів передбачено дозвільний режим доступу (permissive), за якого правила керування доступом не встановлюватимуться у примусовому порядку. Програма лише перевірятиме відповідність цим правилам і виводитиме до системного журналу повідомлення, якщо доступ було надано усупереч цим правилам. Вивчення журналу надасть змогу адміністраторам внести відповідні зміни до встановлення примусового режиму (enforcing).

У цього параметра є три підтримуваних значення:

•disabled: правила керування доступом, засновані на GPO, не обробляються і не використовуються примусово.

•enforcing: правила керування доступом, засновані на GPO, обробляються і використовуються примусово.

•permissive: виконати перевірку відповідності правилам керування доступом на основі GPO, але не наполягати на їхньому виконанні. Якщо правила не виконуються, вивести до системного журналу повідомлення про те, що користувачеві було б заборонено доступ, якби використовувався режим enforcing.

Типове значення: permissive

ad_gpo_cache_timeout (ціле число)

Проміжок часу між послідовними пошуками файлів правил GPO щодо сервера AD. Зміна може зменшити час затримки та навантаження на сервер AD, якщо протягом короткого періоду часу надходить багато запитів щодо керування доступом.

Типове значення: 5 (секунд)

ad_gpo_map_interactive (рядок)

Список назв служб PAM, відокремлених комами, для яких керування доступом на основі GPO виконуватиметься на основі параметрів правил InteractiveLogonRight і DenyInteractiveLogonRight.

Зауваження: у редакторі керування правилами для груп це значення має назву «Дозволити локальний вхід» («Allow log on locally») та «Заборонити локальний вхід» («Deny log on locally»).

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби» або явним чином вилучити назву служби PAM з типового набору за допомогою конструкції «-назва_служби». Наприклад, щоб замінити типову назву служби PAM для цього входу (наприклад, «login») з нетиповою назвою служби pam (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_interactive = +my_pam_service, -login

Типове значення: типовий набір назв служб PAM складається з таких значень:

•login

•su

•su-l

•gdm-fingerprint

•gdm-password

•gdm-smartcard

•kdm

ad_gpo_map_remote_interactive (рядок)

Список назв служб PAM, відокремлених комами, для яких керування доступом на основі GPO засновано на параметрах захисту RemoteInteractiveLogonRight і DenyRemoteInteractiveLogonRight.

Зауваження: у редакторі керування правилами щодо груп це значення називається «Дозволити вхід за допомогою служб віддаленої стільниці» («Allow log on through Remote Desktop Services») та «Заборонити вхід за допомогою служб віддаленої стільниці» («Deny log on through Remote Desktop Services»).

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби» або явним чином вилучити назву служби PAM з типового набору за допомогою конструкції «-назва_служби». Наприклад, щоб замінити типову назву служби PAM для цього входу (наприклад, «sshd») з нетиповою назвою служби pam (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_remote_interactive = +my_pam_service, -sshd

Типове значення: типовий набір назв служб PAM складається з таких значень:

•sshd

ad_gpo_map_network (рядок)

Список назв служб PAM, відокремлених комами, для яких керування доступом на основі GPO засновано на параметрах захисту NetworkLogonRight і DenyNetworkLogonRight.

Зауваження: у редакторі керування правилами щодо груп це значення називається «Відкрити доступ до цього комп’ютера із мережі» («Access this computer from the network») і «Заборонити доступ до цього комп’ютера із мережі» (Deny access to this computer from the network»).

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби» або явним чином вилучити назву служби PAM з типового набору за допомогою конструкції «-назва_служби». Наприклад, щоб замінити типову назву служби PAM для цього входу (наприклад, «ftp») з нетиповою назвою служби pam (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_network = +my_pam_service, -ftp

Типове значення: типовий набір назв служб PAM складається з таких значень:

•ftp

•samba

ad_gpo_map_batch (рядок)

Список назв служб PAM, відокремлених комами, для яких керування доступом на основі GPO засновано на параметрах захисту BatchLogonRight і DenyBatchLogonRight.

Зауваження: у редакторі керування правилами щодо груп це значення називається «Дозволити вхід як пакетне завдання» («Allow log on as a batch job») і «Заборонити вхід як пакетне завдання» («Deny log on as a batch job»).

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби» або явним чином вилучити назву служби PAM з типового набору за допомогою конструкції «-назва_служби». Наприклад, щоб замінити типову назву служби PAM для цього входу (наприклад, «crond») з нетиповою назвою служби pam (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_batch = +my_pam_service, -crond

Типове значення: типовий набір назв служб PAM складається з таких значень:

•crond

ad_gpo_map_service (рядок)

Список назв служб PAM, відокремлених комами, для яких керування доступом на основі GPO засновано на параметрах захисту ServiceLogonRight і DenyServiceLogonRight.

Зауваження: у редакторі керування правилами щодо груп це значення називається «Дозволити вхід як службу» («Allow log on as a service») і «Заборонити вхід як службу» («Deny log on as a service»).

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби». Оскільки типовий набір є порожнім, назви служби з типового набору назв служб PAM вилучити неможливо. Наприклад, щоб додати нетипову назву служби PAM (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_service = +my_pam_service

Типове значення: not set

ad_gpo_map_permit (рядок)

Список назв служб PAM, відокремлених комами, яким завжди надається доступ на основі GPO, незалежно від будь-яких прав входу GPO.

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби» або явним чином вилучити назву служби PAM з типового набору за допомогою конструкції «-назва_служби». Наприклад, щоб замінити типову назву служби PAM для безумовного дозволеного доступу (наприклад, «sudo») з нетиповою назвою служби pam (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_permit = +my_pam_service, -sudo

Типове значення: типовий набір назв служб PAM складається з таких значень:

•sudo

•sudo-i

•systemd-user

ad_gpo_map_deny (рядок)

Список назв служб PAM, відокремлених комами, яким завжди заборонено доступ на основі GPO, незалежно від будь-яких прав входу GPO.

Можна додати іншу назву служби PAM до типового набору за допомогою конструкції «+назва_служби». Оскільки типовий набір є порожнім, назви служби з типового набору назв служб PAM вилучити неможливо. Наприклад, щоб додати нетипову назву служби PAM (наприклад, «my_pam_service»), вам слід скористатися такими налаштуваннями:

ad_gpo_map_deny = +my_pam_service

Типове значення: not set

ad_gpo_default_right (рядок)

За допомогою цього параметра визначається спосіб керування доступом для назв служб PAM, які не вказано явним чином у одному з параметрів ad_gpo_map_*. Цей параметр може бути встановлено у два різних способи. По-перше, цей параметр можна встановити так, що використовуватиметься типовий вхід. Наприклад, якщо для цього параметра встановлено значення «interactive», непов’язані назви служб PAM оброблятимуться на основі параметрів правил InteractiveLogonRight і DenyInteractiveLogonRight. Крім того, для цього параметра можна встановити таке значення, щоб система завжди дозволяла або забороняла доступ для непов’язаних назв служб PAM.

Передбачені значення для цього параметра:

•interactive

•remote_interactive

•network

•batch

•service

•permit

•deny

Типове значення: deny

dyndns_update (булеве значення)

Необов’язковий. За допомогою цього параметра можна наказати SSSD автоматично оновити IP-адресу цього клієнта на сервері DNS Active Directory. Захист оновлення буде забезпечено за допомогою GSS-TSIG. Як наслідок, адміністраторові Active Directory достатньо буде дозволити оновлення безпеки для зони DNS. Для оновлення буде використано IP-адресу з’єднання LDAP AD, якщо цю адресу не було змінено за допомогою параметра «dyndns_iface».

ЗАУВАЖЕННЯ: на застарілих системах (зокрема RHEL 5) для надійної роботи у цьому режимі типову область дії Kerberos має бути належним чином визначено у /etc/krb5.conf

Типове значення: true

dyndns_ttl (ціле число)

TTL, до якого буде застосовано клієнтський запис DNS під час його оновлення. Якщо dyndns_update має значення false, цей параметр буде проігноровано. Перевизначає TTL на боці сервера, якщо встановлено адміністратором.

Типове значення: 3600 (секунд)

dyndns_iface (рядок)

Optional. Applicable only when dyndns_update is true. Choose the interface or a list of interfaces whose IP addresses should be used for dynamic DNS updates. Special value “*” implies that IPs from all interfaces should be used.

Default: Use the IP addresses of the interface which is used for AD LDAP connection

Example: dyndns_iface = em1, vnet1, vnet2

dyndns_refresh_interval (ціле число)

Визначає, наскільки часто серверний модуль має виконувати періодичні оновлення DNS на додачу до автоматичного оновлення, яке виконується під час кожного встановлення з’єднання серверного модуля з мережею. Цей параметр не є обов’язкоми, його застосовують, лише якщо dyndns_update має значення true.

Типове значення: 86400 (24 години)

dyndns_update_ptr (булеве значення)

Визначає, чи слід явним чином оновлювати запис PTR під час оновлення записів DNS клієнта. Застосовується, лише якщо значенням dyndns_update буде true.

Типове значення: True

dyndns_force_tcp (булеве значення)

Визначає, чи слід у програмі nsupdate типово використовувати TCP для обміну даними з сервером DNS.

Типове значення: False (надати змогу nsupdate вибирати протокол)

dyndns_server (string)

The DNS server to use when performing a DNS update. In most setups, it´s recommended to leave this option unset.

Setting this option makes sense for environments where the DNS server is different from the identity server.

Please note that this option will be only used in fallback attempt when previous attempt using autodetected settings failed.

Default: None (let nsupdate choose the server)

override_homedir (рядок)

Перевизначити домашній каталог користувача. Ви можете вказати абсолютне значення або шаблон. У шаблоні можна використовувати такі замінники:

%u

ім´я користувача

%U

номер UID

%d

назва домену

%f

ім’я користувача повністю (користувач@домен)

%P

UPN - User Principal Name (ім’я@ОБЛАСТЬ)

%o

Початкова домашня тека, отримана від служби профілів.

%H

Значення параметра налаштовування homedir_substring.

%%

символ відсотків («%»)

Значення цього параметра можна встановлювати для кожного з доменів окремо.

приклад:

override_homedir = /home/%u

Типове значення: не встановлено (SSSD використовуватиме значення, отримане від LDAP)

homedir_substring (рядок)

Значення цього параметра буде використано під час розгортання параметра override_homedir, якщо у шаблоні міститься рядок форматування %H. Запис каталогу LDAP може безпосередньо містити цей шаблон для розгортання шляху до домашнього каталогу на кожному з клієнтських комп’ютерів (або у кожній з операційних систем). Значення параметра можна вказати окремо для кожного з доменів або на загальному рівні у розділі [nss]. Значення, вказане у розділі домену, має вищий пріоритет за значення, встановлене за допомогою розділу [nss].

Типове значення: /home

krb5_use_enterprise_principal (булеве значення)

Визначає, чи слід вважати реєстраційні дані користувача даними промислового рівня. Див. розділ 5 RFC 6806, щоб дізнатися більше про промислові реєстраційні дані.

Типове значення: true

Зауважте, що це типове значення не збігається з типовим значенням засобу модуля Kerberos.

krb5_confd_path (рядок)

Абсолютний шлях до каталогу, у якому SSSD має зберігати фрагменти налаштувань Kerberos.

Щоб вимкнути створення фрагментів налаштувань, встановіть для параметра значення «none».

Типове значення: не встановлено (підкаталог krb5.include.d каталогу pubconf SSSD)

РЕЗЕРВ

Можливість резервування надає змогу модулям обробки автоматично перемикатися на інші сервери, якщо спроба встановлення з’єднання з поточним сервером зазнає невдачі.

Синтаксичні конструкції визначення резервного сервера

Список записів серверів, відокремлених комами. Між комами можна використовувати довільну кількість пробілів. Порядок у списку визначає пріоритет. У списку може бути будь-яка кількість записів серверів.

Для кожного з параметрів налаштування з увімкненим резервним отриманням існує два варіанти: основний і резервний. Ідея полягає у тому, що сервери з основного списку мають вищий пріоритет за резервні сервери, пошук же на резервних серверах виконується, лише якщо не вдасться з’єднатися з жодним з основних серверів. Якщо буде вибрано резервний сервер, встановлюється час очікування у 31 секунду. Після завершення часу очікування SSSD періодично намагатиметься повторно встановити з’єднання з основними серверами. Якщо спроба буде успішною, поточний активний резервний сервер буде замінено на основний.

Механізм визначення резервного сервера

Механізмом резервного використання розрізняються окремі комп’ютери і служби. Спочатку модуль намагається визначити назву вузла вказаного комп’ютера. Якщо спроби визначення зазнають невдачі, комп’ютер вважатиметься від’єднаним від мережі. Подальших спроб встановити з’єднання з цим комп’ютером для всіх інших служб не виконуватиметься. Якщо вдасться виконати визначення, модуль зробити спробу встановити з’єднання зі службою на визначеному комп’ютері. Якщо спроба з’єднання зі службою не призведе до успіху, непрацездатною вважатиметься лише служба, модуль автоматично перемкнеться на наступну службу. Комп’ютер служби вважатиметься з’єднаним з мережею, можливі подальші спроби використання інших служб.

Подальші спроби встановлення з’єднання з комп’ютерами або службами, позначеними як такі, що перебувають поза мережею, буде виконано за певний проміжок часу. У поточній версії цей проміжок є незмінним і дорівнює 30 секундам.

Якщо список комп’ютерів буде вичерпано, основний модуль перейде у режим автономної роботи і повторюватиме спроби з’єднання кожні 30 секунд.

ПОШУК СЛУЖБ

За допомогою можливості виявлення служб основні модулі мають змогу автоматично визначати відповідні сервери для встановлення з’єднання на основі даних, отриманих у відповідь на спеціальний запит до DNS. Підтримки цієї можливості для резервних серверів не передбачено.

Налаштування

Якщо серверів не буде вказано, модуль автоматично використає визначення служб для пошуку сервера. Крім того, користувач може використовувати і фіксовані адреси серверів і виявлення служб. Для цього слід вставити особливе ключове слово, «_srv_», до списку серверів. Пріоритет визначається за вказаним порядком. Ця можливість є корисною, якщо, наприклад, користувач надає перевагу використанню виявлення служб, якщо це можливо, з поверненням до використання певного сервера, якщо за допомогою DNS не вдасться виявити жодного сервера.

Назва домену

З докладнішими відомостями щодо параметра «dns_discovery_domain» можна ознайомитися на сторінці підручника (man) sssd.conf(5).

Протокол

Запитами зазвичай визначається протокол _tcp. Виключення документовано у описі відповідного параметра.

Також прочитайте

Докладніші відомості щодо механізмів визначення служб можна знайти у RFC 2782.

ВСТАНОВЛЕННЯ ВІДПОВІДНОСТІ ІДЕНТИФІКАТОРІВ

Можливість встановлення відповідності ідентифікаторів надає SSSD змогу працювати у режимі клієнта Active Directory без потреби для адміністраторів розширювати атрибути користувача з метою підтримки атрибутів POSIX для ідентифікаторів користувачів та груп.

Зауваження: якщо увімкнено встановлення відповідності ідентифікаторів, атрибути uidNumber та gidNumber буде проігноровано. Так зроблено з метою уникання конфліктів між автоматично визначеними та визначеними вручну значеннями. Якщо вам потрібно призначити певні значення вручну, вручну доведеться призначати ВСІ значення.

Будь ласка, зауважте, що зміна параметрів налаштувань, пов’язаних із встановленням відповідності ідентифікаторів, призведе до зміни ідентифікаторів користувачів і груп. У поточній версії SSSD зміни ідентифікаторів не передбачено, отже, вам доведеться вилучити базу даних SSSD. Оскільки кешовані паролі також зберігаються у базі даних, вилучення бази даних слід виконувати, лише якщо сервери розпізнавання є доступними, інакше користувачі не зможуть отримати потрібного їм доступу. З метою кешування паролів слід виконати сеанс розпізнавання. Для вилучення бази даних недостатньо використання команди sss_cache(8), процедура має складатися з декількох кроків:

•Переконуємося, що віддалені сервери є доступними.

•Зупиняємо роботу служби SSSD

•Вилучаємо базу даних

•Запускаємо службу SSSD

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

Алгоритм встановлення відповідності

Active Directory надає значення objectSID для всіх об’єктів користувачів і груп у каталозі. Таке значення objectSID можна розбити на компоненти, які відповідають профілю домену Active Directory та відносному ідентифікатору (RID) об’єкта користувача або групи.

Алгоритмом встановлення відповідності ідентифікаторів SSSD передбачено поділ діапазону доступних UID на розділи однакових розмірів, які називаються «зрізами». Кожен зріз відповідає простору, доступному певному домену Active Directory.

Коли SSSD вперше зустрічає запис користувача або групи певного домену, SSSD віддає один з доступних зрізів під цей домен. З метою уможливлення відтворення такого призначення зрізів на різних клієнтських системах, зріз вибирається за таким алгоритмом:

Рядок SID передається алгоритмові murmurhash3 з метою перетворення його на хешоване 32-бітове значення. Для вибору зрізу використовується ціла частина від ділення цього значення на загальну кількість доступних зрізів.

Зауваження: за такого алгоритму можливі збіги за хешем та відповідною цілою частиною від ділення. У разі виявлення таких збігів буде вибрано наступний доступних зріз, але це може призвести до неможливості відтворити точно такий самий набір зрізів на інших комп’ютерах (оскільки в такому разі на вибір зрізів може вплинути порядок, у якому виконується обробка даних). Якщо ви зіткнулися з подібною ситуацією, рекомендуємо вам або перейти на використання явних атрибутів POSIX у Active Directory (вимкнути встановлення відповідності ідентифікаторів) або налаштувати типовий домен з метою гарантування того, що принаймні цей домен матиме еталонні дані. Докладніше про це у розділі «Налаштування».

Налаштування

Мінімальне налаштовування (у розділі “[domain/НАЗВА_ДОМЕНУ]”):

ldap_id_mapping = True
ldap_schema = ad

За типових налаштувань буде створено 10000 зрізів, кожен з яких може містити до 200000 ідентифікаторів, починаючи з 10001 і аж до 2000100000. Цього має вистачити для більшості розгорнутих середовищ.

Додаткові налаштування

ldap_idmap_range_min (ціле число)

Визначає нижню межу діапазону ідентифікаторів POSIX, які слід використовувати для встановлення відповідності SID користувачів і груп Active Directory.

Зауваження: цей параметр відрізняється від “min_id” тим, що “min_id” працює як фільтр відповідей на запити щодо цього домену, а цей параметр керує діапазоном призначення ідентифікаторів. Ця відмінність є мінімальною, але загалом варто визначати “min_id” меншим або рівним “ldap_idmap_range_min”

Типове значення: 200000

ldap_idmap_range_max (ціле число)

Визначає верхню межу діапазону ідентифікаторів POSIX, які слід використовувати для встановлення відповідності SID користувачів і груп Active Directory.

Зауваження: цей параметр відрізняється від “max_id” тим, що “max_id” працює як фільтр відповідей на запити щодо цього домену, а цей параметр керує діапазоном призначення ідентифікаторів. Ця відмінність є мінімальною, але загалом варто визначати “max_id” більшим або рівним “ldap_idmap_range_max”

Типове значення: 2000200000

ldap_idmap_range_size (ціле число)

Визначає кількість ідентифікаторів доступних на кожному зі зрізів. Якщо розмір діапазону не ділиться націло на мінімальне і максимальне значення, буде створено якомога більше повних зрізів.

ЗАУВАЖЕННЯ: значення цього параметра має бути не меншим за значення максимального запланованого до використання RID на сервері Active Directory. Пошук даних та вхід для будь-яких користувачів з RID, що перевищує це значення, буде неможливим.

Приклад: якщо найсвіжішим доданим користувачем Active Directory є користувач з objectSid=S-1-5-21-2153326666-2176343378-3404031434-1107, «ldap_idmap_range_size» повинне мати значення, яке є не меншим за 1107.

Для майбутнього можливого розширення важливо все спланувати наперед, оскільки зміна цього значення призведе до зміни усіх прив’язок ідентифікаторів у системі, отже зміни попередніх локальних ідентифікаторів користувачів.

Типове значення: 200000

ldap_idmap_default_domain_sid (рядок)

Визначає SID типового домену. За допомогою цього параметра можна гарантувати те, що цей домен буде завжди призначено до нульового зрізу у карті ідентифікаторів без використання алгоритму murmurhash описаного вище.

Типове значення: not set

ldap_idmap_default_domain (рядок)

Вказати назву типового домену.

Типове значення: not set

ldap_idmap_autorid_compat (булеве значення)

Змінює поведінку алгоритму встановлення відповідності ідентифікаторів так, щоб обчислення відбувалися за алгоритмом подібним до алгоритму “idmap_autorid” winbind.

Якщо встановлено цей параметр, домени призначатимуться, починаючи з нульового зрізу з поступовим зростанням номерів на кожен додатковий домен.

Зауваження: цей алгоритм є недетерміністичним (залежить від порядку записів користувачів та груп). Якщо з метою сумісності з системою, у якій запущено winbind, буде використано цей алгоритм, варто також скористатися параметром “ldap_idmap_default_domain_sid” з метою гарантування послідовного призначення принаймні одного домену до нульового зрізу.

Типове значення: False

Добре відомі SID

У SSSD передбачено підтримку пошуку назв за добре відомими (Well-Known) SID, тобто SID із особливим запрограмованим призначенням. Оскільки типові користувачі і групи, пов’язані із цими добре відомими SID не мають еквівалентів у середовищі Linux/UNIX, ідентифікаторів POSIX для цих об’єктів немає.

Простір назв SID упорядковано службами сертифікації, які виглядають як інші домени. Службами сертифікації для добре відомих (Well-Known) SID є

•Фіктивна служба сертифікації (Null Authority)

•Загальна служба сертифікації (World Authority)

•Локальна служба сертифікації (Local Authority)

•Авторська служба сертифікації (Creator Authority)

•Служба сертифікації NT (NT Authority)

•Вбудована (Built-in)

Написані літерами верхнього регістру ці назви буде використано як назви доменів для повернення повних назв добре відомих (Well-Known) SID.

Оскільки деякі з програм надають змогу змінювати дані щодо керування доступом на основі SID за допомогою назви, а не безпосереднього використання, у SSSD передбачено підтримку пошуку SID за назвою. Щоб уникнути конфліктів, для пошуку добре відомих (Well-Known) SID приймаються лише повні назви. Отже, не можна використовувати як назви доменів у sssd.conf такі назви: «NULL AUTHORITY», «WORLD AUTHORITY», «LOCAL AUTHORITY», «CREATOR AUTHORITY», «NT AUTHORITY» та «BUILTIN».

ПРИКЛАД

У наведеному нижче прикладі припускаємо, що SSSD налаштовано належним чином, а example.com є одним з доменів у розділі [sssd]. У прикладі продемонстровано лише параметри доступу, специфічні для засобу AD.

[domain/EXAMPLE]
id_provider = ad
auth_provider = ad
access_provider = ad
chpass_provider = ad
ad_server = dc1.example.com
ad_hostname = client.example.com
ad_domain = example.com

ЗАУВАЖЕННЯ

Інструмент керування доступом AD перевіряє, чи не завершено строк дії облікового запису. Дає той самий результат, що і ось таке налаштовування інструмента надання даних LDAP:

access_provider = ldap
ldap_access_order = expire
ldap_account_expire_policy = ad

Втім, якщо явно не налаштовано засіб надання доступу «ad», типовим засобом надання доступу буде «permit». Будь ласка, зауважте, що якщо вами налаштовано засіб надання доступу, відмінний від «ad», вам доведеться встановлювати усі параметри з’єднання (зокрема адреси LDAP та параметри шифрування) вручну.

When the autofs provider is set to “ad”, the RFC2307 schema attribute mapping (nisMap, nisObject, ...) is used, because these attributes are included the default Active Directory schema.

ТАКОЖ ПЕРЕГЛЯНЬТЕ

sssd(8), sssd.conf(5), sssd-ldap(5), sssd-krb5(5), sssd-simple(5), sssd-ipa(5), sssd-ad(5), sssd-sudo(5), sss_cache(8), sss_debuglevel(8), sss_groupadd(8), sss_groupdel(8), sss_groupshow(8), sss_groupmod(8), sss_useradd(8), sss_userdel(8), sss_usermod(8), sss_obfuscate(8), sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(8), sss_ssh_knownhostsproxy(8), sssd-ifp(5), pam_sss(8). sss_rpcidmapd(5)

AUTHORS

Основна гілка розробки SSSD — http://fedorahosted.org/sssd

01/16/2019 SSSD