Настройка шлюза CISCO

Данный тип шлюза используется для управления ACL-записями на CISCO маршрутизаторах посредством SSH-соединения. При этом сама ACL-запись должна быть создана администратором вручную и в неё должны быть добавлены правила, разрешающие доступ к DNS и Биллинг-сервера в начале списка и правило запрета всего в конце списка. Биллинг работает только с extended ACL-списками.

Между ними биллинг помещает правила, открывающие конкретные адреса клиентов.

На вкладке Типы правил добавьте тип правила "Пустое правило" и оставьте текст этого правила пустым.

На вкладке Типы шлюзов создайте тип шлюза CISCO и установите в нем следующую конфигурацию:

user_rule.editor.class=bitel.billing.module.services.ipn.editor.CiscoContractRuleEditor
gate_manager.class=bitel.billing.server.ipn.CiscoGateWorker

В командах этого типа шлюза установите, например:

[DEFAULT]
<LOOP>
permit ip host {A} any
</LOOP>
[/DEFAULT]

images/download/attachments/43386108/ipn_cisco_type_commands.png

Шаблон может быть многострочным, вместо {A} будет подставлен адрес клиента. К каждому адресу будут применены все строки шаблона. Обработка команд cisco происходит аналогичным образом, как и обработка команд Manad. Т.е макросы вида {A} заменяются на адрес из выбранных диапазонов для тегов <LOOP>, а макросы {NET} и {NET_MASK} заменяются на выбранные сети для тегов <LOOP_NET> и <LOOP_NET_MASK> соответственно.

На вкладке Правила данного типа шлюза добавьте "Пустое правило".

images/download/attachments/43386108/ipn_cisco_type_rules.png

На вкладке Шлюзы заведите шлюз типа CISCO.

images/download/attachments/43386108/ipn_cisco_gate.png

Необходимо указать хост и порт SSH-соединения, SSH-пароль указывается в поле Ключевое слово. В конфигурации шлюза указывается SSH-логин (userbill на снимке) и список ACL-записей.

acl.<id>.name=<имя ACL-записи>
acl.<id>.from.pos=<с какой позиции биллинг будет вставлять правила>
acl.<id>.to.pos=<до какой позиции биллинг будет вставлять правила>
acl.<id>.on.contract=<количество правил на договор>

Так же можно указать время ожидания ответа, по истечению которого, шлюз сбрасывает соединение и выдаёт ошибку :

timeout=2000

Параметр id - уникальный номер ACL-записи в биллинге должен быть уникальным и не меняться после создание ACL в конфигурации, если необходимо добавить ещё ACL, увеличьте его.

Пользователь на CISCO должен быть создан с привилегией 15 следующим образом:

aaa new-model
!
!
aaa authentication login default local enable
aaa authorization exec default local
!
username xxx password yyy
username xxx privilege 15

Для корректной работы шлюза на cisco символ приглашения должен быть - #.

Биллинг разделяет область правил от from.pos до to.pos на зоны, принадлежащие договорам размером on.contract (этот параметр желательно ставить с запасом, например 1000 так, чтобы договору точно хватило размера зоны). Далее при процедуре управления шлюзами правила либо добавляются в соответствующую договору зону, либо удаляются из неё.

При добавлении клиенту шлюза CISCO открывается редактор следующего вида. В верхнем поле необходимо выбрать правило, в списке снизу ACL, в котором открывается клиент, в дереве справа - адреса клиента на данном шлюзе.

images/download/attachments/43386108/ipn_cisco_contract_acl.png

Поле С позиции пусто при добавлении шлюза клиенту, при редактировании в нем отразится с какой позиции выделена клиенту свободная зона правил ACL. На вкладке Команды можно видеть какие команды будут добавлены для открытия клиента.

images/download/attachments/43386108/ipn_cisco_contract_commands.png

После добавления шлюза клиенту переключение выпадающего списка управления в Открыть должно добавить правила на выбранный ACL.