سختسازی امنیتی سرور لینوکس
اسکریپت harden-server.sh همان لایه امنیتی را روی سرورهای Debian و Ubuntu اعمال میکند که نکسنود هنگام ساخت ماشینهای مجازی جدید پیکربندی میکند — با این تفاوت که برای سرورهای در حال اجرا هم امن اجرا میشود.
اجرای سریع
برای اجرای تعاملی (با تأیید در هر مرحله):
curl -fsSL https://blog.nexnode.cloud/linux-security/harden-server.sh | sudo bash
برای اجرای غیرتعاملی با ریاستارت خودکار در پایان:
curl -fsSL https://blog.nexnode.cloud/linux-security/harden-server.sh | sudo bash -s -- --yes
اگر نمیخواهید سرور بلافاصله ریاستارت شود:
curl -fsSL https://blog.nexnode.cloud/linux-security/harden-server.sh | sudo bash -s -- --no-reboot
پیشنیازها
- توزیع Debian یا Ubuntu با
apt-get - دسترسی root (یا
sudo) - اتصال اینترنت فعال
نکته: اسکریپت تمام بستههای سیستم را بهروزرسانی میکند و در پایان ممکن است از شما درخواست ریاستارت کند تا بهروزرسانیهای کرنل اعمال شوند.
چه کارهایی انجام میشود؟
اسکریپت در پنج مرحله اجرا میشود:
- نصب بستههای پایه —
ufw،nftables،curlوca-certificates؛ بهعلاوهapt updateوdist-upgradeکامل. - egress-guard با nftables — جدول
egress_guardنرخ اتصالهای خروجی جدید به هر مقصد را محدود میکند (۶۰ اتصال در ثانیه، burst ۱۲۰) تا از اسکن پورت و سیل ترافیک خروجی جلوگیری شود. - پیکربندی UFW — ورودی و خروجی بهطور پیشفرض مجاز؛ اما خروج به محدودههای bogon و abuse بلاک میشود (RFC1918، TEST-NET، محدودههای شناختهشده سوءاستفاده و غیره).
- CrowdSec + firewall bouncer — محافظت در برابر brute-force روی SSH و استفاده از لیستهای بلاک مشترک جامعه؛ نصب collection لینوکس و bouncer مبتنی بر iptables.
- خلاصه وضعیت — نمایش وضعیت سرویسها، خروجی
ufw status verboseو لیست bouncerهای CrowdSec.
لاگ و عیبیابی
تمام خروجی اسکریپت در فایل زیر ذخیره میشود:
/var/log/nexnode-hardening.log
در صورت خطا، پیام abort با شماره خط نمایش داده میشود و میتوانید جزئیات را در همین فایل لاگ بررسی کنید.
سرویسهای فعال پس از اجرا
ufw— فایروال اصلیegress-guard.service— محدودیت نرخ خروجی nftablescrowdsec— تشخیص تهدید و لیستهای بلاکcrowdsec-firewall-bouncer— اعمال تصمیمهای CrowdSec روی فایروال
اگر سرور تازهای از نکسنود تهیه کردهاید، بسیاری از این تنظیمات از قبل اعمال شدهاند. این اسکریپت برای سرورهای قدیمیتر، ماشینهای migrateشده یا هر VPS Debian/Ubuntu دیگری که میخواهید به همان استاندارد امنیتی برسد مفید است.