Разделы презентаций


Распределенные службы имен

Содержание

ПланНазначение служб именОсновные подходы к построениюDNS – Система Интернет именNIS – Система совместного использования файлов конфигурацииLDAP – Служба каталоговNetBIOS – Система имен в локальных сетяхJini – Система имен Интернет-службПереключатель служб именАвторизация

Слайды и текст этой презентации

Слайд 1Распределенные службы имен
Судаков А.А.
“Параллельные и распределенные вычисления” Лекция 7

Распределенные службы именСудаков А.А.“Параллельные и распределенные вычисления” Лекция 7

Слайд 2План
Назначение служб имен
Основные подходы к построению
DNS – Система Интернет имен
NIS

– Система совместного использования файлов конфигурации
LDAP – Служба каталогов
NetBIOS –

Система имен в локальных сетях
Jini – Система имен Интернет-служб
Переключатель служб имен
Авторизация и аутентификация
ПланНазначение служб именОсновные подходы к построениюDNS – Система Интернет именNIS – Система совместного использования файлов конфигурацииLDAP –

Слайд 3Литература
DNS RFCs http://www.dns.net/dnsrd/rfc/
http://www.tldp.org/HOWTO/NIS-HOWTO/
RFC1487 LDAP
Directory software http://www.padl.com/
NETBIOS RFC http://www.faqs.org/rfcs/rfc1001.html

ЛитератураDNS RFCs http://www.dns.net/dnsrd/rfc/http://www.tldp.org/HOWTO/NIS-HOWTO/ RFC1487 LDAP Directory software http://www.padl.com/NETBIOS RFC http://www.faqs.org/rfcs/rfc1001.html

Слайд 4Назначение служб имен
Нахождение объектов по некоторым их параметрам
Нахождение всех параметров

пользователя по их псевдонимам (nick, login)
Нахождение IP адресов машин по

их именам
Нахождение портов RPC служб по номеру RPC программы
Нахождение CORBA серверов по их IOR или именам интерфейсов
Назначение служб именНахождение объектов по некоторым их параметрамНахождение всех параметров пользователя по их псевдонимам (nick, login)Нахождение IP

Слайд 5Службы имен
Служба имен – база данных информации, представленной в виде

соответствия имязначение, которая позволят выполнять поиск значений, соответствующих заданному имени
В

любой операционной системе присутствует множество баз данных разной информации
База данных пользователей (/etc/passwd)
База данных групп (/etc/group)
База данных служб (/etc/services)
Для создания распределенных приложений и систем необходима распределенные службы имен, те которые могут быть доступных из разных пространств адресов
Службы именСлужба имен – база данных информации, представленной в виде соответствия  имязначение, которая позволят выполнять поиск

Слайд 6Распределенные службы имен
Преимущества
Централизация управления – вся информация добавляется и

изменяется в одном месте
Обеспечение надежности – может существовать несколько копий

системы
Распределенные службы именПреимущества Централизация управления – вся информация добавляется и изменяется в одном местеОбеспечение надежности – может

Слайд 7Основные подходы к построению
Клиент – серверная модель
Создается специальный выделенный сервер,

который хранит базу данных и обслуживает запросы
К серверу подключаются клиенты,

которые хотят выполнить поиск
Централизованная модель
Серверу административно выделяется фиксированный адрес и порт транспортного протокола
Эти же параметры конфигурируются на клиентах
Децентрализованная модель
Все клиенты и серверы являются равноправными
Одна из машин автоматически выбирается координатором (master)
Все остальные автоматически выполняют поиск координатора и пользуются его услугами
Сервера регистрируются на координаторе, а клиенты обращаются к координатору для поиска
Основные подходы к построениюКлиент – серверная модельСоздается специальный выделенный сервер, который хранит базу данных и обслуживает запросыК

Слайд 8Служба доменных имен DNS
Преобразование Интернет имен машин в IP адреса

и наоборот
Имя - > IP прямое преобразование
IP -> имя обратное

