Urlredirector

از ویکی پارس پویش
پرش به: ناوبری, جستجو

محتویات

معرفی

کنترل دسترسی کاربران به منابع تحت وب همواره از دغدغه‌های اصلی مدیران بوده است. به همین جهت ویژگی جدیدی در نرم‌افزار IBSng طراحی و پیاده‌سازی شد تا کنترل کاربران
با قابلیت انعطاف‌پذیری بالا امکان‌پذیر باشد.
این امکان از نسخه B1.34(T110) در دسترس است.

عملکرد سیستم

عملکرد کلی سیستم به این شکل است که

  1. مدیر سیستم ابتدا تعدادی پروفایل ایجاد میکند و در هر یک قوانینی وضع می‌کند.
    • قوانین بر اساس دامین مشخص می‌کنند که درخواست‌ها اجازه عبور داشته باشند یا اینکه به آدرس دیگری ارجاع داده شوند.
    • البته هر پروفایل یک قانون کلی دارد و در صورتی که هیچ‌یک از قوانین با شرایط کاربر منطبق نباشد قانون کلی پروفایل اجرا خواهد شد.
  2. پروفایل‌های ایجاد شده سپس به کاربران اختصاص داده می‌شوند.
    • از طریق شارژ هم امکان مشخص کردن پروفایل برای کاربر در شرایط مختلف امکان‌پذیر است.
  3. همزمان با اتصال کاربر به شبکه قوانین مشخص شده با استفاده از برنامه جداگانه‌ای به نام Redirector روی درخواست‌های کاربر اعمال می‌شوند.

نیازمندی‌ها

همانطور که قبلا اشاره شد این سیستم به یک برنامه جدا از IBSng احتیاج دارد به نام Redirector تا بتواند عملیات کنترل را اجرا کند

توپولوژی شبکه

پیکربندی شبکه و مسیر عبور ترافیک کاربران باید به گونه‌ای باشد که در یک نقطه خاص عبور کند. توجه داشته باشید که ترافیک باید قبل از NAT شدن از این نقطه عبور کند.
این نقطه محل نصب کردن برنامه Redirector است.

نیازمندی‌های سیستمی

Redirector براساس سیستم ‌عامل Linux طراحی و پیاده‌سازی شده و در عمل می‌توان آن را برروی هر توزیع Linux نصب کرد اما برای راحتی کار توزیع Plux یا دیگر توزیع‌های Debian-Based
پیشنهاد می‌شود.
توجه داشته باشید که قبل از نصب Redirector این پکیج‌ها باید نصب شده باشند.

redis-server
python-redis
libnetfilter-queue1
libdumbnet1

نصب و راه‌اندازی

نصب Redirector

  1. فایل باینری Redirector را در مسیر زیر کپی کنید:
/usr/sbin/redirector
  1. همچنین فایل تنظیمات $PACKAGE_PATH/etc/redirector/redirector.conf را در مسیر زیر قرار دهید:
/etc/redirector/redirector.conf
  1. فایل $PACKAGE_PATH/etc/init.d/redirector را نیز در این مسیر کپی کنید:
/etc/init.d/redirector

تنظیمات

redis.conf

فایل /etc/redis/redis.conf را با ادیتور دلخواه باز کنید و پارامتر timeout را مطابق زیر ست کنید:

timeout 0

redirector.conf

redis_server_address: 127.0.0.1

آدرس database را مشخص میکند. به طور کلی احتیاجی به تغییر آن نیست.

redis_server_port: 0

شماره پورت سرویس‌دهنده database را مشخص می‌کند. 0 یعنی پورت پیش‌فرض.نیازی به تغییر آن نیست.

redis_server_password: foobared

رمز عبور برای دسترسی به دیتابیس.

logfile: /var/log/redirector.log

مسیر نوشتن لاگ‌های redirector

rule_set_1: INPUT -i eth0 -p TCP --sport 80 -j QUEUE

قانون iptables که درخواست‌های کاربران را برای کنترل توسط redirector وارد صف می‌کند.

IBSng.conf

