# mini-ldap Легковесный LDAP сервер на Python с поддержкой Active Directory атрибутов для тестирования и разработки. ## 🎯 Возможности - ✅ **Cовместимость с AD** - ✅ **Поддержка основных операций** - BIND, SEARCH, MODIFY, ADD, DELETE - ✅ **Wildcard поиск** - поддержка масок в фильтрах - ✅ **Динамические тестовые пользователи** - генерация до 10,000+ пользователей на лету - ✅ **Высокая производительность** - индексы, кэширование, асинхронная запись - ✅ **Гибкая конфигурация** - внешний INI файл с настройками - ✅ **Debug режим** - детальное логирование для отладки ## 🔧 Установка собранного пакета ```bash # На ЛЮБОЙ машине Debian/Ubuntu sudo dpkg -i mini-ldap_1.0.0_all.deb # Запуск sudo systemctl start mini-ldap # Проверка sudo systemctl status mini-ldap # Логи sudo journalctl -u mini-ldap -f ``` ## 📖 Документация ### Основные команды: ```bash # Управление сервисом sudo systemctl start mini-ldap sudo systemctl stop mini-ldap sudo systemctl status mini-ldap sudo journalctl -u mini-ldap -f ``` ## 👥 Управление пользователями ### Утилита `mini-ldap-manage`: ```bash # Список всех пользователей sudo mini-ldap-manage list # Добавить пользователя (минимум) sudo mini-ldap-manage add john password123 # Добавить пользователя (полный вариант) sudo mini-ldap-manage add jane pass456 jane@company.com "Jane" "Smith" # Показать детали пользователя sudo mini-ldap-manage show john # Изменить пароль sudo mini-ldap-manage passwd john newpass789 # Удалить пользователя sudo mini-ldap-manage delete john # Добавить дополнительный email sudo mini-ldap-manage addproxy john john.doe@company.com # Справка sudo mini-ldap-manage help После изменений пользователей перезапускать сервер НЕ нужно - изменения применяются автоматически! ``` ## 🔐 Дефолтные учётные записи | Username | Password | Email | Роль | DN | |----------|----------|-------|------|-----| | admin | admin123 | admin@example.com | Администратор | cn=admin,dc=example,dc=com | | user1 | password123 | ivan@example.com | Пользователь | uid=user1,ou=users,dc=example,dc=com | | user2 | password456 | petr@example.com | Пользователь | uid=user2,ou=users,dc=example,dc=com | | testUser1-100 | test123 | testuser{N}@emailaddr.com | Тестовые | uid=testUser{N},ou=users,dc=example,dc=com | ⚠️ **ВАЖНО:** Для тестовых(lbyfvbxtcrb[]) пользователей не работает MODIFY, DELETE ## 🧪 Тестирование ```bash # Поиск всех пользователей ldapsearch -x -H ldap://localhost:10389 \ -D "cn=admin,dc=example,dc=com" \ -w admin123 \ -b "dc=example,dc=com" \ "(objectClass=person)" # Поиск конкретного пользователя ldapsearch -x -H ldap://localhost:10389 \ -D "cn=admin,dc=example,dc=com" \ -w admin123 \ -b "dc=example,dc=com" \ "(uid=user1)" -LLL # Авторизация как пользователь ldapsearch -x -H ldap://localhost:10389 \ -D "uid=user1,ou=users,dc=example,dc=com" \ -w password123 \ -b "dc=example,dc=com" \ "(uid=user1)" -LLL ``` ## 🗑️ Удаление ```bash # Удалить пакет (сохранить конфиги) sudo apt remove mini-ldap # Полное удаление (включая конфиги и данные) sudo apt purge mini-ldap ```