преобразование
Для чего
Людям удобнее работать с именами, а не с IP адресами
Позволяет обеспечить дополнительную безопасность путем дополнительно жесткой привязки имени к IP адресу, чтобы не могли просто так поменять
Служба доменных имен DNSПреобразование Интернет имен машин в IP адреса и наоборотИмя - > IP прямое преобразованиеIP

Слайд 9Интернет имена
Имя (FQDN - Fully Qualified DNS Name)
cluster.univ.kiev.ua
Классификация
Географическая информация
Виды

деятельности

Интернет имена Имя (FQDN - Fully Qualified DNS Name)cluster.univ.kiev.uaКлассификацияГеографическая информацияВиды деятельности…

Слайд 10Исторические сведения
Во времена ARPAnet все имена присваивались InterNIC и содержались

в файле hosts, который при добавлении новой машины высылался всем

администраторам сети
Сейчас это файл есть на всех машинах
127.0.0.1 localhost.localdomain localhost
10.25.5.1 ss20-1.univ.kiev.ua s1 node1 ss20-1
10.25.5.2 ss20-2.univ.kiev.ua s2 node2 ss20-2
10.25.5.3 ss20-3.univ.kiev.ua s3 node3 ss20-3
10.25.5.4 ss20-4.univ.kiev.ua s4 node4 ss20-4
10.25.5.5 ss20-5.univ.kiev.ua s5 node5 ss20-5
10.25.5.6 ss20-6.univ.kiev.ua s6 node6 ss20-6
10.25.5.7 ss20-7.univ.kiev.ua s7 node7 ss20-7
10.25.5.8 ss20-8.univ.kiev.ua s8 node8 ss20-8
10.25.5.9 ss20-9.univ.kiev.ua s9 node9 ss20-9
Исторические сведенияВо времена ARPAnet все имена присваивались InterNIC и содержались в файле hosts, который при добавлении новой

Слайд 11Недостатки старого метода
Файл, который содержит все Интернет имена стал бы

очень большим
Отправка данных всем становится узким местом
Была разработана иерархическая система

имен
Недостатки старого методаФайл, который содержит все Интернет имена стал бы очень большимОтправка данных всем становится узким местомБыла

Слайд 12Иерархическая схема системы

Иерархическая схема системы

Слайд 13Иерархическая схема имен
Корневой сервер
.UA
Корень
.
Делегированный домен
.KIEV.UA
Делегированный домен
UNIV.KIEV.UA
FQDN
CLUSTER.UNIV.KIEV.UA

Иерархическая схема именКорневой сервер.UAКорень.Делегированный домен.KIEV.UAДелегированный доменUNIV.KIEV.UAFQDNCLUSTER.UNIV.KIEV.UA

Слайд 14Обратный поиск
Поиск имени по IP адресу
Адрес 10.25.0.1
Ему соответствует имя обратного

поиска
1.0.25.10.in-addr.arpa
Имя строится по тому же иерархическому принципу: сетевой адрес –

корень
Для локальных
Обратный поискПоиск имени по IP адресуАдрес 10.25.0.1Ему соответствует имя обратного поиска1.0.25.10.in-addr.arpaИмя строится по тому же иерархическому принципу:

Слайд 15Типы запросов
Рекурсивный запрос
Сервер берет на себя всю работу по определению

адреса по доменному имени
Обычно выполняется локальными серверами
Итеративный запрос
Сервер отвечает, что

не знает этого имени и выдает адрес сервера, к которому нужно обратится
Обычно выполняются корневыми или промежуточными серверами
Типы запросовРекурсивный запросСервер берет на себя всю работу по определению адреса по доменному имениОбычно выполняется локальными серверамиИтеративный

Слайд 16Протокол запросов-ответов
Транспортный протокол UDP, порт 53
Клиент отправляет сообщение серверу, заданному

в конфигурации клиента, как локальный
Сервер получает запрос, выполняет поиск, оправляет

