سلام وقت بخیر
متاسفانه نگفتید سیستم عامل و توزیع و وب سرور و پنل و … چی هست که بتونم دقیق تر راهنمایی کنم. ولی یه سری موارد که باع افزایش امنیت سرور میشه رو بهتون میگم هر کدومش که براتون ممکن بود بررسی کنید.
1 - اولین مورد تنظیم دقیق فایروال هست. کانفیگ فایروال سرور اولین و مهم ترین بخش بعد از تهیه یک سرور مجازی یا اختصاصی هست. تنظیمات دقیق فایروال رو می تونید توی گوگل سرچ کنید اگه کانفیگ نکردید.
2 - اگه از WHM استفاده حتما Host Access Control رو تنظیم کنید. قبلش مطمئن بشید که آی پی اینترنت شما استاتیک هست. با این ابزار می تونید تعیین کنید که چه آی پی یا آی پی هایی به بخش های زیر دسترسی داشته باشن:
cPanel
WHM
SSH
FTP and Secure FTP
SMTP
IMAP
POP3
Webmail
Web Disk
3 - پورت پیش فرض دسترسی به SSH که 22 هست رو تغییر بدید. دستور زیر رو البته با تغییر پیشوند اجرا کنید:
vim /etc/ssh/sshd_config
توی این فایل یه همچین خطی باید باشه:
#What ports, IPs, and protocols we listen for
port 22
بجای 22 یک پورت وارد کنید که هیچ جای سرور استفاده نشده باشه. سرور رو ریستارت کنید و تمام.
4 - از ابزار Fail2Ban روی سرور استفاده کنید. این ابزار قابلیتی به سرور میده که بعد از چندین مرتبه تلاش برای ورود و البته تلاش ناموفق، دسترسی اون فرد و آی پی رو مسدود و امکان لاگین رو برای دقایق دلخواه قفل کنه. اطلاعات بیشتر:
https://www.fail2ban.org/wiki/index.php/Main_Page
5 - کلا دسترسی root رو ببندید و از یه اکانت متفاوت لاگین کنید! شاید عجیب باشه ولی اکثر سرورهایی که در معرض خطر هستند این کار رو انجام میدن. به این صورت که اول یه یوزر با نام کاربری دلخواه و البته خیلی خاص و پسورد قدرتمند ایجاد می کنید و بعد امکان لاگین با root رو خاموش می کنید. بعد از اینکار دیگه ربات ها و ابزارهای هکری امکان لاگین و درخواست ورود با یوزر root رو ندارن که همین خودش باعث افزایش امنیت میشه. برای انجام این راه وارد /etc/ssh/sshd_config
بشید و پارامتر PermitRootLogin رو پیدا کنید. بطور پیش فرض روی Yes هست که باید به No تغییر بدید.
فقط قبلش حتما اکانت با سطح دسترسی دلخواهتون رو ساخته باشید. در غیراینصورت کلا دسترسی به سرور رو از دست میدید!
6 - پورت های باز و غیرضروری سرور رو ببندید. کافیه دستور netstat رو اجرا کنید تا همه پورت های باز براتون لیست بشن. می تونید با دستور iptables تمامی پورت های باز رو ببندید و یا با دستور chkconfig سرویس های غیرضروری رو خاموش کنید. اینکار هم باعث افزایش بیشتر امنیت میشه و هم باعث افزایش سرعت سرور
7 - پکیج هایی که روی سرور هست و تنظیم نکردید و قصد ندارید استفاده کنید رو کلا حذف کنید! پکیج ها حتی اگه خاموش باشن بازم می تونن باعث تداخل و مشکلات امنیت و سرعتی بشن.
8 - اگه روی سرور و سایتتون از IPv6 استفاده ای نمی کنید، بهتره خاموشش کنید. عموما توی سایت از IPv4 استفاده میشه ولی هکرا خیلی راحت می تونن از IPv6 برای ارسال و تبادل ترافیک زیاد به سرور استفاده کنن که هم باعث افت سرعت و کاهش امنیت میشه. برای خاموش کردنش وارد /etc/sysconfig/
بشید و این دو مقدار رو به این صورت تغییر بدید: NETWORKING_ IPV6=no
و IPV6INIT=no
9 - اگه سرورتون لینوکس هست پوشه /boot
رو به Read Only تغییر بدید.
10 - یه اسکنر rootkit نصب کنید. روتکیت ها بدافزارهای خیلی خطرناکی هستن که می تونن دسترسی های غیرقابل ردگیری به سرور ایجاد کنن. ولی خوشبختانه میشه با Chkrootkit این بدافزارها رو شناسایی و حذف کرد:
https://www.chkrootkit.org/
11 - نرم افزار GeoIP Firewall روی ویندوز پولیه ولی روی لینوکس و ویندوز میشه با همون iptables آی پی های خاص رو مسدود کرد:
https://docs.rackspace.com/support/how-to/block-ip-range-from-countries-with-geoip-and-iptables/