امنیت سرور مجازی و اختصاصی لینوکس (بخش دوم )
در بخش دوم به ادامه متداولترین معیارهای امنیت در محیط سرور مجازی و سرور اختصاصی لینوکس می پردازیم.
امنیت سرور مجازی و اختصاصی لینوکس (بخش دوم )
در بخش قبل به طور مختصر در مورد برخی از مشهورترین راهحلهای فایروالی صحبت کردیم. در ادامه به بقیه می پردازیم.
استفاده از SSH برای برقراری اتصال از راه دور امن
هنگامی که برای مدیریت یک سرور دسترسی فیزیکی به سرور نداشته باشید، مدیریت سرور را میبایست از راه دور انجام دهید.
پروتکل SSH که مخفف عبارت Secure Shell به معنای پوسته امن میباشد.
SSH استانداردی برای برقراری اتصال از راه دور در سرورهای لینوکسی است.
SSH یک رمزگذاری متناوب ایجاد میکند. بدین معنا که ترافیک نامطمئن را در قالب یک ارتباط امن هدایت میکند.
اگرچه این پروتکل به خودی خود بسیار امن است و تحت تحقیقات وسیع قرار گرفته و کدهای آن بارها مرور شدهاند، اما پیکربندی شما نیز میتواند در بهبود و یا افت کیفیت امنیت آن نقش داشته باشد.
کلید SSH
مدل احراز هویت انعطافپذیری دارد که به شما امکان ورود به سیستم به روشهای مختلف را میدهد.
دو نمونه از متداولترین روشهای احراز هویت و اتصال به سرور از طریق SSH، کلمه عبور و کلید SSH ،SSH -Key میباشند.
استفاده از کلمه عبور مرسومترین روش برای اکثر کاربران باشد.
احراز هویت کلمه عبور امنیت کمتری نسبت به کلید SSH دارد.
در استفاده از کلمه عبور همواره این امکان وجود دارد که با استفاده از ترکیبات مختلف کاراکتر پسورد حدس زده شود.
این مورد که تحت عنوان حملات Brute-Forcing شناخته میشود میتواند به صورت برنامهریزی شده توسط ابزارهای جدید انجام شود.
از سوی دیگر کلید SSH با ایجاد یک جفت کلید امن کار میکند.
یک کلید عمومی که به عنوان نمونه به منظور شناسایی کاربر ایجاد شده است.
این کلید میتواند بدون مشکل در اختیار دیگران قرار داده شود چرا که جز برای شناسایی کاربر و مطابقت با کلید خصوصی کاربردی ندارد. اما کلید خصوصی باید دور از دسترس دیگران قرار داده شود. این کلید برای تأیید تست کلید عمومی مورد استفاده قرار میگیرد.
شما میتوانید کلید عمومی SSH را درون سرور اضافه کنید تا با بررسی مطابقت با کلید خصوصی، دسترسیتان به سرور فراهم شود.
این کلیدها به حدی پیچیده هستند که حتی حملات Brute-Forcing نیز قادر به رمزگشایی آنها نیستند.
علاوه بر این شما میتوانید از عبارات امنیتی طولانی در کلیدتان استفاده کنید تا امنیت شما افزایش یابد.
پیادهسازی fail2ban برای مسدود کردن آدرس آیپیهای مختلف
یکی از اقداماتی که میتواند امنیت عمومی پیکربندی SSH را بهبود ببخشد پیادهسازی ابزاری مثل fail2ban است.
Fail2ban سرویسی است که فایلهای گزارش (Log Files) را مانیتور میکند.
اگر ترافیک IP کاربری که از راه دور به سیستم متصل نشده است مجاز نباشد، آنرا موقتاً مسدود میکند.
راهاندازی اصولی fail2ban این امکان را می دهد که کامپیوترهایی که مدام در تلاش ناموفق برای ورود به سیستم هستند را شناسایی کند. با قوانینی در فایروال ترافیک آنها را برای مدت زمان مشخصی مسدود نماید.
این فرآیند راهحل آسانی برای ممانعت از حملات Brute-Forcing میباشد،
چرا که سیستمهای مهاجم پس از هر بار مسدودی مدت زمانی را اجبارا بدون حمله طی میکنند و همین مورد برای نا امید کردن حمله کننده brute force کافیست.
پیادهسازی یک سیستم تشخیص نفوذ برای شناسایی ورود غیرمجاز
یکی از ملاحظات مهم که همواره باید مد نظر داشته باشید توسعه یک استراتژی برای شناسایی مصرف غیرمجاز است.
ممکن است شما برخی از اقدامهای پیشگیرانه را انجام داده باشید، اما باید بررسی کنید که اقدامهای شما باعث شکست عامل مخرب بوده است یا خیر.
سیستم تشخیص نفوذ که با عنوان IDS نیز شناخته میشود پیکربندی و جزئیات فایلها را هنگامی که در وضعیت مطلوبی قرار دارند فهرست میکند.
سپس با مقایسه اطلاعات ذخیره شده و اطللاعات لحظهای از تغییر فایلها یا ویرایش تنظیمات آگاهی پیدا میکند.
چندین سیستم تشخیص نفوذ وجود دارد که در ادامه به معرفی برخی از آنها خواهیم پرداخت:
Tripwire
یکی از شناختهشدهترین IDSها Tripwire میباشد.
Tripwire مجموعهای از فایلهای سیستمی را گردآوری میکند و توسط مجموعهای از کلیدها از پیکربندی فایلها محافظت میکند.
هنگامی که در جزئیات پیکربندی انتخاب شده مغایرتی ایجاد شود، متعاقباً هرگونه تغییر بر روی فایلهای مانیتور شده را اطلاعرسانی میکند.
Tripwire بسیار انعطافپدیر است.
شما حتی میتوانید ظاهر این برنامه را به شکل دلخواه خود دربیاورید.
همچنین میتوانید آن را طوری تنظیم نمایید که در بازههای زمانی منظم اجرا شود،
حتی میتوانید از نرمافزار بخواهید که شما را از فعالیتهای غیرعادی توسط ایمیل آگاه کند.
Aide
یکی دیگر از سیستمهای تشخیص نفوذ میباشد. Aide نیز همانند Tripwire با ساختن مجموعهای از اطلاعات، وضعیت فعلی سیستم را با مقادیری که به عنوان بهترین حالت ذخیره شده است مقایسه میکند. هنگامی که در بررسیها اختلافی مشاهده شود، مشکل به مدیر سرور اطلاع داده میشود.
Aide و Tripwire راهکارهای مشابهی برای حل مسائل یکسان دارند.
مستندات هر دو سیستم را مشاهده کنید و بررسی نمایید که کدام سیستم بیشتر توجه شما را به خودش جلب میکند.
در بخش سوم به ادامه بحث می پردازیم…