Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Регистрация с группы разрешенных сетей

0

У каждого пира есть настройка

permit=<ipaddress>/<network mask> 
deny=<ipaddress>/<network mask>

Однако есть список разрешенных сетей, достаточно большой и пополняемый несколько раз в неделю. Этот список пополняется через web и пишется в базу.

Т.е. как реализовать проверку валидности ip/mask при регистрации пира, а если эта регистрация прошла неудачно заносить в лог/базу/ipfw

удалить закрыть спам изменить тег редактировать

спросил 2011-08-08 18:35:00 +0400

um2010 Gravatar um2010
2056 70 13 55

1 Ответ

2

через iptables. астериск вам не фаервол.

    IRATE=20/minute

    # REGISTER rate, per host.
    RRATE=10/minute

    # All other SIP methods rate, per host.  Be careful with SUBSCRIBEs, OPTIONS, CANCELs, etc.
    ORATE=60/minute

    # Methods for this script to ignore.  These SIP methods are always allowed.
    IGMETH="OPTIONS"

    # Burst
    BURST=30

    # Interface(s) to protect on INPUT. Seperate multiple interfaces with spaces.
    # This will protect SIP services on THIS HOST.
    IFACE="eth0"

# Search packet to this location. A larger offset looks further into the packet
# and takes more time but could catch more attacks (and false alarms).
# Remember, the method to match on is always in the beginning of the packet.
OFFSET=65

# тут чтото еще есть, много ;)

        $IPTABLES -A sipdos -m string --string "INVITE sip:" --algo bm --to $OFFSET -j sipdosinvite

        $IPTABLES -A sipdosinvite \
        -m hashlimit --hashlimit $IRATE --hashlimit-burst $BURST \
        --hashlimit-mode srcip,dstport --hashlimit-name sip_i_limit -j ACCEPT

        # REGISTER limit
        $IPTABLES -A sipdos -m string --string "REGISTER sip:" --algo bm --to $OFFSET -j sipdosregister

        $IPTABLES -A sipdosregister \
        -m hashlimit --hashlimit $RRATE --hashlimit-burst $BURST \
        --hashlimit-mode srcip,dstport --hashlimit-name sip_r_limit -j ACCEPT
ссылка удалить спам редактировать

ответил 2011-08-09 05:13:45 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

обновил 2011-08-10 00:26:00 +0400

Comments

да это понятно, идея в том, что при каждой регистрации (успешной или нет) астериск бы заносил это куда-нибудь um2010 ( 2011-08-09 08:24:32 +0400 )редактировать
дак это делаеться через iptables -j LOG. можно даже сделать чтоб только не успешные заносило.но это высший пилотаж. ну или включить лог в астериске и анализировать. meral ( 2011-08-09 11:36:22 +0400 )редактировать
о.. с опцией log то я сразу не допер :) это да, так и сделаю um2010 ( 2011-08-09 17:01:50 +0400 )редактировать
смотри в ответе я привел как отличить регистрации от инвайтов. meral ( 2011-08-10 00:22:55 +0400 )редактировать
йоперный теятер.. а ipfw так умеет? um2010 ( 2011-08-10 11:24:36 +0400 )редактировать
это не ко мне. у меня и после усвоения iptables головняк был. нет времени с фррей разбираться. но наверно да. meral ( 2011-08-10 17:24:56 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку
1 закладка

подписаться на rss ленту новостей

Статистика

Задан: 2011-08-08 18:35:00 +0400

Просмотрен: 396 раз

Обновлен: Aug 10 '11

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.