یک VPS تازه، در همان چند دقیقهی اول آنلاینشدنش اسکن و بررسی میشود. خبر خوب این است: یک ساعت سختسازیِ مرحلهبهمرحله جلوی اکثریت قریببهاتفاق حملات فرصتطلبانه را میگیرد. این چکلیست، به همان ترتیبی که اهمیت دارد، برای یک سرور تازه با تمرکز بر حریمخصوصی است.
1. اول SSH را قفل کنید
یک کاربر غیر-root با دسترسی sudo بسازید، کلید عمومی خودتان را اضافه کنید، و سپس در sshd_config احراز هویت با رمز عبور و ورود root را غیرفعال کنید (PasswordAuthentication no، PermitRootLogin no). فقط همینکه SSH صرفاً با کلید کار کند، جلوی حدسزدن رمز عبور را که بیشترِ نویز روی سرورتان را تشکیل میدهد میگیرد. SSH را ریاستارت کنید و پیش از بستن نشست فعلیتان، مطمئن شوید یک نشست جدید کار میکند.

2. یک فایروال جلوی سرور بگذارید
بهصورت پیشفرض همهی ترافیک ورودی را رد کنید و فقط چیزی را که لازم دارید اجازه دهید. با ufw: ورودی را رد کنید، خروجی را اجازه دهید، سپس پورت SSH و پورتهای سرویسهای مشخصی که اجرا میکنید را باز کنید. یک فایروال، «هر پورت باز یک هدف است» را به «فقط درهایی که خودتان انتخاب کردهاید وجود دارند» تبدیل میکند، که سطح حمله را بهشدت کوچک میکند.
3. fail2ban اضافه کنید
fail2ban را نصب کنید تا لاگهای احراز هویت را زیر نظر بگیرد و IPهایی که مکرراً شکست میخورند را موقتاً مسدود کند. حتی با SSH فقط-کلید، این ابزار نویز لاگ را کم میکند و تلاشهای brute-force علیه هر سرویسی که در معرض دید قرار میدهید را کند میکند. تنظیمات پیشفرض معقول هستند؛ jail مربوط به sshd و هر jail دیگری برای سرویسهایی که اجرا میکنید را فعال کنید.
4. بهروزرسانیهای امنیتی خودکار را روشن کنید
unattended-upgrades را (در Debian/Ubuntu) فعال کنید تا وصلههای امنیتی بدون اینکه خودتان یادتان بماند نصب شوند. رایجترین راهی که سرورها هک میشوند، یک آسیبپذیری شناختهشده است که وصلهاش موجود بوده — خودکارسازی بهروزرسانیها، همانموقع که خواب هستید این پنجره را میبندد.
5. سطح حمله را کاهش دهید
سرویسهایی که استفاده نمیکنید را حذف نصب کنید، دیمونهای فقط-محلی را به 127.0.0.1 محدود کنید، و با ss -tlnp بررسی کنید چه چیزی در حال گوشدادن است. هر سرویسِ در حال گوشدادن، یک نقطهی ورود بالقوه است؛ هرچه کمتر اجرا و منتشر کنید، چیز کمتری برای حمله وجود دارد. سپس بکاپهای خارج از سرور راهاندازی کنید تا یک نفوذ قابلجبران باشد، نه فاجعهبار.
خلاصهی این یک ساعت
SSH فقط-کلید، یک فایروال با رد پیشفرض، fail2ban، بهروزرسانیهای خودکار، و یک سطح گوشدادن حداقلی. هیچکدام از اینها عجیبوغریب نیست، همهشان سریع هستند، و در کنار هم جلوی همان حملات خودکاری را میگیرند که تقریباً همهی نفوذهای واقعی را تشکیل میدهند. پیش از استقرار هر چیزی که برایتان اهمیت دارد، این کار را انجام دهید.