امنیت لینوکس در سرورها چگونه است + راه های افزایش امنیت

امنیت لینوکس در سرورها چگونه است + راه های افزایش امنیت

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

اگر قصد دارید سروری با کیفیت بالا و قیمتی مناسب تهیه کنید، دکتر اچ پی یکی از بهترین انتخاب‌ها برای شما خواهد بود. این شرکت انواع سرور HP را همراه گارانتی معتبر ارائه می‌دهد و شما می‌توانید برای دریافت اطلاعات بیشتر از طریق شماره 02191008413 با تیم متخصص آن‌ها در ارتباط باشید.

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

در این بخش به 13 راهکار مهم پرداخته شده است. این راهکارها عبارت اند از:

1) تنظیم پسوردهای غیر قابل حدس و پیچیده

برای افزایش امنیت سرورهای لینوکسی یکی از مهم ترین اقدامات، انتخاب گذرواژه‌های پیچیده و غیرقابل حدس است. اگر رمز عبور ساده باشد یا از اطلاعات عمومی و رایج انتخاب شود، احتمال دسترسی غیرمجاز به آن بیشتر خواهد بود. هکرها از روش‌های مختلفی مانند حملات دیکشنری یا اسکریپت‌هایی که به طور مداوم رمزهای مختلف را امتحان می‌کنند، استفاده می‌کنند. بنابراین بهتر است رمز عبوری انتخاب کنید که طولانی باشد و شامل حروف بزرگ، حروف کوچک، اعداد و نمادهای خاص باشد. همچنین از استفاده از اطلاعات شخصی مانند نام دوستان، شماره تلفن یا تاریخ تولد خودداری کنید.

در تنظیمات کاربران، می‌توان محدودیت‌هایی برای انتخاب گذرواژه اعمال کرد. برخی مدیران ترجیح می‌دهند زمان مشخصی برای انقضای رمز تعیین کنند تا کارکنان مجبور شوند رمز خود را در بازه‌های زمانی مشخص تغییر دهند. این کار باعث می‌شود حتی اگر رمز عبور در طول زمان فاش شود، قابل استفاده نباشد. یکی دیگر از روش‌های موثر، محدود کردن تعداد تلاش‌های ناموفق برای ورود به سیستم است. به عنوان مثال می‌توان تعداد دفعات محدودی برای اشتباه وارد کردن رمز ورود مشخص کرد و در صورت عبور از این تعداد، دسترسی به طور خودکار مسدود شود.

2) غیر فعال کردن پروتکل SSH

اگر نیازی به اتصال از راه دور ندارید، بهتر است سرویس SSH را روی سرور لینوکسی غیرفعال کنید. دلیل این موضوع این است که هر سرویس فعالی روی سرور، می‌تواند راهی برای نفوذ هکرها باشد. SSH  به طور پیش‌فرض روی پورت 22 فعال است و هکرها با اسکن این پورت‌ها به دنبال راهی برای دسترسی به سرور می‌گردند. اگر این سرویس روشن باشد و تنظیمات یا رمز عبور آن به درستی مدیریت نشود، احتمال نفوذ بیشتر می‌شود.

در مواردی که مدیریت سرور فقط به صورت فیزیکی انجام می‌شود و نیازی به اتصال از راه دور وجود ندارد، توصیه می‌شود سرویس SSH را غیرفعال کنید. این کار باعث می‌شود خطرات ناشی از شنود یا سوء استفاده از این سرویس کاهش یابد. برای خاموش کردن SSH، می‌توان از دستورات مناسب در سیستم‌عامل لینوکس استفاده کرد. همچنین، بهتر است پورت‌های مربوطه در فایروال مسدود شوند. اگر در آینده نیاز به استفاده از این سرویس پیدا شد، امکان فعالسازی دوباره وجود دارد.

3) محدود کردن ورود کاربران به سرور لینوکس

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

