021-91014197 call

چگونگی دسترسی به IPهای اصلی بازدیدکنندگان وب‌سایت

به طور پیش‌فرض اَبر دِراک به عنوان یک Reverse P عمل می‌کند. به همین ترتیب، تمام اتصالات به سرور اصلی (مبدا) شما از آدرس های IP اَبر دِراک می‌آیند. در این حالت می‌بایست به دو نکته زیر توجه کنید:

  1. اگر برنامه شما به عنوان بخشی از منطق خود از IP اصلی بازدیدکننده وب‌سایت استفاده می‌کند، در حال حاضر از یک آدرس IP اَبر دِراک استفاده خواهد کرد. اگر از access log خود استفاده می کنید، آن‌ها اکنون یک آدرس IP اَبر دِراک را در لاگ به عنوان IP ثبت می‌کنند.
  2. با این‌حال اَبر دِراک طبق استاندارد می‌تواند IPهای اصلی بازدیدکنندگان را به شما بازگرداند. این اطلاعات در Headerهای Derak-Real-IP به شما تحویل داده می‌شوند.
  3. همواره لیست IPهای دِراک را به روزرسانی کنید. برای این کار می‌توانید ازاین لینک استفاده کنید: https://api.derak.cloud/public/ipv4

Nginx

برای اعمال این تنظیمات لازم است تا ماژول http_realip_module را برای Nginx خود نصب کنید. اگر درحال نصب Nginx از پکیج‌های اصلی مربوط به Distributionهای مختلف لینوکس مثل Ubuntu و Fedora و CentOS و … هستید، این ماژول به صورت پیش‌فرض بر روی Nginx نصب شده است. در غیر این صورت، اگر در حال کامپایل Nginx از کد منبع هستید، مطمئن شوید که در هنگام اجرای دستور configure/. پارامتر --with-http_realip_module وجود دارد.

با دستور زیر می‌توانید بررسی کنید که این ماژول بر روی سیستم شما نصب شده یا خیر؟

nginx -V 2>&1 | grep http_realip_module

با دستورات زیر می‌توانید مطمئن شوید که Real IP را تنها از ما دریافت می‌کنید:

set_real_ip_from 5.145.112.0/24;
set_real_ip_from 5.145.115.0/24;
.
.
.

real_ip_header Derak-Real-IP;

شما باید تمام بازه‌های IP اَبر دِراک را به صورت بالا اضافه کنید که در این کد فقط ۲ مورد ذکر شده‌است.

برای دسترسی به لیست به‌روز شده IPها در هرلحظه می‌توانید از لینک زیر استفاده کنید:
https://api.derak.cloud/public/ipv4
همچنین می‌توانید لیست بازه‌های IP اَبر دِراک را از اینجا ببینید.

Apache

در نسخه‌های ۲.۴ آپاچی یا بالاتر فایل remoteip_module (mod_remoteip.so) در پکیج نصب موجود است. برای فعال‌سازی این پکیج دستور زیر را اجرا کنید:

sudo a2enmod remoteip

فایل پیکربندی Apache را باز کنید. این فایل را می‌توانید از مسیر /etc/apache2/apache2.conf بیابید. سپس خطوط زیر را به آن اضافه کنید:

RemoteIPHeader Derak-Real-IP
RemoteIPTrustedProxy 5.145.112.0/24
RemoteIPTrustedProxy 5.145.115.0/24
.
.
.

شما باید تمام بازه‌های IP اَبر دِراک را به صورت بالا اضافه کنید که در این کد فقط ۲ مورد ذکر شده‌است.

برای دسترسی به لیست به‌روز شده IPها در هرلحظه می‌توانید از لینک زیر استفاده کنید:
https://api.derak.cloud/public/ipv4
همچنین می‌توانید لیست بازه‌های IP اَبر دِراک را از اینجا ببینید.

همچنین در این فایل پیکربندی زیر را با استفاده از واژه‌ی LogFormat بیابید:

LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

و مطابق زیر تغییر دهید:

LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

این تغییر باعث می‌شود تا در لاگ IP های mod_remoteip که IP اصلی کاربر است به جای IP هاست نوشته شود. برای اطلاعات بیشتر می‌توانید به مستندات Apache مراجعه کنید.

LiteSpeed

در پنل کاربری LiteSpeed از بخش Configuration، تب Server را بیابید. در قسمت General در جدول General Settings را بیابید گزینه‌ی Use Client IP in Header را به Trusted IP Only تغییر دهید.

سپس از بخش Configuration، تب Server را بیابید. قسمت Security را باز کنید. در جدول Access Control تمام بازه‌های IP اَبر دِراک را به Allowed List اضافه کنید. IP ها با ویرگول از یکدیگر جدا می‌گردند. این IPها باید به صورت Trusted IP اضافه شوند، پس در انتهای هر IP، حرف T را قرار دهید.

پس از اضافه‌کردن بازه‌های IP، لیست Allowed به صورت زیر در می‌آید:

ALL, 5.145.112.0/24T, 5.145.115.0/24T, ...

شما باید تمام بازه‌های IP اَبر دِراک را به صورت بالا اضافه کنید که در این کد فقط ۲ مورد ذکر شده‌است.

برای دسترسی به لیست به‌روز شده IPها در هرلحظه می‌توانید از لینک زیر استفاده کنید:
https://api.derak.cloud/public/ipv4
همچنین می‌توانید لیست بازه‌های IP اَبر دِراک را از اینجا ببینید.

توجه داشته باشید با استفاده از این تنظیمات تنها IPهای موجود در لاگ‌های دسترسی به IPهای حقیقی کاربران تبدیل شده و IPهای موجود در لاگ‌های خطا، همچنان به IPهای اَبر دِراک اشاره می‌کنند. این موضوع ممکن است در آینده از سمت LiteSpeed تغییر یابد.