راهکارها
بازارچه ابری
Arvan Docs

مستندات فنی

دسترسی به تمامی مستندات محصولات ابر آروان

Categories
Close
دسته‌بندی‌های سایت مشاهده دسته‌بندی‌ها بستن دسته‌بندی‌ها





مشاهده همه دسته‌ها All Categories

جلوگیری از اتصال بات‌ها و مهاجمین به کمک Varnish در Magento

Time To Read ۲ دقیقه
Date ۲۳ بهمن ۱۳۹۸

اگر با کندی یا ضعف عملکرد روبه‌رو شدید، یکی از دلایل می‌تواند حمله‌ی بات‌های اینترنتی باشد. هدف بات‌ها از این حملات، پیدا کردن باگی امنیتی در کد اپلیکیشن یا نرم‌افزار شماست.

کتابخانه‌ها و تصاویر ابری ما همواره به‌روزرسانی می‌شوند اما حتا با وجود امن بودن در برابر چنین حملاتی، باز هم احتمال این وجود دارد که سرور شما به علت ترافیک ایجاد شده عملکرد ضعیفی از خود نشان دهد.

برای اطلاع از این‌که آیا مورد حمله قرار گرفته‌اید یا نه، دستور زیر را اجرا کنید:

cd /opt/bitnami/apache2/logs/ tail -n 10000 access_log | awk '{print $1}'| sort| uniq -c| sort -nr| head -n 10

این دستور به شما نشان می‌دهد که یک IP چند دفعه به وب سرور شما وصل شده است. اگر مشاهده کردید که IP خاصی بیش از سایرین به وب سرور شما متصل شده است، دستور زیر را اجرا کنید (عبارت ATTACKER_IP را با IP مهاجم جایگزین کنید):

cd /opt/bitnami/apache2/logs/ grep "ATTACKER_IP" access_log

اگر دیدید که IP موردنظر همواره سعی در دسترسی به آدرس خاصی دارد، اگر آن آدرس برایتان آشنا نیست یا اگر در حال تلاش برای اجرای مستقیم باینری یا اسکریپت‌هاست، احتمالا آن IP، آدرس یک بات است.

برای جلوگیری از اتصال این مهاجم‌ها راحت‌ترین کار استفاده از فایل پیکربندی Varnish ™ است. برای استفاده از این فایل مراحل زیر را طی کنید:

  • فایل /opt/bitnami/varnish/etc/varnish/default.vcl را ویرایش و آی‌پی آدرس‌های موردنظر خود را به لیست کنترل دسترسی (ACL) اضافه کنید. مثال زیر نشان می‌دهد که چگونه جلوی اتصال آدرس IP، 1.2.3.4 را بگیرید:
acl forbidden {       "1.2.3.4"/24; }

شما می‌توانید چندین آدرس IP را مسدود کنید. برای این کار هر IP را براساس الگوی بالا در خطی جداگانه وارد کنید.

  • خطوط زیر را به vcl_recv اضافه کنید:
sub vcl_recv { ...   if (client.ip ~ forbidden) {     return(synth(403, "Forbidden"));   } ... }
  • Varnish ™ را دوباره راه‌اندازی کنید:
sudo /opt/bitnami/ctlscript.sh restart varnish
  • وب سرور Apache را دوباره راه‌اندازی کنید:
sudo /opt/bitnami/ctlscript.sh restart apache