به علاوه بهتر است کاربران غیرضروری را از سیستم حذف یا مسدود کرد. اگر کاربری مدتی طولانی غیرفعال بوده و دسترسی او دیگر سودی ندارد، حضورش بیهوده است و درگاهی ناامن برای هکرها ایجاد می‌کند. همچنین در فایل‌های پیکربندی این سرویس می‌توان بخش‌هایی ویژه قرار داد تا IP های خاص اجازه ورود پیدا کنند و دیگر مبدل‌ها بلاک شوند.

در برخی موارد استفاده از گروه‌هایی مانند sudoers مفید است، چرا که این کار باعث می‌شود همه کاربران نتوانند دستورهای حساس را اجرا کنند. محدود کردن دسترسی‌ها و ایجاد مرزهای مشخص بین کاربران، امنیت داده‌ها را بیشتر می‌کند. به این ترتیب، حتی اگر از حساب کاربری یکی از افراد سوء استفاده شود، مهاجم نمی‌تواند به کل سیستم دسترسی پیدا کند زیرا دسترسی او محدود باقی می‌ماند.

کارشناسان امنیتی لینوکس بر اهمیت و رعایت اصل “حداقل دسترسی” تاکید دارند. این اصل به این معناست که هر کاربر فقط باید به منابعی دسترسی داشته باشد که برای انجام وظایف او ضروری است و هیچ بخش اضافی دیگری در دسترس نباشد.

4) استفاده از فایروال (Firewall)

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

مثلا زمانی که سرور تنها نیاز دارد درخواست‌های HTTP و HTTPS را پاسخ بدهد، هیچ نیازی به بازبودن پورت‌های دیگر نیست. برای بسته‌های اضافی UDP یا پروتکل‌های قدیمی تر هم می‌توان قوانین سخت‌گیرانه تنظیم کرد تا هیچ بسته مشکوکی مجال ورود پیدا نکند. اگر سرویسی موقتا لازم بود، امکان اضافه کردن یک قانون در فایروال وجود دارد. سپس هنگامی که کار تمام شود، می‌توان قانون را حذف کرد تا دوباره امنیت افزایش یابد.

5) به روزرسانی سیستم

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

در توزیع‌های لینوکسی مانند اوبونتو و دبیان، فرمان apt-get update و apt-get upgrade امکان دریافت جدیدترین نسخه‌ها را مهیا می‌سازد. ادمین‌هایی که از RHEL یا CentOS بهره می‌برند، دستورات yum یا dnf را می‌توانند استفاده کنند. همچنین ابزارهایی مثل unattended-upgrades توانایی نصب خودکار بروزرسانی‌های امنیتی را دارند. در سرورهای مهم گاهی پیشنهاد می‌شود ابتدا آپدیت‌ها در محیط آزمایشی انجام شوند تا اطمینان خاطر از سازگاری با سرور وجود داشته باشد. ولی در هر صورت نباید روند بروزرسانی را فراموش کرد.

6) رمزگذاری بر حافظه سیستم

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

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

7) غیرفعال کردن دسترسی root به کاربران

باید توجه داشت که کاربر root دسترسی کامل به سیستم دارد و می‌تواند هر تغییری را اعمال کند. این سطح از دسترسی، اگرچه برای مدیریت سیستم مفید است اما خطر نفوذ را افزایش می‌دهد. هکرها معمولا تلاش می‌کنند رمز عبور این کاربر را حدس بزنند زیرا می‌دانند که در اکثر سرورها وارد می‌شود. برای کاهش این خطر، بهتر است ورود مستقیم root از طریق SSH غیرفعال شود.

