بهترینها
امنیت زیرساخت: ۱۰ تنظیم حیاتی که هر سرور لینوکسی و هاست برای ضد هک شدن نیاز دارد

سرور یا هاست لینوکس شما چقدر در برابر هکرها مقاوم است؟ با ۱۰ تنظیم حیاتی و ساده، لایههای اولیه امنیت را قوی کنید تا مثل یک قلعه محکم شوید.
داستان قفل در خانه دیجیتالی شما
فرض کنید یک خانه زیبا ساختهاید. این خانه، وبسایت شماست. اما این خانه روی یک زمین قرار دارد و یک سری انبار و اتاق کنترل دارد. این زمین و اتاقهای کنترل، همان هاست یا سرور لینوکسی شما هستند.
حالا تصور کنید درِ خانه را قفلکردهاید (یک رمز عبور خوب برای ورود به سایت گذاشتهاید)، اما پنجرههای انبار همیشه باز است، کلیدِ اتاق کنترل زیر گلدان است، و هر کسی میتواند به سیستم گرمایشی خانه دسترسی پیدا کند! این دقیقاً اتفاقی است که وقتی روی افزایش امنیت هاست خود کار نکردهاید، میافتد.
هکرها همیشه سعی میکنند از *آسانترین راه* وارد شوند. آنها کمتر به درختقلعههای اصلی حمله میکنند و بیشتر از همان پنجرههای باز انبار (تنظیمات ضعیف سرور) استفاده میکنند. هدف این مقاله این است: به شما یاد بدهیم چگونه آن پنجرهها را ببندید، قفلهای اضافه بزنید و سیستم هشدار نصب کنید.
اگر این تنظیمات ساده اما حیاتی را انجام ندهید، ممکن است روزی با خطای dangerous site در گوگل مواجه شوید که به کاربران میگوید به سایت شما دسترسی نداشته باشند! یا بدتر، هکر سایت شما را تبدیل به انباری برای حمله به دیگران کند.
این مطلب، راهنمای خرید هاست نیست، اما به شما میگوید بعد از خرید، اولین و مهمترین کارهایی که باید برای تبدیل آن به یک محیط امن انجام دهید چیست. بیایید شروع کنیم.
۱. اولین و مهمترین قدم: به روزرسانی همیشگی
همیشه همه چیز را تازه نگه دارید.
چرا؟ تصور کنید یک باگ امنیتی در سیستم پیدا شده، مثل یک ترک در دیوار. سازنده (توسعهدهنده) به سرعت یک آجر نو (آپدیت) برای آن میفرستد. اگر شما این آجر را نصب نکنید، هر هکری که آن ترک را بشناسد، میتواند از آن وارد شود.
چگونه؟
– سیستم عامل: همیشه آخرین نسخه پایدار لینوکس (مثل Ubuntu، CentOS) را استفاده کنید و مرتب با دستوراتی مثل sudo apt update && sudo apt upgrade (در اوبونتو) آن را بهروز کنید.
– نرمافزارها: این شامل PHP، MySQL/MariaDB، و وب سرور (مثل Apache یا Nginx) میشود. نسخههای قدیمی پر از حفرههای امنیتی شناخته شده هستند.
– اسکریپتها: اگر از وردپرس، جوملا یا هر اسکریپت دیگری استفاده میکنید، بهروزرسانی خودکار را فعال کنید یا حداقل هفتهای یک بار بررسی کنید.
نکته ساده: بهروزرسانی، قویترین و سادهترین افزونه امنیتی رایگان دنیاست!

