Это старая версия документа.


Msgs. msgs_redirect

Механизм принудительного перенаправления пользователя в клиентский кабинет для ознакомления с сообщением через firewall.

Поддерживается:

  • Локальный ipfw
  • Mikrotik


При выполнении, для пользователя устанавливается фильтр для услуги ( на случай, если он сейчас не онлайн ). Потом запускается команда, которая находит IP всех текущих сессий на поддерживаемых серверах и добавляет их в указанные таблицы.
При использовании модуля Internet, необходимо дополнительно указать $conf{MSGS_REDIRECT_INTERNET} = 1; в libexec/config.pl**

Настройка

$conf{MSGS_REDIRECT_FILTER_ADD}='КОМАНДЫ СМОТРЕТЬ НИЖЕ'; Команда, которую нужно выполнить для установки редиректа
$conf{MSGS_REDIRECT_FILTER_DEL}='КОМАНДЫ СМОТРЕТЬ НИЖЕ'; Команда на удаление фильтра после прочтения сообщения
$conf{MSGS_REDIRECT_INTERNET} = 1; Искать сессии в таблице internet_online

Пример команд для mpd

IP для перенаправления вносятся в таблицу IPFW номер 100

$conf{MSGS_REDIRECT_FILTER_ADD}='EXEC:/usr/local/bin/sudo /usr/abills/misc/msgs_filter.sh add %UIDS%;RAD:mpd-table-static+="100=%IP%"';
$conf{MSGS_REDIRECT_FILTER_DEL}='EXEC:/usr/local/bin/sudo /usr/abills/misc/msgs_filter.sh del %UIDS% %IP%';

Пример команд для mikrotik
IP вносятся в address-list message-redirect

$conf{MSGS_REDIRECT_FILTER_ADD}='EXEC:/usr/local/bin/sudo /usr/abills/misc/msgs_filter.sh add %UIDS%;RAD:Mikrotik-Address-List=message-redirect';
$conf{MSGS_REDIRECT_FILTER_DEL}='EXEC:/usr/local/bin/sudo /usr/abills/misc/msgs_filter.sh del %UIDS%';


Дальше необходимо самостоятельно настроить правила редиректа для трафика IP в указанных таблицах.