ответ
Нет гарантии, что сервер или клиент получит сообщение
В случае отсутствия ответа выполнятся повторный запрос
Если несколько раз не получили ответа, то считается, что сервер не найден
Протокол запросов-ответовТранспортный протокол UDP, порт 53Клиент отправляет сообщение серверу, заданному в конфигурации клиента, как локальныйСервер получает запрос,

Слайд 17Формат сообщения

Формат сообщения

Слайд 18Основные компоненты клиентов и серверов
Клиент
Программа
Библиотека
resolver
Сервер
Сетевая подсистема
База данных
авторитетной
информации
Система
кэширования
Система


кэширования
UDP

Основные компоненты клиентов и серверовКлиентПрограммаБиблиотекаresolverСерверСетевая подсистемаБаза данных авторитетной информацииСистема кэшированияСистема кэшированияUDP

Слайд 19База данных имен
Хранится в виде файлов или в реляционной базе

данных
Файл

$TTL 86400
@ IN

SOA ss20-1.univ.kiev.ua. root.localhost. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS ss20-1.univ.kiev.ua.

ss20-1 IN A 10.25.5.1
ss20-2 IN A 10.25.5.2
ss20-3 IN A 10.25.5.3
ss20-4 IN A 10.25.5.4
ss20-5 IN A 10.25.5.5
ss20-6 IN A 10.25.5.6
ss20-7 IN A 10.25.5.7
ss20-8 IN A 10.25.5.8


База данных именХранится в виде файлов или в реляционной базе данныхФайл $TTL  86400@

Слайд 20Балансировка нагрузки
Есть несколько серверов, которые выполняют одну функцию
Для обеспечения производительности


Разным серверам ставится в соответствие одно имя, но разные IP
При

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

Балансировка нагрузкиЕсть несколько серверов, которые выполняют одну функциюДля обеспечения производительности Разным серверам ставится в соответствие одно имя,

Слайд 21Пример: балансировка для WWW кластера

Пример: балансировка для WWW кластера

Слайд 22Программное обеспечение
Сервер BIND
Клиент
Resolver
/etc/hosts.conf
/etc/resolv.conf

Программное обеспечениеСервер BINDКлиентResolver /etc/hosts.conf/etc/resolv.conf

Слайд 23Обеспечение надежности

Обеспечение надежности

Слайд 24Network Information System (NIS)
Совместное использование файлов конфигурации на разных машинах
Как

сделать так, чтобы на всех машинах организации (100 машин) были

одинаковые имена пользователей?
Если нужно изменить или добавить пользователя, как это сделать быстро и без ошибок?
Как это же сделать с другими файлами конфигурации ?
Network Information System (NIS)Совместное использование файлов конфигурации на разных машинахКак сделать так, чтобы на всех машинах организации

Слайд 25Исторические сведения
Разработана фирмой SUN вначале 1980-х в рамках ONC
Позже появилась

модификация NIS+ с шифрованием
Сейчас используется в локальных сетях для создания

распределенной базы данных конфигурационных файлов при не очень высоких требованиях к безопасности


Исторические сведенияРазработана фирмой SUN вначале 1980-х в рамках ONCПозже появилась модификация NIS+ с шифрованиемСейчас используется в локальных

Слайд 26Структура системы
YP домен – набор машин, которые совместно используют файлы

конфигурации
YP master (server) – машина, которая содержит авторитетные файлы конфигурации

и может раздавать их другим
YP slave (server) – машина, которая содержит копии файлов конфигурации и тоже может их раздавать другим
YP client (ypbind) – машина, которая использует копии файлов конфигурации
Структура системыYP домен – набор машин, которые совместно используют файлы конфигурацииYP master (server) – машина, которая содержит

Слайд 27YP домен
Ypbind (client) устанавливается на все машины, которые должны использовать

разделяемые файлы конфигурации
Ypserv (master) устанавливается только на одной машине домена

и содержит авторитетные данные, которые при изменении отправляются всем вторичным серверам и клиентам
Ypserv (slave) устанавливается на всех серверах, которые используются для репликации авторитетной информации
YP доменYpbind (client) устанавливается на все машины, которые должны использовать разделяемые файлы конфигурацииYpserv (master) устанавливается только на

