Реліз LDAP-сервера ReOpenLDAP 1.2.0

Опубліковано формальний випуск LDAP-сервера ReOpenLDAP 1.2.0, сформований для воскресіння проекту після блокування його репозиторію на GitHub. У квітні GitHub видалив облікові записи та репозиторії багатьох російських розробників, пов'язаних із компаніями, які потрапили під санкції США, включаючи репозиторій ReOpenLDAP. У зв'язку із відродженням інтересу користувачів до ReOpenLDAP проект вирішено повернути до життя.

Проект ReOpenLDAP був створений у 2014 році для вирішення проблем, що виникли при використанні пакету OpenLDAP в інфраструктурі ПАТ «Мегафон», де LDAP-сервер був задіяний в одній із підсистем інфраструктури (NGDR є UDR (User Data Repository), згідно стандарту 3GPP 23.335, та є централізованим вузлом для зберігання даних про всі види послуг абонентів в ІТ-інфраструктурі оператора зв'язку). Подібне застосування передбачало промислову експлуатацію в режимі 24×7 специфічного LDAP-каталогу, розміром 10-100 мільйонів записів, у високонавантаженому сценарії (10К оновлень та 50К читань за секунду) та у топології мульти-майстер.

Symas Corp, як основні розробники, коммітери та власники коду OpenLDAP, не змогли вирішити проблеми, тому було вирішено спробувати зробити це самостійно. Як згодом з'ясувалося, помилок у коді було набагато більше, ніж можна було припускати. Тому було витрачено більше зусиль, ніж планувалося, а ReOpenLDAP, як і раніше, представляє певну цінність і (за наявною інформацією) є єдиним LDAP-сервером, що повноцінно і надійно підтримує мульти-майстер топологію для RFC-4533, у тому числі у високонавантажених сценаріях.

У 2016 році проектних цілей було досягнуто, а підтримка та розвиток проекту безпосередньо на користь ПАТ «Мегафон» завершена. Потім ReOpenLDAP активно розвивався і підтримувався ще три роки, але поступово це втратило сенс:

  • Технологічно "Мегафон" мігрував з ReOpenLDAP на Tarantool, що архітектурно вірно;
  • Не було явно зацікавлених користувачів ReOpenLDAP;
  • До проекту не приєднався будь-хто з розробників як через високий поріг входу, так і через низьку затребуваність самого ReOpenLDAP;
  • Розробка та підтримка стали забирати занадто багато часу у решти (основного) розробника, оскільки він професійно віддалився від промислової експлуатації ReOpenLDAP.

У неактивному стані репозиторій ReOpenLDAP проіснував до квітня 2022 року, коли адміністрація Github без будь-яких попереджень та пояснень видалила пов'язані акаунти і сам репозиторій. Останнім часом автор отримав кілька запитів щодо ReOpenLDAP, зокрема про розташування репозиторію і стан кодової бази. Тому було вирішено мінімально освіжити проект, сформувати технічний реліз, а цю новину використовуватиме інформування всіх зацікавлених.

Поточний стан проекту, у тому числі щодо OpenLDAP:

  • Імпорт доопрацювань та виправлень із OpenLDAP не проводився з грудня 2018 року. Для відповідальних застосувань потрібно проаналізувати всі виправлення OpenLDAP і імпортувати релевантні.
  • Актуальні версії OpenLDAP зараз формуються на основі гілки 2.5. Тому описані далі доробки були зроблені тільки у гілці devel (яка відповідала OpenLDAP 2.5), а потім влиті в master (яка до злиття відповідала OpenLDAP 2.4).
  • У 2018 році зберігалися успадковані від OpenLDAP проблеми із config-bakend-ом. Зокрема коли при зміні конфігурації сервера через config-bakend (конфігурування LDAP через LDAP) виникають стани гонок або рекурсивні неприємності, включаючи взаємоблокування (deadlocks).
  • Імовірно, існують проблеми складання з актуальними версіями OpenSSL/GnuTLS;
  • Проходить основний набір власних тестів, за винятком вимагають TLS/SSL;

Останні доопрацювання:

  • Бібліотека libmdbx оновлена ​​до актуальної версії з усуненням усіх помічених проблем несумісності, що виникли через розвиток бібліотеки. Проте, у man-сторінках, мабуть, залишилася якась застаріла інформація.
  • Задіяно актуальну версію autotools 2.71.
  • Зроблено невеликі редагування слідами частини попереджень актуального компілятора gcc 11.2.

Джерело: opennet.ru

Додати коментар або відгук