در این مقاله قصد داریم ۱۵ اقدام برای جلوگیری از هک سرور مجازی لینوکس را به شما معرفی کنیم. یک VPS لینوکس که به عنوان سرور مجازی لینوکس نیز شناخته می شود، برای اجرای نرم افزار های لینوکسی طراحی شده است. اتصال به اینترنت پرسرعت را فراهم می کند و به کاربران امکان می دهد از بین سیستم عامل های مختلف مانند CentOS، Debian و Ubuntu یکی را انتخاب کنند. با دسترسی root، کاربران می توانند به طور مستقل سرور مجازی لینوکس را بصورت کامل مدیریت کنند.
سرور ها نقش مهمی در پردازش و ذخیره دادههای حساس و تجاری دارند، به همین دلیل انجام اقدامات امنیتی جهت اطمینان و جلوگیری از هک آنها ضروری است.
چرا اقدامات امنیتی را انجام بدهیم ؟
- جلوگیری از دستکاری های غیرمجاز یا تغییرات تصادفی بر روی داده های ذخیره شده
- اطمینان از صحت و سلامت داده های ذخیره شده و بکاپ های آنها
- اطمینان از در دسترس بودن سرور در هر زمانی برای افراد مجاز
- حفاظت از داده های حساس ذخیره شده در سرور از دسترسی های غیرمجاز و محرمانه نگه داشتن آنها
در زیر نیز نکاتی جهت اطلاع برای ادمین ها و کاربران سرور ها آورده شده است، حتما به موارد زیر دقت بفرمایید.
- سرور های لینوکس به همان سطح مراقبت و توجه نیاز دارند که هر رایانه متصل به شبکه نیاز دارد.
- میلیون ها هکر در سراسر جهان به طور فعال در حال جست و جوی باگ ها و آسیپ پذیری های سرور های لینوکسی هستند.
- اطمینان حاصل کنید که سرور شما در برابر تهدیدات آینده نیز ایمن است، زیرا هکر ها روزی به سراغ سرور شما خواهند آمد.
- وبسایت های دارای اهمیت از جمله ارگان ها و ادارات، در سطر اول اهداف هکر ها هستند.
با اجرای اقدامات امنیتی قوی، می توانید امنیت سرور لینوکسی خود را افزایش دهید و از آن در برابر هک شدن محافظت کنید.
۱ _ غیرفعال کردن لاگین با Root
بصورت پیشفرض، در سرور های استاندارد یوزر و کاربر اصلی root می باشد که دسترسی کامل به سرور را دارا می باشد. به همین دلیل کاربر روت یکی از هدف های موردعلاقه هکر ها می باشد. برای افزایش امنیت و جلوگیری از هک، پیشنهاد میشود یک کاربر جدید ایجاد کنید و در صورت نیاز به دسترسی روت، از کلمه کلیدی sudo استفاده کنید. قبل از غیرفعال کردن لاگین با اکانت روت، حتما مطمئن شوید که اکانت جدید ساخته شده دارای امتیازات دسترسی مناسب باشد.
در حالی که این مرحله امنیت را بهبود میبخشد، سفارشی سازی بیشتر سطوح دسترسی کاربران بسیار مهم است. تخصیص و کانفیگ امتیازات دسترسی بر اساس فعالیت و نیازهای کاربران بسیار مهم است. به عنوان مثال، یک توسعه دهنده وب ممکن است به دسترسی روت نیازی نداشته باشد، در حالی که یک سیستم ادمین ممکن است فقط به دستورات سطح root نیاز داشته باشد.
۲ _ تغییر پورت SSH
ssh یک عضو حیاتی برای دسترسی به سرور از راه دور و کانفیگ سرور ها می باشد. معمولا پورت پیشفرض این سرویس ۲۲ می باشد. مهاجمان به طور فعال سرور هایی با پورت های باز مانند ۲۲ را جستجو می کنند تا از آسیپ پذیری های SSH سوء استفاده کنند. یکی از حمله های متداول، Brute-force برای بدست آوردن اطلاعات یوزر ها با دسترسی اجرای کامند های روت می باشد.
برای مقابله با این تهدید، تغییر پورت سرویس SSH تنها راه موجود می باشد. با انجام این کار دیگر اسکنر های خودکار SSH را در پورت ۲۲ شناسایی نمی کنند و امنیت یک مرحله بالاتر میرود.
۳ _ بروز رسانی نرم افزاری سرور
بسیار مهم و حیاتی میباشد که بصورت منظم نرم افزارهای سرور خود را استفاده از پکیج منیجر ها مناسب سیستم عامل خود مانند apt-get برای اوبونتو، yum برای سنت او اس و ردهت و یا pacman برای آرچ نظارت و آپدیت کنید. علاوه بر این به نرم افزارهایی از جمله cPanel و Plesk توجه کنید و اطمینان حاصل کنید که بصورت اتومات و یا دستی آپدیت میشوند. برای اطلاع از به روزرسانی های پکیج ها و نرم افزارها، می توانید ارسال ایمیل های یادآوری را از سیستم عامل خود تنظیم کنید.
۴ _ غیرفعال کردن پورت های بدون استفاده شبکه
سعی بفرمایید پورت های بدون استفاده را بر روی سرور خود غیرفعال کنید و فایروال خود را به شکل مستحکمی کانفیگ کنید. فایروال پیشفرض لینوکس تا حدی مناسب می باشد و می تواند جلوی ترافیک های غیرمجاز را بگیرد. برای ترافیک های بالا و سطوح امنیتی بسیار بالا نیز می توانید فایروال csf و دیگر فایروال های موجود را استفاده بفرمایید. موضوع باز بودن و بسته بودن پورت ها بسیار مهم می باشد و میبایستی جدی گرفته شود تا فایروال ها نیز نقش خود را در جلوگیری از هک به خوبی ایفا کنند.
۵ _ غیرفعال کردن IPv6
متاسفانه تحقیقات نشان میدهد که هکرها اغلب از IPv6 در سرور ها برای توزیع بدافزارها، راه اندازی تهدیدات و سوء استفاده از آسیب پذیری های امنیتی در سیستم عامل سرور استفاده می کنند. برای کاهش این خطر، بسیار مهم است که IPv6 را در صورت امکان غیرفعال کنید. این مورد می تواند به افزایش امنیت و به حداقل رساندن پتانسیل سوءاستفاده کمک کند.
۶ _ استفاده از رمزگذاری GnuPG
حفاظت از داده ها در حین انتقال بدلیل هدف قرار گرفتن مکرر توسط هکرها بسیار مهم است. برای اطمینان از امنیت، رمزگذاری داده ها قبل از انتقال بوسیله رمز عبور، کلید ها و گواهی ها ضروری میباشد. GnuPG یک ابزار پرکاربرد از یک سیستم احرازهویت مبتنی بر کلید برای رمزگذاری استفاده می کند. این ابزار با دو کلید عمومی و خصوصی کار میکند. تنها راه رمزگشایی داده هایی که با کلید عمومی رمز شده اند، داشتن کلید خصوصی می باشد.
۷ _ اجرای یک سیاست رمز عبور قوی
داشتن رمز عبور ضعیف یک خطر امنیتی بسیار مهم است. بسیار مهم است که استفاده از پسوورد های راحت و قابل حدس توسط کاربران سرور ممنوع شود. هنگام انتخاب رمز عبور، بهتر است از ترکیبی از حروف بزرگ و کوچک، اعداد و نمادها استفاده کنید. علاوه بر این، می توانید با تعیین یک دوره زمانی خاص برای تغییر دادن رمز عبور کاربران، انقضای رمز عبور را اعمال کنید و امنیت را در این مرحل بیش از پیش افزایش بدهید.
برای افزایش امنیت و جلوگیری از حملات brute force، توصیه می شود با استفاده از دستور faillog محدودیت های لاگین های ناموفق را تنظیم کنید. این تنظیم به غیرفعال کردن خودکار حساب های کاربری پس از تلاش های مکرر ناموفق برای ورود به سیستم کمک میکند.
۸ _ پیکربندی فایروال
ایمن سازی سیستم در برابر دسترسی غیرمجاز بسیار مهم است و یکی از اقدامات موثر بازرسی و پیکربندی فایروال است. برای مبارزه با حملات DDoS و جلوگیری و فیلتر کردن ترافیک غیر ضروری روی سرور VPS خود، راه اندازی و کانفیگ فایروال ضروری است. فایروال های محبوب مانند CSF و APF پلاگین هایی را برای پنل های محبوب مانند cPanel و Plesk ارائه میدهند. هنگام راه اندازی سرور جدید، یکی از اولین گام ها میباستی نصب و پیکربندی فایروال باشد. علاوه بر این توصیه میشود برای انتقال امن فایل ها، از پروتکل SFTP به جای پروتکل قدیمی FTP استفاده بفرمایید.
۹ _ استفاده از پارتیشن بندی دیسک
برای افزایش امنیت، توصیه می شود دیسک خود را پارتیشن بندی کنید و فایل های سیستم عامل را از فایل های کاربران، برنامه های شخص ثالث و فایل های موقت جدا کنید. این را می توان با غیرفعال کردن دسترسی SUID/SGID (nosuid) و جلوگیری از اجرای باینری ها (noexec) در پارتیشن سیستم عامل به دست آورد.
با جدا کردن فایل های سیستم عامل از سایر داده ها، مانند فایل های کاربران و فایل های موقت، خطر آسیپ پذیری های احتمالی را که بر اجزای حیاتی سیستم تاثیر میگذارد، کاهش میدهید. یک مدیر سیستم با تجربه، اهمیت پارتیشن بندی منطقی در تخصیص فضای دیسک سرور را برای کاهش از دست دادن احتمالی فایل ها و افزایش امنیت کلی سیستم درک میکند.
۱۰ _ استفاده از SFTP به جای FTP
sftp یک پروتکل انتقال فایل بسیار ایمن است که با استفاده از SSH حفاظت و حریم خصوصی داده ها را تضمین میکند. از سوی دیگر، ftp یک پروتکل انتقال فایل غیرایمن است که شما را در معرض خطرات احتمالی مانند حملات brute force و spoofing قرار میدهد. بر خلاف sftp ، ftp انتقال سریع و رمزگذاری شده فایل را فراهم میکند و از محرمانه بودن و یکپارچگی داده های شما اطمینان حاصل میکند. در حالی که امکان برقراری ارتباط امن با FTP وجود دارد، اما محتوای فایل ها رمزگذاری نشده باقی میماند. هنگام مبادله داده های حساس، احراز هویت سرور بسیار مهم است و SFTP در این جنبه با رمزگذاری اتصالات و ارائه فرآیند انتقال فایل قابل اطمینان تر و ایمن تر، برتری می یابد. به همین دلیل است که توصیه می کنیم از SFTP بجای FTP برای امنیت بیشتر استفاده کنید.
۱۱ _ فعال کردن به روز رسانی خودکار CMS
بروز رسانی منظم سیستم های مدیریت محتوا و نصب وصله های امنیتی ( security patches ) برای جلوگیری از هک و حملات وبسایت بسیار مهم است. از آنجایی که پلتفرم های CMS مانند جوملا، وردپرس و دروپال نرم افزارهای منبع باز هستند، بسیار مهم است که سیستم لینوکسی خود را با فعال کردن بروز رسانی خودکار برای CMS خود ایمن کنید.
صرف نظر از اینکه در حال استفاده از چه CMS ای هستید، بروز رسانی های امنیتی مداوم برای محافظت در برابر از دست دادن داده ها و محافظت از اطلاعات حساس ضروری است. با فعال کردن بروزرسانی های خودکار، هسته CMS، تم ها و افزونه ها مرتبا با آخرین اصلاحات امنیتی به روز رسانی میشوند و امنیت وبسایت شما را در برابر حملات احتمالی آینده افزایش میدهند.
۱۲ _ فعال کردن cPHulk در WHM
CPHulk یک سیستم امنیتی برای مقابله با حملات brute force می باشد. این سیستم با روش استفاده از بلک لیست و بلاک کردن آیپی ها برای مدت کوتاه در صورتی که چندین تلاش ناموفق ورود به سرور را داشته اند، با حملات بروت فورس مقابله میکند. در کنار فایروال اصلی، این سیستم نیز می تواند موثر واقع شود. فایروال ها وظایف اصلی را بر عهده دارند. اما ممکن است دارای آسیب پذیری و یا تنظیمات نادرست باشند که به هکر ها امکان دسترسی غیرمجاز را میدهد.
در چنین مواردی cPHulk به عنوان یک لایه امنیتی اضافی عمل میکند. cPHulk به طور خاص برای جلوگیری از حملات brute force به سرور طراحی شده است. برای فعال کردن این ویژگی به WHM Security Center رفته و گزینه cPHulk Brute Force Protection را فعال و کانفیگ بفرمایید تا یک قدم به جلوگیری از هک شدن سرور نزدیک تر شوید.
۱۳ _ جلوگیری از آپلود FTP ناشناس
فعال بودن آپلود های FTP ناشناس در سرورهای لینوکسی می تواند منجر به میزبانی نرمافزارهای غیرقانونی شود و در نتیجه سرور شما را در برابر بدافزارها آسیپ پذیر کند. برای جلوگیری از هک و عدم امکان آپلود ناشناس، توصیه می شود آپلود های ناشناس را غیرفعال کنید و فقط به کاربران مجاز اجازه آپلود بدهید. برای غیرفعال کردن دسترسی ناشناس، مراحل زیر را دنبال کنید.
ابتدا فایل زیر را باز کنید.
/etc/vsftpd/vsftpd.conf
محتوای فایل را برای غیرفعال کردن دسترسی ناشناس ویرایش کنید و پارامتر anonymous_enabled را مانند قطعه کد زیر تغییر بدهید.
anonymous_enabled=NO
با انجام این تغییر، دیگر دسترسی ناشناس FTP به سرور فراهم نخواهد شد و آپلود فایل ها به شکل ایمن تر و توسط افراد دارای یوزرنیم و پسوورد انجام می شود. لازم به ذکر است برای ایمن کردن FTP و آپلود فایل ها موارد زیاد دیگری وجود دارد اما ابتدایی ترین اقدام این مورد میباشد.
۱۴ _ بکاپ گیری منظم از داده ها
بسیاری از کاربران این اشتباه را مرتکب می شوند که از پشتیبان گیری معمولی غفلت می کنند. این مورد در زمانی که اتفاقات پیشبینی نشده ای رخ میدهد کاربران را متوجه اشتباه آنها می کند و چیزی جز پشیمانی برای آنها ندارد. صرف نظر از اینکه چقدر محتاط هستید و سرور شما چقدر امن است، همیشه میبایستی بکاپ بروز از دیتای خود داشته باشید. بسیار مهم است که برای بکاپ گیری صرفا به شرکت هاستینگ خود تکیه نکنید و همیشه خودتان نیز بکاپ گیری را با اصول و بصورت صحیح انجام بدهید. بکاپ های خود را صرفا در یک مکان نگهداری نکنید و از روش های بکاپ گیری همچون بکاپ گیری هایبریدی استفاده بفرمایید.
۱۵ _ استفاده از رمز عبور قوی
پسوردهای ضعیف خطر امنیتی قابل توجهی برای سرور لینوکسی شما ایجاد میکنند و همین امر در مورد سرور ویندوزی نیز مستلزم توجه است. انتخاب یک رمز عبور قوی که ترکیبی از حروف بزرگ و کوچک، اعداد و نمادها باشد بسیار مهم است. انتخاب یک رمز عبور طولانی و پیچیده به شدت توصیه میگردد. هم سی پنل و هم پلسک امکان اعمال یک سیاست رمز عبور قوی و تعیین مدت زمانی برای انقضای پسوورد را فراهم می کنند. بهره گیری از این ویژگی ها لایه امنیتی بیشتری را برای سرور شما تضمین میکند.
سخن پایانی
در این مقاله ۱۵ روش برای جلوگیری از هک سرور مجازی لینوکسی را ارائه کردیم. لازم به ذکر است برخی از این موارد مانند استفاده از پسوورد قوی عمومی هستند و صرفا مختص به لینوکس نیستند. مهم است بدانید که امنیت یک فرایند مداوم است و تنها یکبار کانفیگ امنیتی در اکثر اوقات نمی تواند کافی باشد زیرا هر روز متد های جدیدی جهت هک کردن فایروال ها و سیستم عامل ها ابداع می شود و باگ های ریز و درشت کشف میشوند. مطلع ماندن از آخرین روندها و بررسی و به روز رسانی منظم سیاست های امنیتی جهت جلوگیری از هک بسیار ضروری است. در دنیایی که میلیونها هکر دائماً به دنبال آسیبپذیری هستند، تقویت امنیت VPS در برابر تهدیدات احتمالی بسیار مهم است. وبسایتهای شرکتی و فروشگاههای آنلاین اهداف جذابی برای هکرها هستند، که اغلب با وجود اقدامات امنیتی اولیه، مستعد به خطر افتادن هستند.