Слайд 28YP master
Каждому совместно используемому файлу конфигурации соответствует NIS карта
Карта –

файл, который содержит всю информацию файла конфигурации и может быть

отправлен клиенту
При изменении файла конфигурации необходимо перестроить карту
При получении запроса от клиента сервер отправляет ему карту
YP masterКаждому совместно используемому файлу конфигурации соответствует NIS картаКарта – файл, который содержит всю информацию файла конфигурации

Слайд 29YP slave
Вспомогательные сервера также могут отправлять карты клиентам
На вспомогательных серверах

файлы конфигурации изменять нельзя
Для приема всех карт используется вспомогательный сервер

ypxfrd
YP slaveВспомогательные сервера также могут отправлять карты клиентамНа вспомогательных серверах файлы конфигурации изменять нельзяДля приема всех карт

Слайд 30YP клиент
Определяет сервер
При обращении к некоторым данным из файлов конфигурации

отправляет запрос серверу
Если есть локальная копия карты, то используется эта

карта
YP клиентОпределяет серверПри обращении к некоторым данным из файлов конфигурации отправляет запрос серверуЕсли есть локальная копия карты,

Слайд 31Взаимодействие клиентов и серверов
RPC
ypserv 100004
ypbind

100007
ypxfrd 100069
yppasswd

100009
Взаимодействие клиентов и серверовRPCypserv     100004ypbind     100007ypxfrd

Слайд 32Карты
passwd.byname
passwd.byuid
groups.byname
groups.byuid
hosts
netgroup

Картыpasswd.bynamepasswd.byuidgroups.bynamegroups.byuidhostsnetgroup

Слайд 33Схема работы клиента
приложение
Получение имени пользователя
Библиотечный вызов
getpwent
Обращение к локальной копии карты
passwd.byname
Возвращаем

если есть
Ypbind
Периодически
Вызывает сервер
RPC сервера
Получить карту

Схема работы клиентаприложениеПолучение имени пользователяБиблиотечный вызовgetpwentОбращение к локальной копии картыpasswd.bynameВозвращаем если естьYpbindПериодическиВызывает серверRPC сервераПолучить карту

Слайд 34Недостатки NIS
Рассчитан на широковещательные запросы и следовательно только на локальные

сети
Слабые средства обеспечения безопасности
Пароли передаются по сети (в зашифрованном виде)

Недостатки NISРассчитан на широковещательные запросы и следовательно только на локальные сетиСлабые средства обеспечения безопасностиПароли передаются по сети

Слайд 35Схема работы клиента
приложение
Получение имени пользователя
Библиотечный вызов
getpwent
Обращение к серверу

Схема работы клиентаприложениеПолучение имени пользователяБиблиотечный вызовgetpwentОбращение к серверу

Слайд 36Служба каталогов (directory service)
Служба каталогов – иерархическая база данных информации,

организованная в виде дерева с отношениями родитель-потомок, по аналогии с

организацией файловой системы
С помощью службы каталогов можно выполнять поиск необходимых данных
Первоначально такие системы разрабатывалась для создания информационных систем масштабов Интернет в 1990-х годах
Для работы с распределенными каталогами был разработан протокол LDAP
Служба каталогов (directory service)Служба каталогов – иерархическая база данных информации, организованная в виде дерева с отношениями родитель-потомок,

Слайд 37Пример
Файловая система

/
/home
/home/saa
/home/saa/bin/hack
Интернет-каталог

/Ukraine
/Ukraine/Kyiv
/Ukraine/Kyiv/University
/Ukraine/Kyiv/University/cluster

ПримерФайловая система//home/home/saa/home/saa/bin/hackИнтернет-каталог/Ukraine/Ukraine/Kyiv/Ukraine/Kyiv/University/Ukraine/Kyiv/University/cluster

Слайд 38Интернет каталог
c=UA
o=Kyiv University, c=UA
ou=ICC,o=Kyiv University,c=UA
ou=cluster,ou=ICC,o=Kyiv University,c=UA

