افزایش امنیت سرور لینوکس

همه مطالب ای آموزش ضروری هستند اما شما می توانید از آنها صرفنظر کنید و مستقیماً برای نصب آپاچی، Lighthttpd،Nginx و یا هر وب سروری اقدام کنید. اما به شدت توصیه می شود این درس را انجام دهید در این درس شما برخی از روش های امنیت عمومی مثل تغییر ورود روت، و تغییر پورت و غیره را می آموزید.

مرحله 1 - ورود به سرور از طریق SSH: شما می توانید از نرم افزار Putty در ویندوز یا ترمینال در (مک یا لینوکس) استفاده نمایید.

1. دانلود نرم افزار Putty و آموزش آن:
2. دستورات پرکاربرد لینوکس: [URL="http://www.mihanwebhosting.com/forum/thread207.html"]دستورات پرکاربرد در لینوکس
[/URL]

مرحله دوم: در این مرحله رمز root سرور مجازی را تغییر می دهیم. در بیشتر اوقات رمز root پیش فرض به طور تصادفی انتخاب شده است و حفظ آن سخت می باشد شما در این مرحله با تغییر آن و انتخاب یک پسوردی که هم به یاد آوری آن سریع تر و هم خیلی ضعیف نباشد که بتوان حدس زد آشنا می شوید.
شکل کلی دستور:


کد:
passwd

بعد از آن از شما خواسته می شود رمز عبور جدید را دوبار وارد نمایید.

نکته: رمزی انتخاب کنید که ترکیبی از حروف، اعداد و کاراکترهای ویژه باشد و همچنین رمزی که از حفظ نمودن آن خیلی مشکل نباشد.

مرحله سوم: ایجاد کاربر جدید: در این مرحله یاد می گیرید که یک کاربر جدید ایجاد نمایید (چون در درس های بعد لازم است کاربر root را غیرفعال کنید) و نام کاربری root یک نام پیش فرض می باشد و هکر به راحتی می تواند آن را حدس بزند. پس برای امنیت بیشتر نام کاربری را تغییر دهید:


کد:
/usr/sbin/adduser newuser
به جای newuser در دستور بالا نام کاربری مورد نظر را تایپ نمایید.
سپس برای ایجاد رمز عبور برای کاربر جدید از دستور زیر استفاده نمایید.


کد:
passwd newuser
به جای newuser نام کاربری که در مرحله قبل ایجاد نمودیم را وارد نمایید.

مرحله 4 - ما قصد داریم با کاربرجدیدی که ایجاد کرده ایم وارد سیستم شویم و در مرحله بعد کاربر root را برای امنیت بیشتر غیرفعال نماییم (نگران نباشید با کاربر جدیدی که ایجاد نمودید هم می توانید دسترسی کامل به سرور داشته باشید تغییر کاربر فقط به دلیل این هست که هکر می تواند نام کاربری root را به راحتی حدس بزند.)


کد:
/usr/sbin/visudo
پس از دستور بالا خط زیر ظاهر می شود:


کد:
# User privilege specification
root    ALL=(ALL)       ALL
یا در نسخه های دیگر لینوکس ممکن است این باشد:


کد:
## Allow root to run any commands anywhere
root    ALL=(ALL)        ALL
بعد از خط:


کد:
root    ALL=(ALL)        ALL
خط زیر را اضافه نمایید:


کد:
newuser   ALL=(ALL)        ALL
به جای newuser نام کاربری انتخاب شده در مراحل قبلی را وارد نمایید.
آن باید شبیه این باشد:

چگونه ویرایش نمایم؟ اگر شما هنوز ویرایشگر nano را نصب نکرده اید. می توانید کلید a را از صفحه کلید فشار دهید. تا به خط بعدی بروید. و با زدن کلید ESC از صفحه کلید از مود ویرایش خارج شوید. حالا برای ذخیره تغییرات با فشار دادن کلیدهای ترکیبی Shift+zz تغییرات را ذخیره و خارج شوید.

مرحله 5 - تغییر پورت پیش فرض SSH و غیرفعال کردن کاربر root: در این صورت شما نیاز به ویرایش فایل "sshd_config" دارید که فایل اصلی پیکربندی سرویس SSH در سرور شماست. شما می توانید یا استفاده از ویرایشگر VI یا NANO به آن را ویرایش نمایید در این مثال من از نانو استفاده می کنم:


کد:
nano /etc/ssh/sshd_config
در این فایل خط زیر را پیدا کن:


کد:
#port 22
کاراکتر # را حذف کن و عدد 22 را به هر عددی بین 1025 تا 65536 تغییر بده. برای مثال در اینجا ما پورت را به 22000 تغییر دادیم.


کد:
port 22000
سپس خط زیر را پیدا کن:


کد:
#PermitRootLogin yes
کاراکتر# را حذف کن و yes را به no تغییر بده.


کد:
PermitRootLogin no
آنگاه باید به شکل زیر شود:

سپس خط زیر را پیدا کن:


کد:
#UseDNS yes
کاراکتر # را حذف و Yes را به no تغییر بده.


کد:
UseDNS no
تغییرات به شکل زیر می شود:

ویرایشگر نانو را هنوز نبندید و تنظیمات زیر را هم انجام دهید:
مرحله 6: اجازه ورود به کاربر جدید (ساخته شده در مرحله 3):
چون در مرحله قبل کاربر root را غیرفعال کردید حتما باید کاربری که در مرحله سوم ایجاد نمودید را در این مرحله فعال نمایید وگرنه ممکن است با بستن نانو و ذخیره این فایل دیگر اجازه ورود به SSH را نداشته باشید.
نگران نباشید فقط خط زیر را در آخر همین فایل اضافه کنید:


کد:
AllowUsers newuser
بجای newuser نام کاربری را که در مرحله 3 ایجاد نمودید را وارد نمایید.

تمام شد! کلیدهای ترکیبی Ctrl+O را برای ذخیره فشار دهید. سپس ctrl+x برای خروج از ویرایشگر نانو را فشار دهید.
قدم 7: ری لود SSH: برای تغییر تنظیمات انجام شده شما باید با دستور زیر دوباره SSH را ری لود نمایید.


کد:
/etc/init.d/sshd reload
این دستور باید پیغام OK بر گرداند.
قدم 8: تغییرات را امتحان کنید: شما باید مطمئن شوید تغییرات اعمال شده است. برای این کار دوباره نرم افزار putty را باز کنید و با پورتی که در مرحله 5 تعریف کرده اید وارد شوید و با نام کاربری و رمزعبوری که در مرحله 3 ایجاد نموده اید وارد سیستم شوید.
بعد از ورود دوباره شما بجای کاربر root نام کاربری که در مرجله سوم ایجاد کرده اید را مشاهده می نمایید.