Интеграция с XGE, Billing.SoftRouter. Хук event.sh для XGE, Billing.SoftRouter

Skip to end of metadata
Go to start of metadata
Вы просматриваете старую версию данной страницы. Смотрите текущую версию. Сравнить с текущим  |   просмотр истории страницы
Необходимо создать сам хук:


[root@rReductor]# touch /usr/local/Reductor/userinfo/hooks/events.sh
[root@rReductor]# chmod a+x /usr/local/Reductor/userinfo/hooks/events.sh


Наполнить его следующим содержимым:


#!/bin/bash


IPSET=xge_reductor_ip_block
SSH="ssh -T root@10.0.0.1"

# отправить на оборудование команду на блокирование ip адреса
ip_block_full_add() {
    local ip="$1"
    echo ipset add $IPSET $ip | $SSH
}

# отправить на оборудование команду на снятие блокировки ip адреса
ip_block_full_del() {
    local ip="$1"
    echo ipset del $IPSET $ip | $SSH
}

# получить список уже заблокированных IP адресов, нужно для вычисления дельты
ip_block_full_get() {
    echo ipset save $IPSET | $SSH | egrep -o "$ip_regex"
}


Чтобы всё заработало нужно:


1. Указать правильный IP адрес XGE в переменной $SSH
2. Выполнить один раз руками ssh-copy-id root@$IP-адрес-xge
3. Проверить вручную команду TIMEOUT=0 /usr/local/Reductor/bin/events.sh


На самом XGE необходимо создать/дополнить хук таким содержимым:



#!/bin/bash


if [ "$1" = '/etc/init.d/firewall' -a "$2" = 'start' ]; then
    MAC="<mac-адрес>" # MAC-адрес с которого прилетают редиректы от Редуктора, обычно совпадает с сетёвкой редуктора
    NIC="eth1" # сетевая карта роутера, на которую прилетают редиректы с редуктора
    iptables -t raw -F
    iptables -t raw -N reductor_replies &>/dev/null || true
    # Не создаём контраки с сорс-портами  53, 80, 443.
    iptables -t raw -A reductor_replies -p tcp --sport 80 -j NOTRACK
    iptables -t raw -A reductor_replies -p tcp --sport 443 -j NOTRACK
    iptables -t raw -A reductor_replies -p udp --sport 53 -j NOTRACK
    iptables -t raw -A PREROUTING -i "$NIC" -m mac --mac-source "$MAC" -j reductor_replies
    # не натим обращение на заглушку (при условии, что заглушка прямо на Редукторе с серой сеткой и клиенты идёт на неё с серой сети) 
    iptables -I xge_post -t nat -d <ip адрес заглушки> -j ACCEPT
fi

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