с – country
o – organization
ou

– organization unit
cn – common name

Полный путь к элементу каталога

называется
Distinguished Name (DN)
/C=ch/O=AliEn/OU=ALICE/CN=alien.univ.kiev.ua/SE
Интернет каталогc=UAo=Kyiv University, c=UAou=ICC,o=Kyiv University,c=UAou=cluster,ou=ICC,o=Kyiv University,c=UAс – countryo – organizationou – organization unitcn – common nameПолный путь

Слайд 39Объекты
Каждый элемент каталога является объектом (аналог файла)
Объекты бывают
Контейнерными (аналог каталога

файловой системы)
«Листовыми» (аналог файла)
Каждый объект имеет набор атрибутов и набор

значений этих атрибутов
Какие атрибуты и типы значений в каком объекте допустимы определяется схемой объекта
ОбъектыКаждый элемент каталога является объектом (аналог файла)Объекты бываютКонтейнерными (аналог каталога файловой системы)«Листовыми» (аналог файла)Каждый объект имеет набор

Слайд 40Пример объекта каталога
# saa, People, cluster, ICC, Kyiv University, UA
dn:

uid=saa,ou=People,ou=cluster,ou=ICC,o=Kyiv University,c=UA
uid: saa
cn: Olexandr O. Sudakov
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
shadowMax:

99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/saa
description: Olexandr O. Sudakov,Information & Computer Center National Taras
Shevchenko University of Kyiv, 266 05 30, saa@univ.kiev.ua
shadowLastChange: 12606
Пример объекта каталога# saa, People, cluster, ICC, Kyiv University, UAdn: uid=saa,ou=People,ou=cluster,ou=ICC,o=Kyiv University,c=UAuid: saacn: Olexandr O. SudakovobjectClass: accountobjectClass:

Слайд 41Схема LDAP
Схема определяет
тип объекта
какие атрибуты и какого типа

могут быть в объекте
Какие атрибуты обязательны, а какие – нет
Существуют

стандартизированные схемы
Можно создавать свои схемы путем наследования существующих
Схема LDAPСхема определяет тип объекта какие атрибуты и какого типа могут быть в объектеКакие атрибуты обязательны, а

Слайд 42Пример LDAP каталога

Пример LDAP каталога

Слайд 43LDAP сервер
Функции
Хранение
Поиск
Аутентификация
Запись
Шифрование/дешифрование
Сетевой сервер
База данных
Сетевой запрос

LDAP серверФункцииХранениеПоискАутентификацияЗаписьШифрование/дешифрованиеСетевой серверБаза данныхСетевой запрос

Слайд 44Обеспечение надежности и балансировка
LDAP – иерархическая система
Для каждого элемента каталога

может существовать свой сервер
LDAP – поддерживает вспомогательные сервера, которые хранят

ту же информацию, что и главные
Вспомогательные сервера можно использовать для балансировки нагрузки
Обеспечение надежности и балансировкаLDAP – иерархическая системаДля каждого элемента каталога может существовать свой серверLDAP – поддерживает вспомогательные

Слайд 45Использование LDAP
Служба имен для очень больших организаций
GRID системы
Службы имен

для распределенных систем с сильно географически распределенными компонентами
В локальных сетях,

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

Слайд 46Переключатель служб имен

Переключатель служб имен

Слайд 47Nsswsitch (NSS)
Middleware
Виртуализация служб имен
Быстрое подключение новой службы имен
Впервые

появилось в ОС Solaris
Сейчас есть в каждой современной операционной системе

Nsswsitch (NSS) MiddlewareВиртуализация служб имен Быстрое подключение новой службы именВпервые появилось в ОС SolarisСейчас есть в каждой

Слайд 48Linux NSS
Включено в библиотеку glibc
В конфигурационном файле администратор может установить

необходимые параметры

passwd: files ldap
shadow: files ldap
group:

files ldap

