تثبيت OpenLDAP على Debian 11
OpenLDAP
عبارة عن مجموعة برامج مجانية ومفتوحة المصدر لتطبيق LDAP ((Lightweight Directory Access Protocol).
OpenLDAP هو برنامج خفي LDAP قائم بذاته (stand-alone) يوفر مكتبات (libraries (libraries وأدوات مساعدة كما أنه يوفر دعمًا لمصادقة شهادة TLS ومصادقة SASL.
سنشرح هنا تثبيت OpenLDAP وإعداده على Debian 11 Bullseye.
المتطلبات الأساسية لتثبيت OpenLDAP
خادم Debian 11.
مستخدم غير root له صلاحيات sudo / root.
تثبيت OpenLDAP على Debian 11
سنقوم بتثبيت حزم OpenLDAP على خادمDebian 11.
قبل البدء في تثبيت حزم OpenLDAP ، قم بتشغيل الأمر "apt" أدناه لتحديث Debian's repository.
.
.
sudo apt update
قم بتثبيت حزم OpenLDAP " الـ slapd " و " ldap-utils ".
الحزمة ' slapd ' هي الحزمة الرئيسية لـ OpenLDAP وتوفر ' ldap-utils ' أدوات مساعدة لسطر الأوامر (command-line) لإدارة خادم OpenLDAP.
sudo apt install slapd ldap-utils
اكتب " Y " واضغط على " ENTER " لتأكيد التثبيت.
سيُطلب منك الآن إعداد كلمة المرور لمستخدم OpenLDAP المسئول (admin).
أدخل كلمة المرور الخاصة بك واختر " OK " ، ثم اضغط على " ENTER ".
كرر كلمة المرور الخاصة بك واختر " OK " ، ثم اضغط على " ENTER " مرة أخرى.
اكتمل تثبيت OpenLDAP.
إعداد خادم OpenLDAP
بعد تثبيت حزم OpenLDAP ، ستقوم الآن بإعداد OpenLDAP على خادم Debian.
لنقم بإعداد FQDN للخادم باستخدام الأمر التالي.
sudo hostnamectl set-hostname ldap.mydomain.local
الآن قم بتحرير ملف " etc / hosts " باستخدام محرر nano.
sudo nano /etc/hosts
انسخ والصق الإعدادات التالية ، وتأكد من تغيير عنوان IP بعنوان IP للخادم الخاص بك ، و FQDN مع اسم المضيف واسم المجال المحلي.
192.168.10.50 ldap.mydomain.local ldap
احفظ وأغلق الملف.
قم بتسجيل الخروج من جلسة SSH الحالية الخاصة بك وقم بتسجيل الدخول مرة أخرى إلى الخادم الخاص بك.
بعد ذلك ، قم بتشغيل الأمرالتالي لإعادة إعداد حزمة OpenLDAP الـ slapd.
sudo dpkg-reconfigure slapd
اختر No عندما يُطلب منك delete/omit إعدادات OpenLDAP القديمة.
ادخل الآن اسم المجال المحلي (local domain name) لـ DNS لخادم OpenLDAP الخاص بك وحدد OK.
ادخل اسم المؤسسة (organization) وحدد OK.
اختياريًا يمكنك تركه افتراضيًا بنفس اسم اسم المجال.
أدخل الآن كلمة مرور مسؤول OpenLDAP وحدد OK للمتابعة.
قم بتأكيد كلمة مرور مسؤول OpenLDAP وحدد OK مرة أخرى.
حدد " NO " عندما يُطلب منك حذف قاعدة بيانات slapd القديمة.
حدد الآن Yes لنقل قاعدة بيانات slapd القديمة.
اكتمل إعداد حزم OpenLDAP الآن.
للتحقق من إعدادات OpenLDAP ، قم بتشغيل الأمر " slapcat "
sudo slapcat
ستحصل على نتيجة مشابهة للصورة التالية
اعد تشغيل خدمة " slapd " لتطبيق التغييرات الجديدة.
ثم تحقق من حالة خدمة " slapd ".
sudo systemctl restart slapd
sudo systemctl status slapd
ستحصل على حالة الخدمة " slapd " على أنها " active (قيد التشغيل) ".
إعداد جدار الحماية UFW
إذا كنت تقوم بتشغيل خادم Debian مع تمكين جدار حماية UFW ، فستحتاج إلى إضافة خدمة LDAP و LDAPS إلى جدار حماية UFW.
يوصى باستخدام جدار الحماية لأنه سيعزز أمان الخادم الخاص بك.
الآن قم بتشغيل الأمر ufw لإضافة خدمة LDAP و LDAPS إلى جدار الحماية ufw.
sudo ufw allow LDAP
sudo ufw allow LDAPS
اعد تحميل قاعدة جدار حماية UFW
sudo ufw reload
تحقق من قائمة الخدمات المسموح بها على جدار حماية UFW.
sudo ufw status
You should get the output like the screenshot below. The LDAP and LDAPS services are added to the UFW firewall.
ستحصل على نتيجة كما غي الصورة التالية
تم إضافة خدمات LDAP و LDAPS إلى جدار حماية UFW.
إعداد مجموعة المستخدمين (User Group)
غالبًا ما يتم استخدام خادم OpenLDAP للمصادقة على مجموعة من أجهزة الكمبيوتر أو الخوادم.
ستقوم بإعداد المجموعة على خادم OpenLDAP باستخدام ملف LDIF.
LDIF هو ملف لإدخالات LDAP ويمكن استخدامه لإدارة المستخدمين والمجموعات على خادم OpenLDAP.
قم بإنشاء ملف جديد " etc/ldap/users.ldif " باستخدام محرر nano .
sudo nano /etc/ldap/users.ldif
انسخ والصق الإعدادات التالية والتي ستؤدي إلى إنشاء مجموعة جديدة باسم " People " على اسم المجال " mydomain.local .
dn: ou=People,dc=mydomain,dc=local
objectClass: organizationalUnit
ou: People
احفظ واغلق الملف.
قم بتشغيل الأمر " ldapadd " لإضافة المجموعة المحددة في ملف "users.ldif" .
sudo ldapadd -D "cn=admin,dc=mydomain,dc=local" -W -H ldapi:/// -f /etc/ldap/users.ldif
سيُطلب منك إدخال كلمة مرور "admin" لخادم OpenLDAP.
سترى رسالة مثل 'adding new entry "ou=People,dc=mydomain,dc=local'.
للتحقق من المجموعة " People " ، قم بتشغيل الأمر " ldapsearch "
يعرض هذا الأمر المجموعات المتاحة على خادم OpenLDAP.
sudo ldapsearch -x -b "dc=mydomain,dc=local" ou
سترى مجموعة " People " متاحة على خادم OpenLDAP.
إعداد مستخدم جديد
بعد إعداد المجموعة على OpenLDAP ، يمكنك الآن إضافة مستخدم جديد إلى خادم OpenLDAP.
يمكن القيام بذلك باستخدام ملف LDIF وأداة سطر الأوامر "ldapadd".
قم بإنشاء ملف جديد " alice.ldif " باستخدام محرر nano .
sudo nano alice.ldif
انسخ والصق الإعدادات التالية وتأكد من تغيير كلمة المرور " AlicePassword " بكلمة مرور قوية.
في هذا المثال ، ستنشئ مستخدمًا جديدًا باسم " alice " باستخدام المجلد الرئيسي " / home / alice " والـ shell الافتراضي " / bin / bash ". أيضًا ، المستخدم " alice " هو جزء من مجموعة " People ".
# Add user alice to LDAP Server
dn: cn=alice,ou=People,dc=mydomain,dc=local
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
cn: alice
uid: alice
uidNumber: 10001
gidNumber: 10001
homeDirectory: /home/alice
userPassword: AlicePassword
loginShell: /bin/bash
احفظ واغلق الملف.
قم بتشغيل الأمر " ldapadd " لإضافة مستخدم جديد بناءً على ملف " alice.ldif ".
sudo ldapadd -D "cn=admin,dc=mydomain,dc=local" -W -H ldapi:/// -f alice.ldif
أدخل كلمة مرور مسؤول OpenLDAP ويجب أن تحصل على نتيجة مثل "adding new entry "cn=alice,ou=People,dc=mydomain,dc=local " مما يعني أن المستخدم الجديد " alice " قد تمت إضافته إلى خادم OpenLDAP.
قم بتشغيل الأمر " ldapsearch " للحصول على قائمة المستخدمين على خادم OpenLDAP.
sudo ldapsearch -x -b "ou=People,dc=mydomain,dc=local"
يجب أن تحصل على الإخراج مثل الصورة التالية.