یکی از چالشهای مهم در مدیریت سرورها، مسئله Abuse است. ابیوز به استفاده نادرست از منابع سرور اشاره دارد که میتواند منجر به تعلیق سرور، صدمه به اعتبار و افزایش هزینهها شود. این مقاله به بررسی مفهوم Abuse، انواع آن و روشهای جلوگیری از این مشکلات با استفاده از تنظیمات فایروال و اسکریپت های کاربردی میپردازد. با اتخاذ رویکردهای مناسب، میتوان امنیت سرورها، بهویژه در سرویسدهندههای خارجی مانند Hetzner و OVH، را به طور قابلتوجهی افزایش داد.
Abuse چیست و چرا اهمیت دارد؟
ابیوز به معنای استفاده غیرمجاز یا سوءاستفاده از منابع سرور است که میتواند باعث اختلال در عملکرد سرور یا آسیب به سایر کاربران شود. این سوءاستفاده میتواند شامل فعالیتهایی مانند ارسال اسپم، حملات سایبری (مانند DDoS)، استفاده بیش از حد از منابع (CPU، RAM، پهنای باند)، یا میزبانی محتوای غیرقانونی باشد. ارائهدهندگان سرورهای مجازی معمولاً سیاستهای مشخصی برای مقابله با ابیوز دارند و در صورت تشخیص چنین فعالیتهایی، ممکن است سرور را مسدود یا خدمات را قطع کنند. هدف از این اقدامات، حفظ امنیت و پایداری شبکه و ارائه خدمات با کیفیت به تمام کاربران است.
پیامدهای عدم توجه به Abuse:
-
- تعلیق سرور: شرکتهای ارائهدهنده سرور، در صورت بروز ابیوز، سرور شما را مسدود میکنند.
- صدمه به اعتبار: ارسال اسپم یا انجام فعالیتهای مشکوک، باعث قرار گرفتن آیپی شما در لیستهای سیاه (Blacklist) میشود.
- افزایش هزینهها: مصرف منابع اضافی میتواند هزینههای بالایی به همراه داشته باشد.
انواع Abuse و راهکارهای مقابله با آن
۱. حملات DDoS (Distributed Denial of Service)
-
- تعریف: حملات DDoS با ارسال حجم عظیمی از ترافیک به یک سرور، باعث از کار افتادن آن میشوند.
- راهکارها:
- استفاده از سرویسهای محافظت در برابر DDoS: شرکتهای ارائه دهندهی خدمات میزبانی اغلب سرویسهای محافظت در برابر DDoS را ارائه میدهند.
- پیکربندی فایروال: با استفاده از فایروال در لینوکس و میکروتیک، میتوان قوانینی برای محدود کردن تعداد درخواستها از یک آدرس IP مشخص ایجاد کرد.
- استفاده از CDN (شبکه تحویل محتوا): CDN میتواند ترافیک را توزیع کرده و از سرور اصلی محافظت کند.
- نظارت بر ترافیک: با استفاده از ابزارهای نظارتی، میتوان افزایش ناگهانی ترافیک را شناسایی و اقدامات لازم را انجام داد.
۲. اسکن پورتها
-
- تعریف: هکرها با اسکن پورتهای باز یک سرور، به دنبال نقاط ضعف برای نفوذ هستند.
- راهکارها:
- بستن پورتهای غیر ضروری: تنها پورتهای ضروری برای سرویسهای شما را باز نگه دارید.
- استفاده از فایروال: فایروال در لینوکس و میکروتیک میتواند پورتهای اسکن شده را مسدود کند.
- استفاده از Honeypot: Honeypot یک سیستم است که به عنوان طعمه برای هکرها طراحی شده و میتواند حملات را شناسایی کند.
۳. حملات Brute-force
-
- تعریف: در حملات Brute-force هکرها با حدس زدن ترکیبات مختلف نام کاربری و رمز عبور، سعی در ورود به سیستم دارند.
- راهکارها:
- استفاده از رمزهای عبور قوی: رمزهای عبور قوی و منحصر به فرد برای هر حساب کاربری ایجاد کنید.
- محدود کردن تعداد تلاشهای ناموفق برای ورود: با استفاده از ابزارهایی مانند Fail2ban میتوان تعداد تلاشهای ناموفق برای ورود را محدود کرد.
- فعال کردن احراز هویت دو مرحلهای: احراز هویت دو مرحلهای یک لایه امنیتی اضافی را فراهم میکند.
۴. اسپم
-
- تعریف: ارسال حجم زیادی از ایمیلهای ناخواسته.
- راهکارها:
- استفاده از فایروال: فایروال میکروتیک میتواند ترافیک ایمیل ورودی و خروجی را فیلتر کند.
- استفاده از SPF، DKIM و DMARC: این استانداردها برای احراز هویت ایمیلها و جلوگیری از اسپم استفاده میشوند.
- استفاده از سرویسهای ضد اسپم: سرویسهای ضد اسپم میتوانند ایمیلهای اسپم را شناسایی و فیلتر کنند.
۵. حملات XSS (Cross-Site Scripting)
-
- تعریف: تزریق کدهای مخرب به صفحات وب.
- راهکارها:
- پاکسازی ورودیها: تمام ورودیهای کاربر را قبل از نمایش در صفحات وب پاکسازی کنید.
- استفاده از فریمورکهای امن: فریمورکهای وب امن میتوانند به شما در جلوگیری از حملات XSS کمک کنند.
روش های کلی پیشگیری از Abuse:
- بهروزرسانی سیستم عامل و نرم افزارها: همیشه سیستم عامل و نرم افزارهای خود را به آخرین نسخه بهروزرسانی کنید تا آسیبپذیریها برطرف شوند.
- استفاده از سیستم تشخیص نفوذ (IDS): سیستمهای IDS میتوانند حملات را شناسایی و هشدار دهند.
- ایجاد بکآپ: به طور مرتب از دادههای خود بکآپ تهیه کنید تا در صورت بروز مشکلات، بتوانید آنها را بازیابی کنید.
- امنیت اطلاعات: از رمزهای عبور قوی استفاده کنید، دسترسی به پنل کنترل سرور را محدود کنید و از احراز هویت دو مرحلهای استفاده کنید.
- نظارت مداوم و بهرهگیری از ابزارهای مانیتورینگ: به طور مداوم سرور خود را نظارت کنید و در صورت مشاهده هرگونه فعالیت مشکوک، اقدامات لازم را انجام دهید.
- آموزش کاربران: به کاربران خود آموزش دهید که چگونه از حسابهای کاربری خود محافظت کنند و از کلیک کردن روی لینکهای مشکوک خودداری کنند.
- استفاده از گواهیهای SSL برای افزایش امنیت.
برای جلوگیری از ابیوز چه پورتهایی باید باز بمونن و چه پورت هایی باید بسته شوند؟
- پورتهای ضروری برای سرویسهای اصلی:
- پورت ۸۰ (HTTP): برای دسترسی به وبسرورها (اگر از HTTP استفاده میکنید).
- پورت ۴۴۳ (HTTPS): برای دسترسی امن به وبسرورها (اگر از SSL/TLS استفاده میکنید).
- پورت ۲۲ (SSH): برای مدیریت سرور از راه دور. بهتر است این پورت فقط به IPهای خاصی محدود شود.
- پورت ۲۵ (SMTP): اگر سرور شما ایمیل ارسال میکند.
- پورت ۵۸۷ (SMTP Submission): برای ارسال ایمیل با احراز هویت.
- پورت ۹۹۳ (IMAPS): برای دسترسی ایمن به ایمیلها (IMAP با SSL/TLS).
- پورت ۹۹۵ (POP3S): برای دسترسی ایمن به ایمیلها (POP3 با SSL/TLS).
- پورتهای مربوط به DNS:
- پورت ۵۳ (DNS): اگر سرور شما به عنوان DNS Server عمل میکند.
- پورتهای مربوط به VPN:
- پورت ۱۱۹۴ (OpenVPN): اگر از OpenVPN استفاده میکنید.
- پورت ۵۰۰ و ۴۵۰۰ (IPSec): اگر از IPSec VPN استفاده میکنید.
- پورتهای مربوط به دیتابیس:
- پورت ۳۳۰۶ (MySQL): اگر از MySQL استفاده میکنید.
- پورت ۵۴۳۲ (PostgreSQL): اگر از PostgreSQL استفاده میکنید.
پورتهایی که باید بسته شوند:
- پورتهای غیرضروری:
- پورت ۲۱ (FTP): FTP به دلیل انتقال اطلاعات به صورت متن ساده (بدون رمزنگاری) ناامن است. بهتر است از SFTP (پورت ۲۲) یا FTPS استفاده کنید.
- پورت ۲۳ (Telnet): Telnet نیز ناامن است و باید از SSH (پورت ۲۲) جایگزین شود.
- پورت ۱۱۰ (POP3): POP3 بدون SSL/TLS ناامن است. بهتر است از POP3S (پورت ۹۹۵) استفاده کنید.
- پورت ۱۴۳ (IMAP): IMAP بدون SSL/TLS ناامن است. بهتر است از IMAPS (پورت ۹۹۳) استفاده کنید.
- پورتهای مربوط به سرویسهای غیرفعال:
- اگر سرویس خاصی مانند Telnet، FTP یا سایر سرویسهای غیرضروری را استفاده نمیکنید، پورتهای مربوط به آنها را ببندید.
- پورتهای مدیریتی:
- پورت ۲۲ (SSH): اگر از SSH استفاده میکنید، بهتر است دسترسی به این پورت را به IPهای خاصی محدود کنید تا از حملات Brute Force جلوگیری شود.
- پورتهای مربوط به پروتکلهای قدیمی و ناامن:
- پورت ۱۳۷-۱۳۹ (NetBIOS): این پورتها برای اشتراکگذاری فایل در شبکههای ویندوزی استفاده میشوند و معمولاً در محیطهای اینترنتی نباید باز باشند.
- پورت ۴۴۵ (SMB): این پورت نیز برای اشتراکگذاری فایل استفاده میشود و در معرض حملاتی مانند EternalBlue است.
مراحل جلوگیری از Abuse در سرورهای ابونتو:
۱-آپدیت سرور:
apt-get update -y
۲-تغییر پسورد:
passwd
۳-تغییر پورت پیش فرض:
sudo nano /etc/ssh/sshd_config
sudo service ssh restart
۴-تنظیم فایروال در سرورهای لینوکسی برای مقابله با Abuse
ابزارهای فایروال در لینوکس
۱. iptables: یکی از قدیمیترین و قدرتمندترین ابزارها برای مدیریت قوانین فایروال که انعطافپذیری بالایی دارد.
۲. UFW (Uncomplicated Firewall): رابط سادهای برای iptables که مناسب کاربران مبتدی است.
۳. firewalld: ابزاری مدرن با قابلیت پشتیبانی از مناطق (Zones) برای تنظیم قوانین بهصورت منطقهای.
تنظیمات فایروال برای مقابله با Abuse
۱.نصب ابزار فایروال :
sudo apt install ufw
۲. فعال کردن فایروال:
ufw enable
۳. باز کردن پورت ورود به سرور: پورت پیش فرض ssh سرور پورت ۲۲ است اگر پورت دیگری ست شده حتما باید باز شود.
۴.باز کردن پورت های پنل: برای پنل های تک پورتی اقدام به باز کردن پورت: خود پنل، پورت inbound ها و پورت outbound ها نمایید.
ufw allow [ssh port]
ufw allow [panel port]
ufw allow [inbound port]
ufw allow [outbound port]
مثال:
ufw allow 22
ufw allow 2090
ufw allow 6968
ufw allow 6667
۵. پنل های مولتی پورت: مانند کافکا باید تمامی پورت ها را باز نمایید.
ufw allow 1:65535/tcp
ufw allow 1:65535/udp
۶.محدود کردن دسترسی به آدرسهای خاص در شبکه با UFW:
ufw deny out from any to 10.0.0.0/8
ufw deny out from any to 172.16.0.0/12
ufw deny out from any to 192.168.0.0/16
ufw deny out from any to 100.64.0.0/10
ufw deny out from any to 198.18.0.0/15
ufw deny out from any to 169.254.0.0/16
ufw deny out from any to 102.236.0.0/16
ufw deny out from any to 2.60.0.0/16
ufw deny out from any to 5.1.41.0/12
۷. اگر نت اسکن از پورت های خاصی انجام شده: با دستور زیر هم میتونید پورت مورد نظر رو ببندید.
sudo ufw deny 8777/udp
نکات مهم:
-
-
- پس از اعمال تغییرات، میتوانید وضعیت UFW را با دستور زیر بررسی کنید:
- این دستور لیست تمام قوانین فعال UFW را نمایش میدهد.
-
sudo ufw status
-
-
- اگر میخواهید یک قانون را حذف کنید، میتوانید از دستور delete استفاده کنید:
-
sudo ufw delete deny 8777/udp
۸. مسدودسازی آی پی هایی که پورت اسکن انجام می دهد با iptables:
-
-
- شناسایی و مسدود کردن IPهای مشکوک.
- دستور زیر را برای مسدود کردن ترافیک ناخواسته یا مخرب از محدودههای IP خاص.
- اگر ترافیک ترافیک ناخواسته از رنج آی پی خاصی روی سرور شما مشاهده شده می تواند آن رنج آی پی را به دستورات زیر اضافه نموده و در سرور خود اعمال نمایید.
-
sudo iptables -A FORWARD -s 200.0.0.0/8 -j DROP
sudo iptables -A FORWARD -s 102.0.0.0/8 -j DROP
sudo iptables -A FORWARD -s 10.0.0.0/8 -j DROP
sudo iptables -A FORWARD -s 100.64.0.0/10 -j DROP
sudo iptables -A FORWARD -s 169.254.0.0/16 -j DROP
sudo iptables -A FORWARD -s 198.18.0.0/15 -j DROP
sudo iptables -A FORWARD -s 198.51.100.0/24 -j DROP
sudo iptables -A FORWARD -s 203.0.113.0/24 -j DROP
sudo iptables -A FORWARD -s 224.0.0.0/4 -j DROP
sudo iptables -A FORWARD -s 240.0.0.0/4 -j DROP
sudo iptables -A FORWARD -s 255.255.255.255/32 -j DROP
sudo iptables -A FORWARD -s 192.0.0.0/24 -j DROP
sudo iptables -A FORWARD -s 192.0.2.0/24 -j DROP
sudo iptables -A FORWARD -s 127.0.0.0/8 -j DROP
sudo iptables -A FORWARD -s 127.0.53.53 -j DROP
sudo iptables -A FORWARD -s 192.168.0.0/16 -j DROP
sudo iptables -A FORWARD -s 0.0.0.0/8 -j DROP
sudo iptables -A FORWARD -s 172.16.0.0/12 -j DROP
sudo iptables -A FORWARD -s 224.0.0.0/3 -j DROP
sudo iptables -A FORWARD -s 192.88.99.0/24 -j DROP
sudo iptables -A FORWARD -s 169.254.0.0/16 -j DROP
sudo iptables -A FORWARD -s 198.18.140.0/24 -j DROP
sudo iptables -A FORWARD -s 102.230.9.0/24 -j DROP
sudo iptables -A FORWARD -s 102.233.71.0/24 -j DROP
iptables-save
ufw status
مراحل جلوگیری از Abuse در سرورهای میکروتیک:
۱-اقدامات اولیه:
-
-
دسترسی به روتر میکروتیک
-
ابتدا از طریق Winbox، SSH یا وب اینترفیس وارد میکروتیک شوید. اطمینان حاصل کنید که دسترسی لازم برای تغییر تنظیمات فایروال دارید.
-
-
بهروزرسانی سیستمعامل RouterOS
-
برای پیشگیری از آسیبپذیریها، مطمئن شوید که روتر میکروتیک شما از آخرین نسخه سیستمعامل RouterOS استفاده میکند.
دستور بهروزرسانی:
/system package update install
-
-
تغییر یوزر نیم و پسورد: با رفتن به مسیر زیر در میکروتیک:
-
System> User> User List
-
-
بستن پورت های اضافی و تغییر پورت پیش فرض winbox و ssh برای امنیت بیشتر:
-
IP> Service> IP Service List
-
-
ایجاد Backup:
-
پیش از هرگونه تغییر، یک نسخه پشتیبان از تنظیمات فعلی تهیه کنید:
/system backup save name=backup
۲-تنظیم فایروال میکروتیک برای مقابله با Abuse:
مقابله با حملات DDoS
یکی از رایجترین تهدیدات، حملات DDoS است که میتواند باعث از کار افتادن شبکه شود. برای مقابله:
مسدودسازی تعداد بالای کانکشن:
در این مرحله تعداد کانکشنهای مشکوک از یک آدرس IP محدود میشود:
/ip firewall filter add chain=input connection-limit=50,32 action=drop comment="Limit connections per IP"
محدود کردن تعداد بستهها در ثانیه (PPS):
برای جلوگیری از ارسال بیش از حد بسته:
/ip firewall filter add chain=input protocol=tcp limit=100,10 action=drop comment="Limit packets per second"
حفاظت از پورتهای حساس:
فقط دسترسیهای ضروری به پورتهایی مانند SSH و Winbox را مجاز کنید:
/ip firewall filter add chain=input protocol=tcp dst-port=22 action=accept src-address-list=trusted_ips comment="Allow SSH from trusted IPs"
/ip firewall filter add chain=input protocol=tcp dst-port=8291 action=accept src-address-list=trusted_ips comment="Allow Winbox from trusted IPs"
/ip firewall filter add chain=input protocol=tcp dst-port=22,8291 action=drop comment="Block SSH and Winbox for others"
مقابله با اسپم
برای جلوگیری از ارسال اسپم از طریق شبکه شما، اقدامات زیر را انجام دهید:
محدودیت ارسال ایمیل:
پورت SMTP (پورت ۲۵) را فقط برای IPهای مطمئن باز بگذارید:
/ip firewall filter add chain=output protocol=tcp dst-port=25 src-address-list=trusted_ips action=accept comment="Allow SMTP for trusted IPs"
/ip firewall filter add chain=output protocol=tcp dst-port=25 action=drop comment="Block SMTP for others"
شناسایی رفتار اسپم:
ایجاد لیستی برای شناسایی IPهایی که تعداد زیادی ایمیل ارسال میکنند:
/ip firewall mangle add chain=prerouting protocol=tcp dst-port=25 action=mark-connection new-connection-mark=smtp_conn
/ip firewall mangle add chain=prerouting connection-mark=smtp_conn action=mark-packet new-packet-mark=smtp_pkt
/ip firewall filter add chain=forward packet-mark=smtp_pkt limit=50,5 action=accept comment="Limit SMTP packets"
/ip firewall filter add chain=forward packet-mark=smtp_pkt action=drop comment="Drop excess SMTP packets"
مسدودسازی اسکن پورت
برای جلوگیری از اسکن پورت توسط هکرها:
شناسایی و مسدودسازی IPهای مشکوک:
/ip firewall filter add chain=input protocol=tcp psd=21,3s,3,1 action=add-src-to-address-list address-list=port_scanners address-list-timeout=1h comment="Detect port scanners"
تنظیم محدودیتهای پیشرفته
۱. محدود کردن تعداد تلاشهای ورود (Brute-force Protection)
برای محافظت از SSH:
/ip firewall filter add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop comment="Block SSH brute force"
/ip firewall filter add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=!trusted_ips action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=10m comment="Detect SSH brute force"
۲. ایجاد لیست سفید و سیاه (Whitelist & Blacklist)
IPهای قابل اعتماد را به لیست سفید اضافه کنید:
/ip firewall address-list add list=trusted_ips address=192.168.1.0/24 comment="Trusted IP Range"
IPهای مشکوک یا مهاجم را در لیست سیاه قرار دهید:
/ip firewall address-list add list=blacklist address=203.0.113.45 comment="Blocked IP"
/ip firewall filter add chain=input src-address-list=blacklist action=drop comment="Block Blacklist IPs"
نظارت و مدیریت
۱. نظارت بر ترافیک شبکه
از ابزار Torch برای مشاهده ترافیک مشکوک استفاده کنید:
/tool torch
۲. بررسی لاگها
لاگها را برای شناسایی فعالیتهای غیرعادی بررسی کنید:
/log print
۳. پشتیبانگیری از تنظیمات نهایی
پس از اتمام تنظیمات، نسخه نهایی پیکربندی را ذخیره کنید:
/export file=final_firewall_config
۴- لینک دانلود فایروال میکروتیک برای جلوگیری از Abuse:
برای سهولت کار می توانید از طریق این لینک، فایل فایروال میکروتیک تهیه شده توسط تیم زویپ سرور را دانلود و در مسیر Files> File List آپلود نموده و داخل ترمینال Import نمایید.
نتیجهگیری
مدیریت Abuse یکی از الزامات حیاتی در حفظ امنیت و عملکرد بهینه سرورها است. با اجرای راهکارهایی مانند پیکربندی دقیق فایروال، محدودسازی دسترسیها، و پایش مداوم ترافیک، میتوان بسیاری از تهدیدات امنیتی را خنثی کرد. اسکریپت ارائهشده در این مقاله میتواند شروعی ساده و موثر برای ارتقای امنیت سرور باشد.
اگر به دنبال سرورهای ایمن و قابل اعتماد هستید، زویپ سرور بهترین گزینه است. با خرید سرورهای مجازی و اختصاصی از زویپ سرور، تیم تخصصی ما تنظیمات امنیتی پیشرفته مانند جلوگیری از abuse و نت اسکن را بهصورت رایگان برای شما انجام میدهد تا با خیال راحت بر کسبوکارتان تمرکز کنید.