تنظیمات مورد نیاز در قسمت URLREDIRECT قرار گرفته‌اند:

urlredirect_database_host=127.0.0.1

محل database برنامه redirector را مشخص می‌کند.

urlredirect_database_port=6379

پورت database را مشخص می‌کند.

urlredirect_database_password=foobared

رمز عبور برای اتصال به database برنامه redirector توسط IBSng.

استفاده از سیستم

همانطور که قبلا اشاره شد برای استفاده از سیستم ابتدا مدیر باید پروفایل و قوانین مربوطه را تعریف نمایند.برای این کار تنظیمات زیر را انجام دهید:

URL Redirect Profile

از منو Setting قسمت URL Redirect وارد قسمت URL Redirect Profiles شوید.

Setting-url redirect.png


صفحه اصلی منوی URL Redirect Profiles باز می شود.

Main page2.png


برای ساخت پروفایل در قسمت Add New URL Redirect Profile اطلاعات زیر را وارد می نمایید و کلید Add را بزنید.

  • Profile Name: در این قسمت نام پروفایل مورد نظر را وارد نمایید.
  • Default Action: عملی است که بر روی این Profile انجام می شود.

pass :این گزینه به این معنی است که کاربر با وارد کردن URL می تواند وارد آن صفحه شود.

redirect :این گزینه به این معنی است که کاربر با وارد کردن URL اجازه ورود به آن صفحه را ندارد.

  • Default Redirect Url: در این قسمت URL پیش فرض را برای زمانی که عمل Redirect انجام می شود وارد می نمایید.
هر زمان کاربر آدرسی غیر از آدرسهای وارد شده در قوانین وارد کندنیز به سمت این URL هدایت می شود.
  • Profile Comment: اگر توضیحاتی لازم بود می توانید در Comment بنویسید.

URL Redirect Rule

حال نوبت ایجاد قانون برای URL Redirect است. با تعریف قانون یا قوانین می توان مشخص کرد که کاربر به چه URL های دسترسی دارد و اجازه مشاهده کدام URL ها را ندارد.

ابتدا از لینکهای مربوطه، گزینهُ Add URL Redirect Rule را انتخاب کنید و یا در Box سمت راست صفحه در قسمت Add URL Redirect Rule گزینه های مورد نظر را به صورت زیر وارد می نمایید و کلید Add را بزنید.

Add rule2.png

  • Target Domain: آدرس URL مورد نظر را به صورت دامین وارد نمایید.
  • Action: عملی است که بر روی این Profile انجام می شود.

pass :این گزینه به این معنی است که کاربر با وارد کردن URL می تواند وارد آن صفحه شود.

redirect :این گزینه به این معنی است که کاربر با وارد کردن URL اجازه ورود به آن صفحه را ندارد.

  • Redirect Url: در این قسمت URL مورد نظر را برای زمانی که عمل Redirect انجام می شود وارد می نمایید.

در قسمت Upload rules from CSV file می توانید فایلی با فرمت CSV(comma) را برای ruleها آپلود نمایید.فرمت فابل آپلود شده باید به صورت زیر باشد:

 target_domain,action,redirect_url

انتخاب URL Redirect Profiles مورد نظر در شارژ

بعد از تنظیمات فوق، می توانید در شارژ، پروفایل مورد نظر را Add کنید.این کار به شما کمک می کند در بازه های زمانی متفاوت، دسترسی به URLهای مختلفی را به کاربرها بدهید.

برای انجام این کار در قسمت شارژ گزینه URL Redirect Profile را ویرایش کرده و پروفایل مورد نظر را برای شارژ انتخاب نمایید.

Charge.png

انتخاب URL Redirect Profiles مورد نظر در گروه یا کاربر مورد نظر

بعد از تنظیمات فوق، در قسمت Group، از برگه Profiles گزینه URL Redirect Profile را انتخاب کنید و بروفایل مورد نظر را Add کنید.این تنظیمات را می توانید برای خود user نیز اضافه کنید.

Group information.png

ابزارهای شخصی

گویش‌ها
فضاهای نام
عملکردها
گشتن
جعبه‌ابزار