به جای استفاده از کاربر  root، می‌توان حساب‌های کاربری جداگانه ای ایجاد کرد که دسترسی محدودی داشته باشند و در صورت نیاز از قابلیت sudo برای اجرای دستورات مدیریتی استفاده کنند. این روش باعث می‌شود که حتی اگر رمز عبور یک حساب معمولی فاش شود، مهاجم نتواند به تمام بخش‌های حساس سیستم دسترسی پیدا کند. همچنین می‌توان در فایل Etc/Sudoers مشخص کرد که هر کاربر چه دستورات خاصی را می‌تواند اجرا کند.

برای غیرفعال کردن ورود مستقیم root، باید فایل تنظیمات SSH  را ویرایش کرده و مقدار PermitRootLogin را به “no” تغییر داد. سپس سرویس SSH را ری استارت کنید تا تغییرات اعمال شود. البته پیش از انجام این کار، باید یک حساب کاربری امن و مدیریتی ایجاد شود تا دسترسی به دستورات سیستمی قطع نشود.

8) استفاده از پورت های غیر معمول برای SSH

برای امنیت لینوکس در سرورهایی که از SSH استفاده می‌کنند، یکی از روش‌های ساده تغییر پورت پیش فرض است. بیشتر ابزارهای هک خودکار، پورت 22 را هدف قرار می‌دهند زیرا این پورت به طور پیش فرض برای SSH استفاده می‌شود. با تغییر این عدد به یک مقدار دیگر، بسیاری از حملات خودکار بی اثر می‌شوند. البته این روش به تنهایی امنیت کامل را ایجاد نمی‌کند اما می‌تواند دسترسی هکرها را دشوارتر کند.

برای انجام این کار، باید فایل تنظیمات SSHD_Config را ویرایش کرده و مقدار پورت را از 22 به عددی دیگر، مانند 2244 یا یک عدد دلخواه تغییر دهید. دقت کنید که عدد انتخابی نباید با سایر سرویس‌های فعال تداخل داشته باشد. پس از اعمال تغییرات، سرویس SSH را مجددا راه‌اندازی کنید و در تنظیمات فایروال نیز پورت جدید را باز کنید.

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

9) نرم افزارهای غیرضروری را حذف کنید

برای کاهش خطرات امنیتی در سرورهای لینوکسی، بهتر است برنامه‌ها و ابزارهایی که دیگر استفاده نمی‌شوند یا نیازی به آن‌ها نیست، حذف شوند. بسیاری از هکرها به دنبال نقاط ضعف در نرم‌افزارهایی هستند که بروزرسانی نشده‌اند یا پشتیبانی ضعیفی دارند. اگر برنامه‌ای روی سرور نصب شده و دیگر کاربردی ندارد، نگه داشتن آن تنها احتمال حملات را افزایش می‌دهد. حذف این موارد نه تنها امنیت را بیشتر می‌کند، بلکه مدیریت سرور را هم ساده تر کرده و تعداد بسته‌هایی که باید بروزرسانی شوند را کاهش می‌دهد.

برای نمونه، ممکن است فردی در گذشته یک سرور FTP نصب کرده باشد، اما اکنون از SFTP استفاده کند. یا شاید یک سرویس دیتابیس روی سرور فعال باشد که هیچ پایگاه داده‌ای از آن استفاده نمی‌کند. در چنین شرایطی، بررسی و پاک سازی این موارد ضروری است. مدیران سرور باید به صورت دوره‌ای سرویس‌ها و بسته‌های نصب شده را بررسی کنند و هر چیزی که دیگر نیازی به آن نیست را حذف کنند.

10) نصب ابزار fail2Ban روی سرور

حملاتی که با تلاش پیوسته برای حدس رمز شناخته می‌شوند، به حمله فراگیر یا Brute Force معروف هستند. fail2Ban ابزاری رایگان در لینوکس محسوب می‌شود که هدفش مهار این نوع حمله است. این ابزار لاگ‌های سرویس‌هایی نظیر SSH، وب سرور، FTP‌ سرور و غیره را رصد می‌کند. اگر آدرس آی پی خاصی چندین مرتبه پشت سرهم ورود ناموفق داشته باشد، fail2Ban  آن را در یک بازه زمانی مسدود می‌کند.