#hosts: db files nisplus nis dns
hosts: files dns ldap

Linux NSSВключено в библиотеку glibcВ конфигурационном файле администратор может установить необходимые параметрыpasswd:   files ldapshadow:

Слайд 49Пример работы клиента
Приложение
ls –l /home
Какой пользователь имеет
uid =1000 ?
Библиотечный

вызов
getpw_by_uid
Обращение к nss
Модуль file:
Файл passwd?
Uid отсутствует
Модуль ldap:
Uid найден
Обращение к
серверу
Возвращается
Пользователь

saa
Пример работы клиентаПриложениеls –l /homeКакой пользователь имеет uid =1000 ?Библиотечный вызовgetpw_by_uidОбращение к nssМодуль file:Файл passwd?Uid отсутствуетМодуль ldap:Uid

Слайд 50Кэширование nss
Обращение каждый раз к удаленным серверам приводит к большим

затратам времени и перегруженности сети
В nss существует специальная система кэширования

всех известных данных
nscd
Кэширование nssОбращение каждый раз к удаленным серверам приводит к большим затратам времени и перегруженности сетиВ nss существует

Слайд 51AAA (Authentication, Authorization, Accounting)
Аутентификация
Кто такой?
Авторизация
Что можно делать
Учет ресурсов
Что делалось

в процессе работы

AAA (Authentication, Authorization, Accounting)АутентификацияКто такой? АвторизацияЧто можно делатьУчет ресурсовЧто делалось в процессе работы

Слайд 52PAM – pluggable authentication modules
По аналогии с nss использование нескольких

систем авторизации, аутентификации, учета
Данные из локальных файлов
LDAP
NIS
RADIUS
Реализована в виде модулей,

из которых последовательно вызываются необходимые функции
PAM – pluggable authentication modulesПо аналогии с nss использование нескольких систем авторизации, аутентификации, учетаДанные из локальных файловLDAPNISRADIUSРеализована

Слайд 53Пример работы PAM
Пользователь
ввел имя и пароль
Программа
login
Модуль UNIX
Вызов функции auth()
Авторизация

через файл
/etc/passwd
Неудачно
Модуль LDAP
Вызов функции auth()
Авторизация через LDAP
Удачно
Пользователю
Разрешается
Вход в систему
Обращение


к серверу
Пример работы PAMПользователь ввел имя и парольПрограммаloginМодуль UNIXВызов функции auth()Авторизация через файл/etc/passwdНеудачноМодуль LDAPВызов функции auth()Авторизация через LDAPУдачноПользователю

Слайд 54Пример общего конфигурационного файла
# This file is auto-generated.
# User changes

will be destroyed the next time authconfig is run.
auth

required /lib/security/$ISA/pam_env.so
auth sufficient /lib/security/$ISA/pam_unix.so likeauth nullok
auth sufficient /lib/security/$ISA/pam_ldap.so use_first_pass
auth required /lib/security/$ISA/pam_deny.so

account sufficient /lib/security/$ISA/pam_succeed_if.so uid < 100
#account required /lib/security/$ISA/pam_listfile.so item=user sense
=deny file=/etc/security/nologin_users onerr=succeed
#account [default=bad success=ok user_unknown=ignore service_err=ignore s
ystem_err=ignore] /lib/security/$ISA/pam_ldap.so
account required /lib/security/$ISA/pam_access.so
account sufficient /lib/security/$ISA/pam_unix.so
account [default=bad success=ok user_unknown=ignore service_err=ignore sy
stem_err=ignore] /lib/security/$ISA/pam_ldap.so

password required /lib/security/$ISA/pam_cracklib.so retry=3 type=
password sufficient /lib/security/$ISA/pam_unix.so nullok use_authtok m
d5 shadow
password sufficient /lib/security/$ISA/pam_ldap.so use_authtok
password required /lib/security/$ISA/pam_deny.so

Пример общего конфигурационного файла# This file is auto-generated.# User changes will be destroyed the next time authconfig

Слайд 55Вопросы ?

Вопросы ?

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика