Jump to content

Recommended Posts

Posted (edited)

Добрый день. 

Возникла задача управления трафиком в политиках, через WEB интерфейс и без использования DNS.
И так за пару дней с помощью ИИ и чей то матери родилось следующее решение.

В архиве сам вэб интерфейс и php скрипты для бэкэнда и cron.

Из доп пакетов потребуется, nginx, php в моем случае (php8-fpm + php8-cli), SQLite3 и cron.

Для функционирования потребуется:

  1. Настраиваем связку nginx + php.
  2. В config.php прописываем: пароль от учетки, путь к файлам, в моем случае ('/opt/share/www/'), если путь другой то в php скриптах в первой строчке кода, надо тоже поменять.
  3. Создаем базу через create_db.php
  4. Если есть желание запихиваем sync_policies.php и update_route.php в крон. Если политики часто не создаете то sync_policies.php можно не прописывать в cron, а синхронизировать через WEB интерфейс.

Пользуемся. Может чо забыл не учел, кто будет повторять пишите помогу.

Принцип работы:

  1. Скрипт дергает из кинетика список политик 'http://127.0.0.1:79/rci/show/ip/policy';
  2. Для каждой политики есть своя маркировка трафика к примеру 0xffffaaa;
  3. Создается БД с политиками и доменами+информация о маршрутах;
  4. Для каждой политики в БД можно добавить запись: Домен + интерфейс + маршрут;
  5. Скрипт получает список IP для каждого домена и собирает для каждой политики свою дополнительную таблицу маршрутизации (стартовый номер отсчета можно изменить в config.php, но выше 1000 создать не дает);
  6. После чего добавляет данные таблицы к нужному маркеру.
  7. Через WEB интерфейс или по крону можно обновлять IP для доменов и перестраивать таблицы маршрутизации.

Что это все дает:

  1. Возможность маршрутизировать трафик по доменам, при этом кинетику не обязательно быть DNS сервером, перехватывать запросы и все вот это;
  2. Интеграция с политиками доступа от кинетика. Можно гибко управлять кому куда в самом кинетике. К примеру в моем варианте (скриншот 2), мне требовалось жестко прописать домен детского мира мимо КВН. Но только для одной политики.
  3. Работает с использованием штатном функционале кинетика (за исключением описанных выше пакетов), скрипт только рулит маршрутами.

P.S.

Делал для себя, если что не так не сердчайте, глюки обеспечены))

Screenshot_16.png

Screenshot_15.png

Screenshot_14.png

KDR.zip

Edited by Vinni37
Изменил описание
  • Upvote 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

This site uses cookies. By clicking "I accept" or continuing to browse the site, you authorize their use in accordance with the Privacy Policy.