====== Управління LDAP ====== ===== Важливо ===== LDAP сервер і його користувачі ніяк не співвідносяться з локальними адміністраторами Ubilling. \\ У статті ніяк не описано налаштування самого LDAP. Тут мається на увазі: що сервер уже налаштований і має якусь структуру груп, заповнені dc та інше. \\ Так само не буде ніяких описів з налаштування radius авторизації на самому залізі. ===== Основний опис ===== Тестовий майданчик: * ubuntu 16.04 * slapd із підтримкою MemberOf * freeradius Модуль призначений для управління користувачами на LDAP сервері. \\ Поточний функціонал: - Створення\видалення користувачів - Зміна паролів - Призначення привілеїв, через приналежність до тих чи інших груп - Створення та видалення груп впливає тільки на локальну БД і ніяк не впливає на наявність груп у самомуLDAP. Встановлення: - Усі потрібні файли лежать у docs/ldapmgr. Файли з розширенням ldif це шаблони - Розпакувати всі файли в одну папку на LDAP-сервері. У моєму випадку це /opt/ldap_scripts - Зробити chmod 777 /opt/ldap_scripts/* - Виправити ldapmgr.ini і scripts.ini під свої реалії - Зробити виклик users.php у crontab. В ідеалі запускати його раз на хвилину - Вимагає ввімкненого LDAPMGR_ENABLED у [[alteriniconf|alter.ini]] ===== Зв'язка з freeradius ===== Якщо ви хочете, щоб LDAP користувачі могли підключатися до вашого мережевого обладнання, то вибір не великий: radius або tacacs. Для себе я вибрав freeradius тому що більше з ним знайомий. Ось приклад, як можна обмежувати доступ до управління обладнання залежно від приналежності до групи. Усі імена груп лише приклад, ви можете використовувати будь-які зручні вам назви. * Користувач повинен належати до групи radius інакше авторизація не пройде * Користувач повинен належати до групи superadm або operators. Від цього залежить рівень прав. /etc/freeradius# cat users DEFAULT Ldap-Group != 'radius', Auth-Type := Reject DEFAULT Ldap-Group == "superadm" Cisco-AVPair = "shell:priv-lvl=15", dlink-Privelege-Level = 5, Huawei-Exec-Privilege = 15, User-Service-Type = Shell-User DEFAULT Ldap-Group == "operators" Cisco-AVPair = "shell:priv-lvl=1", dlink-Privelege-Level = 3, Huawei-Exec-Privilege = 16, User-Service-Type = Shell-User