فرایند کار ساده است. ابتدا fail2Ban لاگ‌های مربوط را بررسی می‌کند و الگوهای ورود ناموفق را تشخیص می‌دهد. در صورت رسیدن به آستانه تعیین شده، مثلا 5 بار تلاش نادرست در 10 دقیقه، ابزار IP مهاجم را به فهرست ممنوعه فایروال اضافه می‌نماید. این روش باعث می‌شود هکر نتواند در فاصله زمانی کم، تمام عبارت‌های ممکن را امتحان کند. با مسدود شدن آی پی حتی اگر فرد مهاجم رمز را بعد از دفعات زیاد بیابد، دیگر اجازه‌ی تلاش مجدد ندارد.

با استفاده از قابلیت Fail2Ban می‌توان مشخص کرد که آی پی تا چه زمانی در لیست سیاه بماند یا قبل از مسدود کردن چند مرتبه ورود نادرست قابل تحمل است. افزون بر این، امکان افزودن فهرست سفید وجود دارد تا آدرس‌های آشنا بسته نشوند. استفاده از آن چندان پیچیده نیست و برای مدیرانی که نگران حمله فراگیر هستند، پیشنهاد می‌شود.

11) در صورت استفاده از cPanel احراز هویت دو عاملی را فعال کنید

کنترل پنل cPanel  یکی از محبوب ترین ابزارهای مدیریت هاست و سرور است که بسیاری از کاربران از آن استفاده می‌کنند. با این حال برای حفظ امنیت در این پنل باید تنظیمات دقیق تری انجام شود. یکی از روش‌ها برای افزایش امنیت، فعال‌ کردن سیستم ورود دوعاملی یا 2FA  است. این سیستم باعث می‌شود علاوه بر وارد کردن رمز عبور، یک کد امنیتی یکبار مصرف نیز لازم باشد. این کد اغلب از طریق برنامه‌هایی مانند Google Authenticator روی موبایل تولید می‌شود.

در صورتی که مهاجم رمز عبور شما را به دست آورد و 2FA  غیرفعال باشد، به راحتی به پنل شما دسترسی خواهد داشت. اما فعال‌کردن این قابلیت باعث می‌شود که هکرها برای ورود به cPanel با مشکل مواجه شوند. این قابلیت به صورت پیش فرض در cPanel موجود است و مدیر سرور می‌تواند آن را از بخش تنظیمات امنیتی برای همه کاربران یا فقط برخی از حساب‌ها فعال کند.

12) بازرسی منظم سرورهای لینوکسی

سرور لینوکسی در طول زمان ممکن است در معرض تلاش‌های نفوذ یا اشکالات نرم‌افزاری قرار بگیرد. پس بهتر است بازرسی دوره‌ای در دستور کار قرار گیرد. این بازرسی می‌تواند شامل بازبینی لاگ‌ها، نگاه به روند مصرف منابع، بررسی پیکربندی سرویس‌ها و شناسایی درگاه‌های باز باشد.

در گام نخست، مرور لاگ سیستمی (syslog) و لاگ سرویس‌هایی نظیر ssh، httpd  یا nginx اهمیت ویژه دارد. هرگاه ورودهای ناموفق مشکوک یا پیام‌های عجیب مشاهده گردد، نشانه‌ای برای اصلاح یا مسدودسازی آدرس مشکوک تلقی می‌شود. همچنین، اگر فایروال شما گزارش‌های دوره‌ای دارد، دیدن آن گزارش‌ها ممکن است تلاش‌های حمله را آشکار کند.

