Sortie du serveur LDAP ReOpenLDAP 1.2.0

La version officielle du serveur LDAP ReOpenLDAP 1.2.0 a été publiée, créée pour ressusciter le projet après avoir bloqué son référentiel sur GitHub. En avril, GitHub a supprimé les comptes et référentiels de nombreux développeurs russes associés à des entreprises soumises aux sanctions américaines, dont le référentiel ReOpenLDAP. En raison du regain d'intérêt des utilisateurs pour ReOpenLDAP, il a été décidé de redonner vie au projet.

Le projet ReOpenLDAP a été créé en 2014 pour résoudre les problèmes survenus lors de l'utilisation du package OpenLDAP dans l'infrastructure de PJSC MegaFon, où le serveur LDAP était impliqué dans l'un des sous-systèmes de l'infrastructure (NGDR est un UDR (User Data Repository), selon le 3GPP 23.335, et est un nœud centralisé de stockage de données sur tous types de services d'abonné dans l'infrastructure informatique de l'opérateur télécom). Une telle application supposait un fonctionnement industriel en mode 24h/7 et 10j/100 d'un annuaire LDAP spécifique d'une taille de 10 à 50 millions d'entrées, dans un scénario de charge élevée (XNUMX XNUMX mises à jour et XNUMX XNUMX lectures par seconde) et dans une topologie multi-maître.

Symas Corp, en tant que principaux développeurs, committers et propriétaires du code OpenLDAP, n'a pas été en mesure de résoudre les problèmes qui se sont posés, ils ont donc décidé d'essayer de le faire eux-mêmes. Comme il s’est avéré plus tard, il y avait beaucoup plus d’erreurs dans le code que ce à quoi on aurait pu s’attendre. Par conséquent, plus d'efforts ont été déployés que prévu, et ReOpenLDAP représente toujours une certaine valeur et (selon les informations disponibles) est le seul serveur LDAP qui prend en charge de manière complète et fiable la topologie multi-maître pour RFC-4533, y compris dans des scénarios de charge élevée.

En 2016, les objectifs du projet ont été atteints et le soutien et le développement du projet directement dans l'intérêt de MegaFon PJSC ont été achevés. Ensuite, ReOpenLDAP a été activement développé et soutenu pendant encore trois ans, mais a progressivement perdu son sens :

  • Technologiquement, MegaFon a migré de ReOpenLDAP vers Tarantool, ce qui est architecturalement correct ;
  • Il n’y avait aucun utilisateur ReOpenLDAP clairement intéressé ;
  • Aucun des développeurs n'a rejoint le projet, à la fois en raison du seuil d'entrée élevé et de la faible demande pour ReOpenLDAP lui-même ;
  • Le développement et le support ont commencé à prendre trop de temps de la part du développeur (principal) restant, à mesure qu'il s'éloignait professionnellement de l'exploitation industrielle de ReOpenLDAP.

Dans un état inactif, le référentiel ReOpenLDAP a existé jusqu'en avril 2022, date à laquelle l'administration Github a supprimé les comptes associés et le référentiel lui-même sans aucun avertissement ni explication. Récemment, l'auteur a reçu plusieurs demandes concernant ReOpenLDAP, notamment l'emplacement du référentiel et l'état de la base de code. Par conséquent, il a été décidé de mettre à jour le projet au minimum, de créer une version technique et d'utiliser cette actualité pour informer toutes les personnes intéressées.

État actuel du projet, y compris concernant OpenLDAP :

  • Les améliorations et correctifs n'ont pas été importés depuis OpenLDAP depuis décembre 2018. Pour les applications critiques, vous devez analyser tous les correctifs dans OpenLDAP et importer ceux qui sont pertinents.
  • Les versions actuelles d'OpenLDAP sont désormais basées sur la branche 2.5. Ainsi, les modifications décrites ci-dessous ont été effectuées uniquement dans la branche « devel » (qui correspondait à OpenLDAP 2.5), puis fusionnées dans la branche « master » (qui correspondait à OpenLDAP 2.4 avant la fusion).
  • En 2018, les problèmes de configuration-backend hérités d'OpenLDAP ont persisté. En particulier, lors de la modification de la configuration du serveur via config-backend (configuration de LDAP via LDAP), des conditions de concurrence critique ou des problèmes récursifs, notamment des blocages, se produisent.
  • Vraisemblablement, il y a des problèmes de construction avec les versions actuelles d'OpenSSL/GnuTLS ;
  • Réussit un ensemble de tests propriétaires de base, à l'exception de ceux nécessitant TLS/SSL ;

Dernières améliorations :

  • La bibliothèque libmdbx a été mise à jour vers la dernière version, éliminant tous les problèmes d'incompatibilité constatés dus au développement de la bibliothèque. Cependant, il reste probablement des informations obsolètes dans les pages de manuel.
  • La version actuelle d'autotools 2.71 est utilisée.
  • Des modifications mineures ont été apportées suite à certains avertissements du compilateur gcc 11.2 actuel.

Source: opennet.ru

Ajouter un commentaire