امنسازی سرورهای لینوکسی
اگر از ارائهدهندههای کلود یا سرور مجازی، سرور خریداری کرده باشید میدانید که اطلاعاتی که برای اتصال به سرور لینوکسی به شما داده میشود نام کاربری و رمز عبور اتصال از طریق ssh است.
پروتکل ssh یک پروتکل ارتباطی رمزگذاری شده است که برای ارتباطگیری با سرورهای لینوکسی مورد استفاده قرار میگیرد. این پروتکل در عین حال که از لحاظ تبادل اطلاعات امن است از سمت دیگر قابل نفوذ است.
در حملههای معمول در بستر وب، روشی وجود دارد بنام brute-forth. در واقع در این نوع حمله، نفوذگر با باتهای نرمافزاری خود شروع به امتحان کردن رمز عبورهای مختلف برای ورود به سرور لینوکسی مقصد میکند. با توجه به طول رمز عبور و پیچیدگی آن ممکن است نفوذگر بتواند به رمز عبور سرور مقصد دست پیدا کند.
وقتی نفوذگر توانست چنین کاری را انجام دهد طبیعتا خیلی آشکارا کاری انجام نمیدهد که صاحب سرور بفهمد کسی در سرورش نفوذ کرده است. چرا که معمولا این باتها هدفشان استفاده نادرست از سرور مقصد است. کارهایی مثل اتک منع دسترسی یا dos، اسکن سرورهای مقصد و … است.
جهت جلوگیری از این نوع حملات میتوانید از روشهای زیر استفاده کنید:
نصب fail2ban
این ابزار بعد از نصب بلافاصله فعال شده و چنانچه از مقصد آی پی خاصی ۵ بار پسورد ssh سرور شما اشتباه وارد شود آن آی پی را برای مدت زمان ۱۵ دقیقه مسدود میکند. این تنظیمات توسط شما قابل تغییر است.
لازم به ذکر است که ایمیجهای لینوکسی در زیرساخت ابری هایو همگی بصورت پیشفرض این پکیج را بصورت نصب شده و فعال دارند.
غیرفعالسازی لاگین با پسورد
اصولا بهترین راه برای امنسازی سرورهایی که نیاز دارید ssh آنها بصورت پابلیک یا عمومی در دسترس باشد غیر فعالسازی لاگین با پسورد است. در این روش فقط از طریق کلید ssh می توانید به سرور خود لاگین کند.
برای اعمال این تنظیم گزینه زیر را در مسیر گفته شده تغییر دهید:
/etc/ssh/sshd_config
PasswordAuthentication no
در نهایت بهترین روش برای جلوگیری از چنین حملاتی بردن ssh به شبکه داخلی است. امکان ساخت شبکه داخلی در زیرساخت ابری هایو بنام جزیره وجود دارد.