Содержание статьи:
Если вам не интересно как работает LDAP и вам нужны только инструметы, то можете пропустить этот раздел и сразу перейти к инструментам.
Новичкам же которые не представляют себе что вообще за LDAP такой, прошу под кат.
Дискеймер:
Автор не далеко не мастер работы с LDAP, и не претендует. Статья расчитана на новичков, которые вчера услышали про LDAP.
Ну или для тех кто не определился с инструментом. Вообщем поехали.
Ликбез по LDAP
Как гласит вики:
Общая информация:
Если говорить языком по проще, то:
Кроме того:
LDAP определяет четыре модели:
Картинка схематично описывает вышесказанное
Информационная модель:
В LDAP-системе данные представлены как иерархия объектов, каждый из которых называется записью. Верхнюю часть данного дерева обычно называют корнем (root), (а также базой (base) или суффиксом (suffix)).
У каждой записи есть одна родительская запись (объект) и ноль или более дочерних записей (объектов).
Каждая запись состоит из (является экземпляром) одного или нескольких объектных классов (objectClass). Объектные классы содержат ноль или более атрибутов (attribute). Атрибуты имеют имена (и, иногда, аббревиатуры или псевдонимы) и обычно содержат данные (наконец-то!).
Остальное — детали. Да, этих деталей, пожалуй, очень много. Но суть LDAP именно в этом.
Вот схема.
Аутентификация:
В LDAP v3 есть два варианта аутентификации LDAP - простой и SASL (Simple Authentication and Security Layer):
в которой он подробно описал проблемы испольования LDAP как системы аутентификации.
Запросы LDAP:
Запрос LDAP - это команда, которая запрашивает у службы каталогов некоторую информацию.
Как пример, вот запрос получения групп в которые входит пользователь:
Источники:
Если хотите больше информации по деталям протокола LDAP то прошу сюда.
Информацию для этой части брал отсюда, заходите если не хватило подробностей.
Вот глава про модель безопасности, если кому-то нужно только это.
C ликбезом всё, переходим к инструментам!
Инструменты работы с LDAP:
ldapsearch:
ldapsearch - это интерфейс командной строки к API ldap_search. Если утилита ldapsearch найдет одну или несколько записей, то значения указанных атрибутов этих записей будут переданы в стандартный поток вывода. Если атрибуты не указаны, то возвращаются все атрибуты.
Установка:
Ubuntu:
RedHat/CentOS:
Arch:
Формат:
Полный cheetsheet по аргументам.
JXplorer:
JXplorer - бесплатный ldap браузер, с помощью которого вы сможете перемещаться по LDAP дереву и запрашивать любые атрибуты.
Инструмент для тех кому больше по душе графика, или для новичков которым пока тяжеловато лазать по LDAP серверам через консоль.
Установка:
У проекта есть сайт.
Проме того, он Open Source, вот их git
Вместо заключения:
Тк это моя первая авторская статья для форума, получилась она не большой.
Если есть ошибки в тексте, или материал не актуален, не стесняйтесь писать.
Не забывайте ставить реакции.
Jeleshka
@Cпециально для xss.pro
- Ликбез по LDAP
- Общая информация
- Информационная модель
- Аутентификация
- Запросы
- Источники
- Инструменты работы с LDAP
- ldapsearch
- Установка
- Формат
- JXplorer
- Установка
- Прочее
- ldapsearch
- Вместо заключения
Если вам не интересно как работает LDAP и вам нужны только инструметы, то можете пропустить этот раздел и сразу перейти к инструментам.
Новичкам же которые не представляют себе что вообще за LDAP такой, прошу под кат.
Дискеймер:
Автор не далеко не мастер работы с LDAP, и не претендует. Статья расчитана на новичков, которые вчера услышали про LDAP.
Ну или для тех кто не определился с инструментом. Вообщем поехали.
Ликбез по LDAP
Как гласит вики:
Код:
LDAP (англ. Lightweight Directory Access Protocol — «легковесный протокол доступа к каталогам») — протокол прикладного уровня для доступа к службе каталогов X.500,
разработанный IETF как облегчённый вариант разработанного ITU-T протокола DAP.
Общая информация:
Если говорить языком по проще, то:
Код:
LDAP — это всего лишь протокол, определяющий методы, посредством которых осуществляется доступ к данным каталога. Он также определяет и описывает,
как данные представлены в службе каталогов (Модель данных или Информационная модель).
Наконец, он определяет, каким образом данные загружаются (импортируются) и выгружаются (экспортируются) из службы каталогов (с использованием LDIF).
Кроме того:
Код:
LDAP не определяет, как происходит хранение и манипулирование данными. С точки зрения стандарта хранилище данных и методы доступа к нему — это "чёрный ящик",
за который, как правило, отвечают модули back-end
LDAP определяет четыре модели:
- Информационная модель: модель данных (или информационная модель) определяет, каким образом информация или данные представлены в системе LDAP. Это может совпадать или не совпадать с фактическим методом представления данных в хранилище на физическом носителе. Как упоминалось выше, вопрос хранилищ данных лежит за пределами стандартов LDAP.
- Модель именования: определяет все вещи наподобие 'dc=example,dc=com', с которыми Вы сталкиваетесь в системах LDAP.
- Функциональная модель: при чтении, поиске, записи или модификации LDAP Вы используете функциональную модель — кто бы мог подумать!
- Модель безопасности: эта модель также включает в себя защиту данных при передаче по сети, такую как TLS/SSL.
Картинка схематично описывает вышесказанное
Информационная модель:
В LDAP-системе данные представлены как иерархия объектов, каждый из которых называется записью. Верхнюю часть данного дерева обычно называют корнем (root), (а также базой (base) или суффиксом (suffix)).
У каждой записи есть одна родительская запись (объект) и ноль или более дочерних записей (объектов).
Каждая запись состоит из (является экземпляром) одного или нескольких объектных классов (objectClass). Объектные классы содержат ноль или более атрибутов (attribute). Атрибуты имеют имена (и, иногда, аббревиатуры или псевдонимы) и обычно содержат данные (наконец-то!).
Остальное — детали. Да, этих деталей, пожалуй, очень много. Но суть LDAP именно в этом.
Вот схема.
Аутентификация:
В LDAP v3 есть два варианта аутентификации LDAP - простой и SASL (Simple Authentication and Security Layer):
- Анонимная аутентификация: предоставляет клиенту анонимный статус для LDAP.
- Аутентификация без аутентификации: только для целей регистрации, не должна предоставлять доступ клиенту.
- Аутентификация по имени или паролю: Предоставляет доступ к серверу на основе предоставленных учетных данных
- Аутентификация SASL: связывает сервер LDAP с другим механизмом аутентификации, таким как Kerberos.
в которой он подробно описал проблемы испольования LDAP как системы аутентификации.
Запросы LDAP:
Запрос LDAP - это команда, которая запрашивает у службы каталогов некоторую информацию.
Как пример, вот запрос получения групп в которые входит пользователь:
Код:
(&(objectClass=user)(sAMAccountName=yourUserName)
(memberof=CN=YourGroup,OU=Users,DC=YourDomain,DC=com))
Источники:
Если хотите больше информации по деталям протокола LDAP то прошу сюда.
Информацию для этой части брал отсюда, заходите если не хватило подробностей.
Вот глава про модель безопасности, если кому-то нужно только это.
C ликбезом всё, переходим к инструментам!
Инструменты работы с LDAP:
ldapsearch:
ldapsearch - это интерфейс командной строки к API ldap_search. Если утилита ldapsearch найдет одну или несколько записей, то значения указанных атрибутов этих записей будут переданы в стандартный поток вывода. Если атрибуты не указаны, то возвращаются все атрибуты.
Установка:
Ubuntu:
sudo apt install ldap-utilsRedHat/CentOS:
yum install openldap*Arch:
pacman -S openldapФормат:
Код:
ldapsearch [-a преобразование] [-A] [-b база-поиска] [-B] [-c шаблон] [-C набор-символов]
[-d уровень-отладки][-D dn-подключения] [-e] [-f файл] [-F разделитель] [-G область] [-h хост-ldap]
[-i файл][-j ограничение] [-J ограничение] [-k] [-K файл-ключей]
[-l предельное-время] [-L] [-m механизм] [-M] [-n] [-N сертификат]
[-o тип-атрибута] [-O макс.-число] [-p порт-ldap] [-P пароль-файла-ключей] [-q размер-страницы]
[-R] [-s область] [-t] [-T секунд] [-U имя-пользователя] [-v] [-V версия]
[-w пароль | ?] [-x] [-y dn-прокси] [-Y] [-z ограничение-размера] [-Z]
filter [-9 p] [-9 s] [attrs…]
Полный cheetsheet по аргументам.
JXplorer:
JXplorer - бесплатный ldap браузер, с помощью которого вы сможете перемещаться по LDAP дереву и запрашивать любые атрибуты.
Инструмент для тех кому больше по душе графика, или для новичков которым пока тяжеловато лазать по LDAP серверам через консоль.
Установка:
- Ставим Java
- Качаем архив отсюда
- Извлекаем в /opt
- Далее добавляем права:
chmod +x jxplorer.sh - Запуск:
./opt/jxplorer/jxplorer.sh
У проекта есть сайт.
Проме того, он Open Source, вот их git
Вместо заключения:
Тк это моя первая авторская статья для форума, получилась она не большой.
Если есть ошибки в тексте, или материал не актуален, не стесняйтесь писать.
Не забывайте ставить реакции.
Jeleshka
@Cпециально для xss.pro
Вложения
Последнее редактирование: