پروتکل LDAP چیست؟
پروتکل LDAP نسخه سبک تر شده پروتکل DAP میباشد و هر دو آنها به عنوان بخشی از استاندارد X.500 هستند که استاندارد Directory Services میباشد. به زبان ساده LDAP پروتکلی است که به ما در پیدا کردن اطلاعات و پرونده های مربوطه و مورد نیازمان چه درون یک سازمان چه درون اینترنت کمک میکند و این فرایند را راحت تر میسازد.

بررسی مفهوم Directory Services
به طور کاملا ساده Directory Services به کاربران در پیدا کردن اطلاعات و فایل های واقع شده در یک مکان کمک میکند.
به عنوان مثال پروتکل DNS به عنوان یک دفترچه تلفن حاوی اطلاعات آدرس IP و Domain Name است. کاربران زمانی که بخواهند وارد وب سایت KaliBoys.com شوند درصورتی که آدرس آن را در مرورگر خود وارد میکنند در پشت این آدرس، آدرس IP وب سرور کالی بویز قرار گرفته است و لود می شود تا آن ها را حفظ نکنیم.
یک نمونه کامل از یک Directory Service بسیار شبیه پروتکل DNS میباشد و پروتکل LDAP نیز به همین شکل است و به کاربران اجازه میدهد بدون اینکه از مکان یک کاربر یا یک فایل اطلاعی داشته باشند آن را پیدا کنند.
برای چه از LDAP استفاده کنیم؟!
بیشترین استفاده هایی که از پروتکل LDAP میشود احراز هویت میباشد. زیرا اکثر تجهیزات همچون فایروال های سخت افزاری، روترها و سرورها به راحتی از LDAP پشتیبانی میکنند و میتوانیم با قرار دادن UserName و Password فرایند احراز هویت خودمان را با استفاده از پروتکل LDAP به راحتی فراهم سازیم.
از جمله تجهیزات و نرم افزارهایی که از این پروتکل برای احراز هویت خود استفاده و یا پشتیبانی میکنند عبارتند از Docker, Jenkins, Kubernetes, Open VPN و پروتکل اشتراک گذاری فایل لینوکسی Samba. علاوه بر این مدیران سیستم و متخصصین از LDAP برای مدیریت و دسترسی بهتر به پایگاه های داده نیز استفاده میکنند.
بررسی LDAP Authentication
دو روش برای پیاده سازی احراز هویت در LDAPv3 وجود دارد.
- گزینه Simple
- گزینه SASL(Simple Authentication Security Layer)
احراز هویت Simple
اینگونه احراز هویت در LDAP به سه شکل ارائه میشود که به شرح زیر هستند:
- Anonymous Authentication: در این روش به شکل ناشناس کاربران در LDAP احراز هویت میکنند و وضعیت آنها را ارائه میدهند.
- Unauthenticated authentication: از این روش فقط برای اهداف خاص استفاده میشود و کاربر اجازه دسترسی به منابع و فایل هارا ندارد.
- UserName/Password Authentication: این روش همانطور که از اسم آنهم پیداست از احراز هویت بر اساس UserName و Password استفاده میکنند اما استفاده از این روش درصورتی که از پروتکل ایمنی برای رمزنگاری استفاده نشود کار معقولی نمیباشد.
احراز هویت SASL
روش احراز هویت برپایه SASL در واقع LDAP را به یک مکانیزم احراز هویت دیگر مانند Kerberos متصل میسازد. سرور LDAP ما از طریق پروتکل LDAP پیغام های LDAP را به سمت یک سرویس دیگر به منظور انجام احراز هویت انتقال میدهد.
بررسی LDAP Query
LDAP Query ها دستوراتی هستند که از Directory Services مورد نظر اطلاعات خاصی را درخواست میکنند. به عنوان مثال قصد داریم بفهمیم که یک کاربر در کدام یک از گروه های Directory Services ما وجود دارد LDAP Query ما به شکل زیر می باشد.
(&(objectClass=user)(sAMAccountName=yourUserName)
نصب و راه اندازی LDAP در سرورهای لینوکسی (Debian-Based)
برای راه اندازی و اجرای LDAP راه های بسیار زیادی وجود دارد از جمله آنها نرم افزار OpenLDAP میباشد که یک نرم افزار رایگان و آزاد برای راه اندازی LDAP است. مراحل نصب و اجرا سازی OpenLDAP را بر روی یک سرور لینوکسی قدم به قدم پیش میبریم.
مرحله اول: آپدیت سیستم و مخازن آن
sudo apt update
sudo apt upgrade
مرحله دوم: نصب OpenLDAP
sudo apt install slapd ldap-utils
درحین نصب از شما سوالاتی مبنی بر پسورد سرور LDAP و آدرس سرور DNS پرسیده میشود که برحسب نیاز خودتان وارد کنید.
نصب و راه اندازی LDAP در سرورهای ویندوزی
برای نصب و راه اندازی LDAP در سرور های ویندوزی میبایستی سرویس Active Directory را در سرور ویندوز نصب کنید تا به همراه آن پروتکل LDAP نیز نصب شود.
موفق و پیروز باشید/
در حال ثبت رای