16 СЛУЖБИ КАТАЛОГІВ КОМП'ЮТЕРНИХ МЕРЕЖ
16.1 Служба каталогів та її головні властивості
Служба каталогів (Directory Service) - це розподілена база даних з інформацією про мережеві об'єкти, а також засоби доступу до неї та підтримки. Наявність служби каталогів (СК) дає змогу створювати тільки один варіант реєстраційних параметрів кожного мережного об'єкта. Наприклад, користувач, зареєстрований у СК, може працювати з багатосерверною мережею на будь-якій робочій станції і завжди працюватиме у звичному для себе середовищі. Без СК йому довелося б реєструватися на кожному сервері у випадку запуску кожного застосування. Аналогічні переваги СК має для централізованого зберігання інформації про інші об'єкти мережі: файл-сервери, сервери друкування та принтери, модемні сервери тощо. Властивості сучасної служби каталогів : Мережеві ресурси згруповані в ієрархічну структуру (дерево).У корені дерева є логічний об'єкт, який об'єднує всі ресурси дерева та зберігає їхні спільні властивості. Гілки дерева - логічні об'єкти-контейнери, які слугують для групування об'єктів. Об'єкт-контейнер містить інші об'єкти, серед яких також можуть бути контейнери. У такий спосіб утворюється дерево об'єктів. Найуживанішими типами контейнерів є об'єкти-країни, організації, підрозділи. Листя дерева - це об'єкти, що відповідають мережевим ресурсам. Такими ресурсами можуть бути сервери різних типів, робочі станції, принтери, користувачі, їхні посади, окремі застосування та ін. Список можливих типів кінцевих об'єктів постійно поповнюється. Успадкування прав доступу на нижчих рівнях ієрархії. Деякі типи об'єктів є принципалами безпеки (security principal). Принципал безпеки може отримати певні права доступу до контейнера (наприклад, підрозділу організації). В цьому випадку він отримає ці ж права на всі об'єкти, вкладені в контейнер (належать підрозділу). Це дуже зручно для адміністрування, адже за одну операцію можна призначити права доступу великій кількості об’єктів. Якщо потрібно обмежити таке успадкування прав для деяких об'єктів, то використовують фільтри успадкованих прав (Inheritance Rights Filter (IRF)), які блокують успадкування визначених прав. Наявність ієрархічної бази даних з інформацією про мережеві ресурси. База даних про мережеві об'єкти є об'єктною асоціативною базою; записи якої - це пари атрибут-значення. Кожен об'єкт має набір атрибутів (властивостей) з конкретними значеннями. База даних є розподіленою і доступна з довільного комп'ютера мережі. Окремі частини бази даних зберігаються на різних серверах. Крім того, для збільшення надійності та зменшення тривалості доступу окремо зберігають копії (репліки) частин бази. Для узгодження інформації, розміщеної на різних серверах, розроблено складні, проте ефективні механізми. Такий підхід дає змогу створювати дуже великі дерева для корпорацій світового масштабу. Зокрема, база eDirectory підтримує понад 1 млрд об'єктів. Схема бази даних дає змогу адміністратору розширювати її новими типами елементів та новими властивостями. Аналогічно до інших типів баз даних, бази служб каталогів мають схему, яка визначає допустимі типи об'єктів та допустимі їхні властивості. Сучасні СК дають змогу додавати нові типи об'єктів або нові властивості для наявних об'єктів. СК може містити характеристики всіх компонентів інформаційної системи підприємства (файлова система, бізнес-логіка, комутатори, маршрутизатори та інші активні пристрої мережі, користувацькі профілі, інформація для автентифікування користувачів, інформація окремих застосувань та ін.). Така здатність важлива для застосувань, що працюють зі службами каталогів. Використання застосувань, які працюють зі службами каталогів. З СК співпрацює значна кількість нових застосувань, що дає змогу спростити та здешевити їх, передаючи деякі функції до СК. Такі застосування називають застосуваннями, що доступні зі СК (Directory Enabled Applications). Запровадження СК дає змогу створювати та використовувати розподілену систему керування ресурсами мережі, перерозподіляти навантаження, оптимізувати надання послуг незалежно від місця розташування відповідних серверів та реально наблизитися до створення розподілених інформаційних систем. Наявність служб пошуку даних. Зазвичай, СК має окрему службу пошуку даних у базі даних. Цю службу часто називають білими сторінками. Такий довідник дає змогу знайти потрібний ресурс за наявності неповної інформації про нього.
16.2 Еволюція СК
Розвиток служб каталогів був значно зумовлений потребою вирішити проблеми усунення багаторазової реєстрації клієнта. Спочатку була окрема мережна ОС. Клієнт, входячи у мережу, реєструвався на певному сервері. У цьому випадку перевірялися його повноваження та права доступу. Отже, клієнт був "прикріплений" до цього сервера. Кожен сервер мав свою базу і для роботи з іншим сервером потрібна була повторна реєстрація. Такий же принцип діє в UNIX-системах і сьогодні, тобто клієнт реєструється на кожному сервері окремо. Адміністратор повинен стежити, щоби користувачі мали однакові реєстраційні параметри на всіх серверах. Однак під час роботи з системою, що має велику кількість серверів, перереєстрація є незручною. Потім стався перехід до доменних СК. У цьому випадку користувач реєструвався один раз у визначеному домені. Доменну систему використовували в ОС Windows NT. Заради сумісності з попередніми версіями цю систему підтримано і в наступних версіях Windows поряд зі службою каталогів Active Directory. Доменна система є проміжною в переході від посерверного вирішення до повноцінних СК. У такій системі мережеві ресурси (комп'ютери, принтери, користувачів) групують за спеціальними логічними сутностями, які називають доменами. Один домен може об'єднувати багато серверів та робочих станцій. У межах одного домену реєстрація користувачів відбувається прозоро. Інформація про ресурси зберігається централізовано на призначених для цього серверах (контролерах домену). Для зменшення тривалості доступу бази даних продубльовані в первинних та вторинних контролерах домену. Недоліки доменної структури: недостатня масштабованість, неможливість групування мережевих ресурсів відповідно до специфіки організації бізнес-процесів, мала кількість типів мережевих ресурсів, неможливість додавання нових типів даних та ін. Доменну архітектуру доцільно використовувати в невеликих мережах з малим набором функцій. Ієрархічна структура виявилася зручнішою порівняно з доменною. Після реєстрації користувач може працювати з усіма ресурсами дерева. Перша повноцінна служба каталогів (Netware Directory Service (NDS)) з'явилася в ОС Novell Netware 4.0. Пізніше розроблено служби LDAP, MS Active Directory, NIS+ та ін. Деякі з наявних сьогодні служб каталогів (MS Active Directory, NIS+) успішно працюють у мережах тільки однієї ОС. Інші (NDS, LDAP) мають засоби для роботи в гетерогенних мережах. Загалом проблему роботи в гетерогенних мережах можна вирішити, максимально поширивши найпопулярніший продукт СК, розробивши продукти-посередники, які забезпечують взаємодію різних СК , або використовуючи єдиний протокол доступу до каталогів (такий як LDAP або Х.500). Еволюцію розвитку конфігурацій СК відображено на рисунку 16.1. Розглянемо СК LDAP, NDS та AD детальніше.
Рисунок 16.1 – Різні організації СК
16.3 Служба каталогів Х.500 та LDAP
LDAP (Lightweight Directory Access Protocol) є головною СК для мереж TCP/IP завдяки підтримці IETF, а також міжнародному, не фірмовому характеру специфікації. Спочатку міжнародні організації зі стандартизації розробили та прийняли стандарт служби каталогів Х.500, що надавав багато можливостей, однак виявився занадто складним і працював тільки на потужних UNIX-серверах. Водночас більшість потенційних клієнтів СК працювало на ПК. Виникла потреба організувати сполучення цих клієнтів з серверами каталогів Х.500 - розробити відповідний протокол, який би працював у мережах стека TCP/IP. Завдяки IETF з'явився стандарт протоколів, які працюють з усіма версіями Х.500 - LDAP. Розробка slapd - серверу дало змогу системі LDAP працювати незалежно і без систем Х.500. LDAP складається з таких компонентів: - Інформаційна модель. Складається з рядків (entries). Кожний рядок має атрибут та список значень цього атрибута. Ця модель дає змогу додавати іншу інформацію. - Схема LDAP. Визначає типи елементів, інформація про які може зберігатися в БД LDAP. Визначено такі елементи, як країни, організації, користувачі, їхні групи. - Модель найменування. Визначає структуру інформації та її позначення. Імена ієрархічні та складаються з атрибутів і значень відповідного рядка БД LDAP (рисунок 16.2).
Рисунок 16.2 – Модель найменування ресурсів
- Модель безпеки. Розширені засоби розпізнавання дають змогу клієнтам та серверам взаємно підтверджувати автентичність. - Функційна модель. Визначає те, як клієнти можуть отримати інформацію в LDAP, як маніпулювати нею. LDAP передбачає виконання дев'яти базових операцій: додати, вилучити, модифікувати, приєднатися (bind), від'єднатися (unbind), шукати, порівняти, припинити (abandon), змінити DN (distinguished name). Операції приєднатися та від'єднатися керують розпізнаванням між серверами та клієнтами, операція пошуку дає змогу шукати користувачів та послуги на дереві каталогів, операція порівняння – застосуванням порівнювати свої значення зі значеннями в LDAP, зміна DN - змінити ім'я запису в БД, операція припинити на вимогу клієнта припиняє поточну операцію на сервері. - Протокол LDAP. Визначає взаємодію між клієнтами та серверами і відображення її на LDAP. - Програмні інтерфейси АРІ. Визначають функції та програми доступу до інформації LDAP. - Формат обміну даними LDAP. Простий текстовий формат для готування записів БД і змін до них. Дає змогу синхронізувати БД LDAP з іншими БД. Застосування звертаються до БД LDAP з використанням визначених АРІ, яка надає такий сервіс: пошук користувачів та ресурсів мережі; керування ними; розпізнавання користувачів та ресурсів. Використання LDAP як мережної БД має певні обмеження, а саме: - LDAP не замінює традиційних СКБД. Він не має механізмів опрацювання трансакцій, двофазових операцій commit, можливостей будувати звіти та розробляти застосування, його не оптимізовано для інтенсивних операцій з даними, немає єдиної мови доступу, подібної до SQL; - LDAP не замінює DNS, тому що DNS масово розгорнута, добре працює (хоча LDAP виконує споріднені функції); - LDAP не замінює файлової системи. Його не пристосовано до роботи з великими бінарними файлами. Він не підтримує блокування записів та інших функцій, властивих файловій системі. В IETF над розширенням LDAP працюють дві робочі групи: LDAP Directory Update (розробляє стандарти реплікації), LDAP Extensions (розробляє стандартні розширення до LDAP, такі як контроль доступу, розширення АРІ).
16.4 Служба каталогів NDS (eDirectory)
В основі архітектурної концепції ОС Netware є служба каталогів Novell (Novell Directory Services (NDS)), або eDirectory. Всі ресурси мережі зображені об'єктами, занесеними в спеціальну розподілену базу даних - Netware Directory Database. Визначено різні можливі типи об'єктів: користувач, сервер, том, група користувачів та ін. Ці об'єкти згруповані в ієрархічному дереві. Ієрархічна деревоподібна структура відображає взаємну підпорядкованість об'єктів. Кожен об'єкт конкретного типу має власний набір властивостей та їхніх значень. NDS діє на базі структури об'єктів, яку називають деревом каталогів (Directory Tree). Вона має три структурні типи об'єктів: - кореневий об'єкт (Root); - контейнерний об'єкт (Container object); - кінцевий об'єкт (Leaf object). Кожне дерево має тільки один кореневий об'єкт. Йому умовно відповідає об'єкт увесь світ. Контейнерні містять інші об'єкти. Кінцеві об'єкти головні, з ними працюють. Приклад дерева каталогів показано на рисунку 16.3.
Рисунок 16.3 – Дерево каталогів еDirectory
Контейнерні об'єкти, як уже зазначено, містять інші об'єкти. Вони призначені для організації та групування кінцевих об'єктів. Визначено такі типи контейнерних об'єктів: - С – країна (Country) - містить код позначення країни і не є обов'язковим. Кожне дерево може мати не більше одного рівня країн; - О – організація (Organization) - містить назву організації та є обов'язковим. Кожне дерево повинно мати не менше одного об'єкта цього типу. Однак допустимий тільки один структурний рівень об'єктів-організацій; - OU – організаційний підрозділ (Organizational Unit) - зберігає інформацію про певний підрозділ організації та його параметри. Об'єктів OU в дереві може бути довільна кількість, вони можуть бути довільно вкладені один в одному. Кінцеві об'єкти. Кінцеві об'єкти позначають CN (Common Name). Зазначимо, що об'єктом NDS є не сам фізичний об'єкт (наприклад, сервер або принтер), а лише інформація про нього, що зберігається у розподіленій базі даних. Є велика кількість застосувань, які використовують NDS. Зокрема NDS, крім ОС Netware, працює на Windows NT та 2000,2003, SCO UnixWare, Caldera Open Linux, Sun Solaris, IBМ АIХ, HP/UX.
16.5 Служба каталогів Active Directory
Служба каталогів Active Directory (AD) є складовою частиною ОС Windows 2000, 2003,2008 у її серверних варіантах. Вона замінила застарілу концепцію доменних архітектур і покликана забезпечити роботу ОС Windows у великих корпоративних мережах. Подібно до інших СК AD формує каталог мережевих об'єктів; AD сумісна зі стандартом Х.500 та протоколом LDAP. Інформація про мережеві ресурси згрупована у вигляді дерева. Для сумісності з доменною архітектурою розробники вирішили сумістити структуру дерева AD зі структурою дерева доменів DNS (структура доменів DNS є частиною дерева). Отже, домен AD - це домен DNS. На рисунку 16.4 показано приклад дерева доменів AD. Дерево доменів - це сукупність доменів, що об'єднані відношеннями довіри та належать до неперервного простору імен. У мережі може бути декілька дерев, які утворюють ліс. У цьому випадку відношення довіри між ними налагоджуються на рівні кореневих доменів з використанням Cerberos. У Windows NT інформація про користувачів домену зберігалася в базі даних SAM, яка становила частину системного реєстру. Тому можливості масштабування були обмежені можливістю масштабування реєстру. В AD функції SAM переймає DIT (Directory Information Tree). Для збереження даних застосовують процесор даних Jet. DIT зберігається у файлі ntds.dit. Цей файл копіюють усі сервери - контролери домену. Однією з важливих служб AD є загальний інформаційний каталог Global Catalog. Цей каталог зберігає інформацію про наявні об'єкти БД AD та надає змогу швидкого пошуку потрібної інформації. Дані в каталозі зберігаються у вигляді окремого файлу-індексу, так що в разі звертання до каталогу не потрібно звертатися до контролера домену.
Рисунок 16.4 – Приклад дерева каталогів Active Directory
У випадку встановлення системи сервером Global Catalog стає першим контролером домену. AD дає змогу організовувати та групувати мережеві ресурси всередині DNS-вузла з використанням контейнера OU (підрозділ) ( рис. 16.4). Якщо призначити певні права доступу до об'єктів OU, то ці права можуть успадкувати всі вкладені об'єкти. Дерево створюють та модифікують з використанням ММС (модуль Active Directory Users and Computers). В операційній системі Windows NT 4 були два типи груп: локальні та глобальні. Ці групи могли містити тільки користувачів та були призначені винятково для контролювання доступу. В AD збережено ці типи груп, однак додано ще універсальні групи (Universal Group). Ці групи працюють, якщо в мережі не використовують резервні контролери доменів (BDC), успадковані від попередньої системи NT4 (тобто система працює лише на Windows 2000). Універсальні групи можуть складатися з глобальних груп та інших універсальних груп довільного домену лісу. Крім того, в групу AD можна вкладати не тільки об'єкти-користувачі, а й об'єкти-комп'ютери. В AD змінено і механізм реплікації. В NT 4 головна доступна для записування копія БД SAM домену зберігається тільки на головному контролері домену. У W2000 доступна для записування копія DIT міститься на кожному контролері. Система відстежує зміни, присвоюючи кожній такій зміні номер USN (Update Sequence Number) та часову позначку. Під час реплікації між контролерами передається не вся база даних, а тільки інформація про зміни. Якщо надійшла інформація про зміни одного й того ж об'єкта, то контролер порівнює часові позначки та ухвалює рішення щодо змін. Такий механізм реплікації забезпечує мінімум інформації в разі передавання мережею та високі параметри продуктивності контролерів. Якщо в NT4 були тільки головні та резервні контролери доменів, які надавали один і той же сервіс з розпізнавання користувачів, то в AD контролери доменів виконують значно більше функцій. Один сервер може виконувати декілька функцій. Визначено такі функції. - Головний контролер домену (PDC). У мережах, де є станції з NT 4, надає сервіс головного контролера. - Контролер пулу відносних ідентифікаторів (RID Pool). Відносний ідентифікатор (Relative Identifier (RID)) є частиною ідентифікатора об'єкта. Контролер пулу відносних ідентифікаторів координує присвоєння унікальних ідентифікаторів контролерами системи. - Контролер інфраструктури. Підтримує узгодженість даних з загального каталогу, конфігурації вузлів та налаштувань реплікації. - Контролер назв доменів гарантує унікальність доменних імен. - Контролер схеми визначає контролер, на якому дозволено вносити зміни у схему БД AD. Незважаючи на великі потенційні можливості, AD як служба каталогів за зручністю у користуванні значно відстає від інших СК. Порівняємо AD з NDS, яка сьогодні є найрозвиненішою СК. В AD контейнери не можуть бути принципалами безпеки. NDS дає змогу призначати права доступу на рівні контейнерів. Наприклад, контейнер відділ розробки може отримати права доступу до певного принтера. В цьому випадку всі користувачі цього відділу зможуть користуватися ним. В AD всі назви об'єктів повинні бути унікальними незалежно від місця їхнього розташування у дереві. В NDS ім'я об'єкта повинно бути унікальним тільки в межах свого безпосереднього контейнера. У NDS успадкування прав динамічне: якщо користувачу призначене право доступу до контейнера, то оновлюється тільки ACL для цього контейнера. Водночас у разі перевіряння прав доступу враховують права у всіх контейнерах. В AD успадкування прав статичне: якщо змінюються права доступу до контейнера, то змінюються ACL для всіх вкладених об'єктів контейнера, що для великого та складного дерева може потребувати багато ресурсів. Контролер AD може бути контролером тільки одного домену, тоді як сервер NDS може зберігати репліки декількох розділів. Отже, потенційно за однакової кількості серверів NDS є стійкішою та надійнішою. Значним недоліком AD є також її орієнтація на структуру доменів DNS, що обмежує користувачів. NDS не має таких обмежень, і дерево каталогів можна, наприклад, створювати згідно з організаційною структурою підприємства, філії якого розташовані в різних зонах DNS. Для повідомлення про зміни у статусі сервісів AD використовує записи DNS про ресурси (RFC 2052). Однак DNS не повністю виконує цю функцію. NDS наприклад, використовує для цього спеціально призначений протокол SLP (RFC 2165). У багатьох випадках DNS діє як окрема служба (на базі UNIX-сервера) й інтеграція її з AD проблематична. Сьогодні AD підтримує тільки ОС Windows, тоді як NDS - багато систем.
16.6 Служби NIS та NIS+
Мережеві інформаційні служби NIS та NIS+ (Network Information Service) створені для роботи у середовищі UNIX. NIS – це доменна інформаційна служба, яка дає змогу об'єднати декілька серверів UNIX в один домен та використовувати для них один набір керівних файлів (etc/passwd, etc/group, etc/hosts, etc/networks тощо). Завдяки цьому користувач може бути розпізнаним один раз - у домені. У мережі є головний сервер NIS та декілька резервних, що працюють у режимі читання системних файлів. БД домену періодично копіюють на резервні сервери.Кожен домен адміністрований окремо. NIS також дає змогу об'єднувати користувачів, їхні групи та гости у мережеві групи та адмініструвати таку групу як одне ціле. Уся інформація в NIS передається відкрито, без шифрування. Таку мережу можна зламати з використанням фальшивого сервера NIS. Служба NIS+ набагато ліпша, ніж NIS, однак несумісна з нею. Вона дає змогу: - підтримувати ієрархію доменів та довірчі відношення між ними; - відмовитися від прямого використання системних файлів; - керувати репліками та застосовувати ефективніші механізми реплікації; - розпізнавати об'єкти та шифрувати. На жаль, цю службу підтримують тільки продукти фірми SUN, вона не має виходу на клієнтські комп'ютери.
|