سپس باید سرویس‌های مهم را هم بازرسی نمود. ممکن است پس از مدتی، نسخه قدیمی نرم‌افزاری روی سرور باقی مانده باشد که لازم است ارتقا یابد. حتی اگر قبل تر تمام برنامه‌ها را به روز کردید، بازبینی بی وقفه باعث کم شدن خطاها می‌شود. تعداد خیلی زیادی از ترفندها برای اسکن بدافزار وجود دارند؛ مثلا ClamAV یا rkhunter که در تشخیص rootkit  موثر هستند. بد نیست که هرازگاهی کل سرور با چنین ابزاری بررسی شود.

13) استفاده  و نصب ابزار SpamAssassin

برای سرورهای لینوکسی که ایمیل کاربران را مدیریت می‌کنند، کنترل پیام‌های مشکوک اهمیت زیادی دارد. بسیاری از حملات فیشینگ و بدافزارها از طریق ایمیل‌های تبلیغاتی یا مشکوک ارسال می‌شوند و ممکن است کاربران بدون دقت آن‌ها را باز کنند. ابزار SpamAssassin طراحی شده تا این نوع پیام‌ها را شناسایی کرده و در پوشه‌ای جداگانه قرار دهد یا حتی حذف کند. این ابزار محتوای ایمیل‌ها را بر اساس قوانین و الگوریتم‌های خاص بررسی کرده و به هر پیام امتیاز می‌دهد. اگر امتیاز یک پیام از حد مشخصی بیشتر شود، به عنوان پیام مشکوک یا اسپم علامت گذاری می‌شود.

یکی دیگر از فواید این ابزار این است که کاربران دیگر پیام‌های خطرناک را مشاهده نمی‌کنند یا اگر هم ببینند، برچسب هشداردهنده روی آن‌ها خورده شده است. بسیاری از این پیام‌ها شامل لینک‌های آلوده یا بدافزار هستند که اگر به پوشه اسپم منتقل شوند، احتمال کلیک کردن روی آن‌ها کاهش می‌یابد. علاوه بر این، این فرایند باعث می‌شود صندوق ورودی کاربران خلوت تر شود. اکثر توزیع‌های لینوکس نسخه‌ای از SpamAssassin را در مخازن خود دارند که به راحتی نصب می‌شود و در برخی موارد از طریق کنترل پنل‌هایی مانند cPanel نیز فعال می‌گردد.

اگر در انتخاب سرورهای اچ پی و قطعات سرور HP نیاز به مشاوره دارید، می‌توانید از طریق شماره 02191008413 با دکتر اچ پی تماس بگیرید. این مجموعه در زمینه فروش سرورها و قطعات مرتبط با آنها فعالیت دارد و آماده است تا اطلاعات لازم را در اختیار شما قرار دهد.

جمع بندی

برای افزایش امنیت لینوکس در سرورها باید به طور مداوم اقدامات امنیتی انجام شود. نصب چند ابزار به تنهایی نمی‌تواند تمام تهدیدها را از بین ببرد. در محیط سرورها، خطراتی مانند بدافزارها، اسکریپت‌های خودکار برای حملات گسترده، ایمیل‌های مشکوک و رمزهای عبور ضعیف همیشه وجود دارند. هرگونه غفلت می‌تواند باعث نفوذ به سیستم یا سرقت اطلاعات شود.

روش‌های زیادی برای افزایش امنیت لینوکس در سرورها بیان شد که شامل تغییر پورت پیش‌فرض  SSH، استفاده از رمزهای پیچیده، غیرفعال کردن سرویس‌های غیرضروری و فعال سازی فیلترهای ضد اسپم هستند. همچنین رمزگذاری دیسک، محدودکردن دسترسی به root و بررسی مداوم وضعیت سرور از دیگر اقدامات مهم محسوب می‌شوند. استفاده از ابزارهایی مانند Fail2Ban و SpamAssassin نیز می‌تواند جلوی نفوذ افراد غیرمجاز را بگیرد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

بیشتر بخوانید

تماس با ما دکتر اچ پی

0
شما این محصولات را انتخاب کرده اید  0

سبد خرید شما خالی است.