Пользовательская схема

Skip to end of metadata
Go to start of metadata
Помощь по внедрению пользовательских схем и тюнингу стандартных схем оказывается только на уровнях подписки "Сопровождение" и "Аутсорсинг".
На подписках "Стандарт" и "Бизнес" предлагается использовать стандартные схемы внедрения.

Интеграция пользовательской схемы состоит из трёх этапов:

Добавьте NAS в список

  1. В меню "Оборудование" -> "NAS" нажмите кнопку "Добавить"



  2. В открывшейся форме заполните поля Название, IP адрес, выберите OSS схему "Пользовательская", укажите версию "1" и нажмите "Сохранить"



  3. Обратите внимание, что после сохраненя автоматический должно запониться поле "OSS Каталог управления"



  4. Перейдите на вкладку "Управление" и нажмите кнопку "rtsh cfg init default v1"



  5. Должно появиться всплывающее окно, через несколько секунд появится надмись "/usr/local/bin/rtsh cfg init default_v1 [8032] is finished"



  6. Подключитесь к серверу по SSH и проверьте что файлы схемы создались: посмотрите какой указан путь до OSS каталога в настройках NAS и подставьте в команду:

    Пример команды, путь до Вашего NAS уточните в его настройках
    chroot /app/asr_billing/ ls -l /var/oss/core/MyNAS/

    Вывод должен быть приблизительно следующий:

Кастомизируйте скрипт

  1. Зайдите в контейрнер биллинга
    chroot /app/asr_billing

    Перейдите в каталог со файлами схемы, каталог можно посмотреть в интерфейсе биллинга в настройках NAS. В нашем примере это "/var/oss/core/MyNAS/"

    cd /var/oss/core/MyNAS/
  2. Скопируйте шаблон скрипта управления session
    cp bin/session ubin/
  3. Откройте файл для редактирования. Например, это можно сделать редактором VIM
    vim ubin/session

    или MC

    mcedit ubin/session
  4. Добавьте в скрипт ссылку на основной скрипт session. Это нужно чтобы правильно работала синхронизация. Первые две строки в скрипте должны выглядеть так:
    #!/bin/bash
    . $(dirname $BASH_SOURCE)/../bin/session
    
  5. Добавьте команды необходимые для управления Вашим оборудованием. Например событие user_accept, которое проходит при любой разблокировке пользователя.
    user_accept(){
            __coa_send ip forward_allow add $ip
            __coa_send ip snat add $ip $snatip
    }
    

    Обязательными обычно являются следующие состояния (их описания есть в статье):

    • user_add
    • user_del
    • user_accept
    • user_drop
  6. Выставьте права на выполнение скрипта
    chmod +x ubin/session
    

Проверьте что получилось

Выполните несколько команд, которые добавили в скрипте, например:

rtsh session 10.100.1.2 accept
rtsh session 10.100.1.2 drop
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.