برترين مطالب
Best Posts
آخرین مطالب ارسالی
Last Posts
کنترل سرویس‌ها و سطوح اجرایی -  پنجشنبه ,۲۷ مرداد , ۱۳۹۰
تعداد بازدید : 211   دسته بندی : مقالات لینوکس

I. مقدمه

یکی از مسائلی که در امنیت یک سیستم نقش مهمی ایفا می‌کند نحوه ی کنترل سرویس‌هاست ؛ شاید برایتان این سؤال پیش آید که سرویس‌ها با امنیت چه رابطه‌ای دارند؟ از شما سوالی می‌پرسم :”در یک شبکه یک مهاجم چگونه به سیستم شما آسیب می رساند؟” اگر پاسخ را نمی‌دانید باید بگویم از اصلی‌ترین روش‌ها ورود از طریق پورت‌های باز سیستم و یا استفاده از مشکلات امنیتی برنامه‌های شبکه مانند سرویس‌ دهنده‌هاست.

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

با توجه به مسائل مطرح شده در بالا شما به عنوان یک مدیر سیستم حتی به عنوان یک کاربر کنجکاو لینوکس احتیاج دارید تا با کنترل سرویس‌ها در لینوکس آشنا شوید. در این مقاله این موضوع را بررسی می‌کنیم. قبل از این که به بحث مدیریت سرویس‌ها وارد شویم شما باید با مفهوم سطوح اجرایی آشنا باشید.
II. سطوح اجرایی

زمانی که کامپیوتر شما بوت شد لینوکستان باید در یکی از سطوح اجرایی یا RunLevel ها کار کند. درواقع در لینوکس نحوه ی اجرای سرویس‌های سیستم شما دقیقا به RunLevel ای که شما در آن هستید وابسته است. ایده ی ایجاد RunLevel ها باعث شده تا شما بدون دغدغه ی خاطر سرویس‌ها را در سطوح مختلفی تقسیم کنید و هنگامی که لینوکستان وارد یکی از این سطوح شد فقط سرویس‌هایی را اجرا خواهد کرد که در آن سطح قرار دارد . برای روشن تر شدن این موضوع بهتر است ابتدا تمام سطوح اجرایی لینوکس را برایتان بگویم ؛ سطوح اجرایی در لینوکس شامل ۱۲ سطح می‌شود که در عمل ما فقط با چند سطح خواص کار‌می کنیم. به جودل زیر توجه کنید:

۰ برای خاموش کردن سیستم استفاده می‌شود . (رزرو شده)
۱ مود تک کاربره.
۲ مود چند کاربره بدون پشتیبانی NFS و سایر امکانات شبکه ی راه دور.
۳ مود چند کاربره‌ی کامل. (سطح ۲ همراه پشتیبانی از NFS)
4 این سطح استفاده نمی‌شود.
۵ مود چند کاربره‌ی کامل همراه با X11 . (سطح ۳ همراه با گرافیک X11)
6 ریست کردن سیستم .(رزرو شده)
S,s اسکریپت‌هایی که برای ورود به سطح ۱ استفاده می‌شوند ؛ مستقیما استفاده نمی‌شوند.
۷-۹ برای این سطوح سطوح تعریفی اراسه نشده.

مود‌های رزور شده از سوی سیستم رزرو شده‌اند و قابل تغییر نیستند یعنی همواره سطح ۰ برای خاموش‌کردن سیستم و سطح ۶ برای Reboot کردن سیستم استفاده می‌شود.از‌ آنجایی که سطوح ۱و۲ و ۳ و ۵ قابل تغییر هستند توزیع کننده‌های مختلف لینوکس این سطوح را کمی تغییر می‌دهند برای نمونه در سیستم‌های Debian سطوح اجرایی به صورت زیر تعریف شده‌اند :

۰ خاموش کردن سیستم (رزرو شده)
۱ مد تک کاربره
۲-۵ مد چند کاربره با شبکه
۶ ریبوت کردن سیستم (رزرو شده)

بنابراین برای این که بدانید توزیع شما از چه شماره‌ای برای نام گذاری سطوح استفاده می‌کند حتما به راهنمای سیستمتان مراجعه کنید.

حال این پرسش پیش می‌اید که لینوکس شما پس از بوت وارد کدام سطح اجرای می‌گردد؟ برای این که سطح اجرایی پیش فرض را انتخاب کنید در فایل etc/inittab/ خط id:5:initdefault: را جستجو کنید. در این نمونه سیستم پس از بالا آمدن وارد سطح اجرایی ۵ می‌شود ، در صورتی که نیاز به تغییر این سطح دارید می‌توانید این فایل را ویرایش و مقدار عدد نوشته شده را به سطح اجرایی که شما می‌خواهید پیش فرض سیستمتان باشد تغییر دهید.

 ارسال در حدود 276 روز قبل  نویسنده : diedloves  دیدگاه‌ها خاموش   | ادامه مطلب »