unnamed (2)
۲. مدیر سیستم، اما نه با نام کاربری “رئيس”!
نام کاربری پیشفرض “root” را غیرفعال کنید.
چرا؟ root کاربر قدرتمند کل سیستم است. همه هکرها میدانند که برای ورود به یک سرور لینوکس، باید نام کاربری “root” را حدس بزنند. پس اولین نامی که برای نفوذ امتحان میکنند، همین است. اگر دسترسی مستقیم root از طریق اینترنت بسته باشد، قدم بزرگی برداشتهاید.
چگونه؟
1. یک کاربر عادی اما با دسترسی مدیریتی (با قابلیت sudo) ایجاد کنید.
2. با کاربر جدید وارد شوید و مطمئن شوید همه چیز درست کار میکند.
3. دسترسی ورود مستقیم root را در تنظیمات SSH غیرفعال کنید. (در آینده در مقالهای جداگانه با جزئیات کامل به نام “ایمنسازی پورت SSH” این را گام به گام آموزش خواهیم داد).
نکته ساده: مثل این میماند که کلید اصلی خانه را پنهان کنید و فقط با یک کلید فرعی که میتواند قفل را عوض کند، وارد شوید.
—
۳. کلید به جای رمز عبور: قفلِ غیرقابل کپی
برای ورود به سرور، از کلیدهای رمزنگاری SSH استفاده کنید، نه رمز عبور.
چرا؟ رمزهای عبور، حتی قویها، ممکن است حدس زده شوند یا دزدیده شوند. اما یک کلید SSH مثل یک قفل دیجیتالی بسیار پیچیده است که از دو قسمت تشکیل شده: یک قسمت عمومی (که روی سرور میگذارید) و یک قسمت خصوصی (که فقط نزد خودتان است). بدون آن تکه خصوصی، هیچ کس نمیتواند وارد شود، حتی اگر رمز عبور را بداند.
چگونه؟ (به زبان خیلی ساده)
1. روی کامپیوتر خودتان یک جفت کلید (public/private) میسازید.
2. کلید عمومی را در پوشهای مخصوص روی سرور کپی میکنید.
3. به سرور میگویید: “از این به بعد فقط به کسی اجازه ورود بده که کلید خصوصی مطابق با این کلید عمومی را داشته باشد.”
4. سپس ورود با رمز عبور را کاملاً خاموش میکنید.
این روش یکی از موثرترین راههای افزایش امنیت هاست و سرور است. آموزش گامبهگام و تصویری آن را در کلاستر “ایمنسازی پورت SSH” منتشر خواهیم کرد.
—
۴. دروازهبان هوشمند: فایروال
یک فایروال تنظیم کنید تا ترافیک غیرضروری را مسدود کند.
چرا؟ سرور شما ۶۵۵۳۵ درب (پورت) دارد! بعضی برای وب باز است (مثل پورت ۸۰ یا ۴۴۳)، بعضی برای ایمیل، و بقیه بسته هستند. فایروال مثل یک نگهبان است که فقط به پورتهای ضروری اجازه ورود و خروج میدهد و بقیه را قفل میکند.
چگونه؟ ابزارهای سادهای مثل **UFW** (در اوبونتو) یا **firewalld** (در CentOS) وجود دارند. با چند دستور ساده میتوانید فقط پورتهای لازم (مثلاً ۸۰، ۴۴۳، و پورت SSH تغییر یافته شما) را باز کنید و بقیه را بپیشنهاد ویژه: ویژه:** برای سرورهای حرفهای، CSF/LFDSF/LFD** یک گزینه عالی و همهکاره است که نه تنها پورتها را مدیریت میکند، بلکه میتواند حملههای brute-force را شناسایی و بلوک کند. تنظیمات دقیق و آموزش امنسازی کامل با این فایروال را د”آموزش کامل کانفیگ امنیتی CSF/LFD”F/LFD”** بررسی خواهیم کرد۵. تفکیک زندانها: استفاده از حسابهای کاربری جداگانه برای هر سایتر اگر روی یک هاست چند سایت دارید، هر سایت را با یک کاربر لینوکس جداگانه اجرا کنید. کچرا؟**چرا؟** اگر همه سایتها با یک کاربر (مثلاً www-data) اجرا شوند، اگر هکری به یکی نفوذ کرد، میتواند به فایلهای همه سایتهای دیگر هم دسترسی پیدا کند. مثل این است که همه زندانیان در یک سلول بزرگ چگونه؟چگونهاست اشتراکیشتراکی** معمولاً این کار توسط ارائهدهنده هاست انجام میشود. اما اگر سرور اختصاصی یا VPS دارید، میتوانید برای هر سایت یک کاربر و گروه جداگانه در لینوکس ایجاد کنید و فایلهای آن سایت را به مالکیت آن کاربر درآورید. این موضوع مستقسطح دسترسی (Permissions) فایلهاایلها** مربوط میشود که در مقاله سوم از کلاستر”چگونه سطح دسترسی فایلها را تنظیم کنیم…”یم…”**) به طور مفصل صحبت خواهیم کرد۶. قدرت، اما نه برای همه! (تنظیم سطح دسترسی فایلها)یلسطح دسترسی (File Permissions) فایلها و پوشهها را درست تنظیم کنید. کچرا؟**چرا؟** هر فایل در لینوکس سه سطح دسترسی دارد: خواندن (Read)، نوشتن (Write) و اجرا (Execute). این دسترسیها برای سه گروه تعریف میشوند: مالک فایل، گروه مالک، و بقیه کاربران. اگر یک فایل سیستمی مهم، دسترسی نوشتن برای “بقیه کاربران” داشته باشد، یک هکر میتواند آن را تغییر دهد و کنترل سرور را قانون طلایی:طلایی:**
– پوشهها (Directories): معمولاً ۷۵۵ (مالک میتواند همه کار کند، بقیه فقط بخوانند و اجرا کنند).
– فایلها (Files): معمولاً ۶۴۴ (مالک میتواند بخواند و بنویسد، بقیه فقط بخوانند).
– فایلهای حساس مثل wp-config.php در وردپرس: حتی ۶۰۰ یا ۴۰۰ (فقط مالک بتواند بخواند یا بخواند و بنویسد).
تنظیم نادرست این دسترسیها یکی از رایجترین راههای نفوذ است. برای درک عمیق اعداد و نحوه تنظیم دقیق آنها، حتماً مقال”تنظیم سطح دسترسی فایلها”ایلها”** را مطالعه کنید۷. پنهانکردن اطلاعات سیستم: مخفیکاری مفیدی اطلاعات نسخه نرمافزارها را از دید عموم پنهان کنید. کچرا؟**چرا؟** وقتی یک هکر به سایت شما نگاه میکند، میتواند بفهمد شما از چه نسخهای از وردپرس، PHP یا آپاچی استفاده میکنید. اگر آن نسخه یک باگ امنیتی شناخته شده داشته باشد، هکر دقیقاً میداند از کجا حمله کند. پنهان کردن این اطلاعات کار هکر را سختتر مچگونه؟چگونه؟** این کار معمولاً با تغییر یک سری تنظیمات در فایلهای پوب سرورب سرور** (آپاچی یا انجینکس) انجام میشود. مثلاً میتوانید ServerSignature و ServerTokens را در آپاچی روی حالت Off یا Prod قرار دهید.
—
**۸. محافظت از فایلهای حساس با .htaccess**
**دسترسی به فایلهای مهم راچرا؟نید.**
**چرا؟** فایلهایی مثل wp-config.php (در وردپرس)، configuration.php (در جوملا) یا فایلهای لاگ و پشتیبان، حاوی اطلاعات بسیار حساسی مانند رمزهای عبور دیتابیس هستند. اگر کسی بتواند مستقیم به این فایلها از طریق مرورگر دسترسی پیدا کند، همه چگونه؟رود.
**چگونه؟** با ایجاد.htaccessیل **.htaccess** در پوشه ریشه سایت، میتوانید دسترسی به این فایلها را مسدود کنید. چند خط کد ساده میتواند از دیدن یا دانلود این فایلها توسط دیگران۹. ایمنسازی PHP: خاموش کردن توابع خطرناکن توابع غیرضروری و خطرناک PHP را غیرفعال کنید. غچرا؟نید.**
**چرا؟** PHP توابع قدرتمندی دارد که برای هکرها ابزار مناسبی است. توابعی مثل exec()، system()، passthru() که اجازه اجرای دستورات سیستم عامل را میدهند، یا eval() که میتواند کدهای مخرب را اجرا کند. اگر اسکریپت سایت شما به این توابع نیاز ندارد، بهتر است آنها را خاموش کنید.
چگونه؟ این کار با ویرایش فایل php.ini و استفاده از دستور disable_functions انجام میشود. اما باید دقت کنید! غیرفعال کردن توابعی که یک نرمافزار (مثلاً یک پلاگین وردپرس) به آنها نیاز دارد، باعث از کار افتادن سایت میشود. لیست کامل و روش ایمن انجام این کار را در مقاله اختصاصی “لیست توابع خطرناک PHP” بررسی خواهیم کرد.
—
۱۰. انتخاب بستر مناسب: هاست اشتراکی امنتر است یا VPS؟
مزایا و معایب امنیتی هر مدل میزبانی را بدانید.
این یک سوال مهم در راهنمای خرید هاست است. امنیت در این دو مدل تفاوت بنیادی دارد:
– هاست اشتراکی (Shared Hosting): شما یک آپارتمان در یک مجتمع بزرگ هستید. امنیت کلی ساختمان (سرور) به عهده لینکهاست است. آنها فایروال، بهروزرسانیها و نظارت کلی را انجام میدهند. نقطه ضعف: اگر همسایه شما (سایت دیگر روی همان سرور) بدرفتاری کند و هک شود، ممکن است به سایت شما نیز آسیب برساند. نقطه قوت: شما نگران امنیت زیرساخت نیستید.
– سرور مجازی VPS یا اختصاصی: شما صاحب یک ویلا هستید. همه چیز به عهده خودتان است. آزادی عمل کامل دارید اما مسئولیت کامل هم به دوش شماست. باید همه ۹ مورد قبلی را خودتان انجام دهید. امنیت نهایی میتواند بسیار قویتر از هاست اشتراکی باشد، اما فقط اگر شما بلد باشید و وقت بگذارید.
برای درک عمیقتر این تفاوتها و تصمیمگیری درست، مقاله “تفاوتهای امنیتی هاست اشتراکی و VPS” را از دست ندهید.
بخش سوالات متداول (FAQ)
۱. آیا بعد از انجام این تنظیمات، دیگر به افزونه امنیتی مثل وردفنس نیاز نداریم؟
خیر، نیاز دارید! این تنظیمات روی لایه سرور تمرکز دارند. یک افزونه امنیتی وردپرس مثل وردفنس روی لایه نرمافزار سایت شما کار میکند (مانند جلوگیری از حمله به فرم ورود، اسکن بدافزار، مسدود کردن IPهای مشکوک). این دو لایه مکمل هم هستند. برای حداکثر امنیت، به هر دو نیاز دارید.
۲. اگر تنظیمات را اشتباه انجام دهم و سایت از دسترس خارج شود، چه کار کنم؟
همیشه، قبل از هر تغییر مهمی در سرور، یک پشتیبان (Backup) کامل بگیرید. اگر دسترسی SSH دارید، میتوانید تغییرات را برگردانید. اگر نه، باید از طریق کنترل پنل هاست (مثل cPanel) یا با تماس با پشتیبانی میزبانی وب خود، مشکل را رفع کنید.
۳. چگونه بفهمم سرور من هک شده یا نه؟
علائم هشداردهنده: مشاهده فایلهای ناشناخته، تغییر ناگهانی در فایلهای اصلی، ایجاد خطای dangerous site توسط گوگل، ارسال ایمیلهای اسپم از طرف سایت شما، یا افزایش غیرعادی مصرف منابع سرور (CPU/RAM). در صورت مشاهده این موارد، سریعاً با یک متخصص مشورت کنید.
۴. این تنظیمات برای هاست اشتراکی cPanel هم قابل انجام است؟
برخی از این موارد (مانند بهروزرسانی، تنظیم دسترسی فایلها با File Manager، پنهان کردن نسخه) در cPanel قابل انجام است. اما موارد مربوط به SSH و فایروال سطح سرور، معمولاً توسط ارائهدهنده هاست مدیریت میشود و شما دسترسی مستقیم ندارید. همیشه از پشتیبانی هاست خود سوال کنید.
۵. مهمترین مورد از این ۱۰ مورد کدام است؟
اگر فقط وقت انجام یک کار را دارید، حتماً همه چیز را بهروز نگه دارید (مورد شماره ۱). بهروزرسانی، دهها حفره امنیتی را به طور خودکار میبندد. اما برای امنیت واقعی، باید همه این موارد را مانند حلقههای یک زنجیر، به تدریج و با دقت اجرا کنید.
جمعبندی و اقدام نهایی
امنیت یک مقصد نیست، یک سفر همیشگی است. هکرها هر روز روشهای جدیدی پیدا میکنند و ما باید همیشه هوشیار باشیم. این ۱۰ تنظیم، پایههای قلعه امنیتی شما هستند.
خلاصه نکات کلیدی:
– همیشه بهروز باشید: مثل واکسینه کردن سیستم.
– ورود امن بسازید: کاربر root را قفل کنید و از کلید SSH استفاده کنید.
– درها را ببندید: با فایروال، پورتهای غیرضروری را مسدود کنید.
– قدرت را محدود کنید: با کاربران جداگانه و تنظیم سطح دسترسی صحیح.
– اطلاعات را پنهان کنید: نسخه نرمافزارها را نشان ندهید.
– فایلهای حساس را قفل کنید: با .htaccess از آنها محافظت کنید.
– ابزارهای خطرناک را بردارید: توابع غیرضروری PHP را غیرفعال کنید.
– بستر مناسب انتخاب کنید: بین هاست اشتراکی و VPS، با توجه به دانش خودتان انتخاب کنید.
با انجام این موارد، احتمال مواجهه سایتتان با خطای dangerous site یا هک شدن، به شدت کاهش مییابد و گام بزرگی در افزایش امنیت هاست خود برداشتهاید.
متن مقاله را با بهترین کیفیت بشنوید
بهترینها

بازدید :
پر بازدیدترین ها

بازدید :