OpenLDAP is an open-source implementation of the LDAP protocol. An LDAP server basically is a non-relational database which is optimised for accessing, but not writing, data. It is mainly used as an address book (for e.g. email clients) or authentication backend to various services (such as Samba, where it is used to emulate a domain controller, or Linux system authentication, where it replaces /etc/passwd) and basically holds the user data

سلام دوستان . در این پست قصد داریم به معرفی و پیاده سازی ldap بر روی سرور لینوکسی دبیان بپردازیم .

برای این منظور ابتدا باید بسته ی slapd و ldap-utils را نصب کرد . به شکل زیر :

بعد از نصب پنجره ی کانفیگ در همان محیط ترمینال برای شما باز می شود . در قسمت اول باید پسوردی برای administrator در نظر بگیرید .

OSLearn.ir_001

بعد از وارد کردن پسورد و تمام شدن مراحل فایل زیر را با یک ویرایشگر باز می کنیم :

حال به دنبال دو خط زیر گشته :

و آن ها را متناسب با سرور خود تغییر می دهیم . به عنوان مثال :

توجه داشته باشید که # را از ابتدای هر دو خط بر می داریم .

حال دوباره به سراغ کانفیگ slapd می روریم :

در مرحله ی اول شما با پیغامی با مضمون Omit OpenLDAP server configuration? مواجه می شوید که آن را NO انتخاب می کنیم .

در مرحله ی بعد باید نام DNS خودتون رو انتخاب کنید . به عنوان مثال ما در این جا OSLearn.ir را انتخاب می کنیم . در ادامه Organization name را متناسب با سازمان خود انتخاب می کنیم که ما در این جا از همان oslearn استفاده خواهیم کرد :

OSLearn.ir_002در مرحله ی بعد از شما پسورد حساب administrator را می پرسد که باید مطابق با پسوردی که در مرحله ی قبل انتخاب کردید , این مرحله را رد کنید .

در مرحله ی بعد backend database را HDB انتخاب می کنیم و به مرحله ی بعد می رویم .

OSLearn.ir_003

در مرحله ی بعد از شما سوالی با مضمون Do you want the database to be removed when slapd is purged می پرسد که آن را No پاسخ می دهیم .

حال از شما سوال می پرسد که Move old database? که پاسخ مثبت یعنی Yes به این سوال داده و به مرحله ی بعد می رویم .

در آخر ldapv2 را با پاسخ NO دادن به سوال Allow LDAPv2 protocol? غیر فعال می کنیم :

OSLearn.ir_004

تمام ! حال برای تست ldap سرور خودمون به شکل زیر عمل می کنیم :

اگر مراحل را موفقیت آمیز طی کرده باشید باید خروجی ای مشابه به خروجی زیر دریافت کنید :

دقیقا همان طور که برای دیگر سرویس ها و … پنل های مدیریتی وجود دارد , برای این سرویس و پروتکل نیز پنل مدیریتی وجود دارد . اسم این پنل phpldapadmin می باشد که به صورت پیش فرض داخل مخارن وجود دارد . پس برای نصب بر روی سرور به شکل زیر عمل می کنیم :

به طور پیش فرض این پنل در آدرس /usr/share/phpldapadmin/ قرار میگیرد که برای استفاده از آن با استفاده از مرورگر , لازم است تا یک symbolic link از آن در دایرکتوری var/www/ تهیه کنیم :

قبل از اجرای این پنل لازم است تا تغییراتی را در فایل کانفیگ این پنل اعمال کنیم . برای این منظور فایل زیر را با یک ویرایشگر باز می کنیم :

در مرحله ی بعد به دنبال جملات زیر می گردیم :

و آن ها را متناسب با سرور خودمون تغییر می دهیم :

بعد از تغییرات بالا لازم است تا وب سرور یک بار راه اندازی مجدد شود . برای این منظور :

حال کافیست آدرس سرور خودمون رو به شکل زیر در مرورگر باز کنیم :

OSLearn.ir_05

برای ورود به پنل بر روی عبارت login از سمت چپ اقدام کنید سپس Login DN را به شکل زیر پر کنید :

توجه داشته باشید که اگر مراحل کانفیگ گفته شده در بالا را درست انجام داده باشید . قسمت Login DN متناسب با سازمان و سرور شما load می شود در غیر این صورت باید دستی این قسمت را پر کنید و در نهایت پسورد admin را وارد کنید .

OSLearn.ir_006

پس از وارد شدن به محیط پنل , از سمت راست بر روی dc خود کلیک کنید :

OSLearn.ir_007

در مرحله ی بعد بر روی گزینه ی Create new entry here و سپس بر روی گزینه ی Generic-Organizational Unit کلیک کنید .

حال برای Organisational Unit خود یک نام انتخاب کنید . به عنوان مثال OSServer

OSLearn.ir_008

Organisational Unit با موفقیت ساخته شد . حال یک گروه تشکیل می دهیم و در نهایت یوزر های خود را درون گروه اضافه می کنیم . برای این منظور از سمت چپ بر روی OU خود که در این جا ou=OSServer است کلیک کرده و در منوی سمت راست بر روی Create a child entry کلیک می کنیم .

OSLearn.ir_009

در پنجره ی باز شده بر روی Generic: Posix Group کلیک کرده و یک نام برای گروه خود انتخاب می کنیم . به عنوان مثال OSGroup :

OSLearn.ir_010

گروه با موفقت ساخته شد . حال همین روند را برای cn=OSGroup انجام می دهیم با این تفاوت که این بار یک یوزر می سازیم . به شکل زیر :

OSLearn.ir_011

مثل مرحله ی قبل بر روی Create a child entry کلیک کرده و سپس گزینه ی Generic: User Account را انتخاب می کنیم . حال اطلاعات خواسته شده برای یوزر را متناسب با سرور و سازمان خودمون مشخص می کنیم . به عنوان مثال :

OSLearn.ir_012

تمام ! حال برای مشاهده ی کلیه اطلاعات می توان از داخل سرور دستور زیر را اجرا کرد :

اگر مراحل رو به درستی طی کرده باشید خروجی ای مشابه به خروجی زیر باید دریافت کنید :

هم چنین می توان از منوی سمت چپ پنل نتیجه ی کار هایی که انجام دادیم را مشاهده کرد :

OSLearn.ir_013

در قسمت بعدی یاد می گیریم که چه طور یک کلاینت لینوکسی را به ldap سرور خودمون متصل کنیم و از یوزر هایی که در ldap سرور وجود دارد در کلاینت ها استفاده کنیم . هم چنین در قسمت سوم به نقاط ضعف این پروتکل از دید امنیت خواهیم پرداخت .

نویسنده : ایمان همایونی
ایمیل نویسنده : info@OSLearn.ir
منبع : وب سایت او اس لرن – http://oslearn.ir
از مطالب وب سایت راضی هستید ؟ رضایت خودتون رو با دونیت به ما اعلام کنید. لطفا برای دونیت روی آیکون زیر کلیک کنید.
حمایت مالی

درباره نویسنده :

ایمان همایونی هستم، از سال 2009 با گنو لینوکس فعالیت خودم رو در زمینه ی کامپیوتر و IT شروع کردم و تا الان موفق به گذروندن دوره هایLPIC 1 / LPIC 2 / VCP5-DCV / MCITP / CCNA / MTCNA شدم . مدتی در زمینه امنیت فعالیت هایی داشتم اما در حال حاضر تمرکز خودم رو بر روی مجازی سازی و لینوکس گذاشته ام .

تمام پست های من - وب سایت من