>Астер держал 168 соединений в реальном времени и дальше либо вообще падал либо намертво подвешивал систему.
Это кстати странно, т.к. asterisk 1.4.22 на freebsd и 2 xeon (времен p4) успешно протягивает в продакшене по 200-250 параллельных звонков. Может это ветка 1.8 так себя ведёт? Хочется ещё увидеть 1.4 в тесте
тут скорее лучше solr подойдёт, т.к.:
> Rich Document Parsing and Indexing (PDF, Word, HTML, etc) using Apache Tika lucene.apache.org/solr/features.html
У него есть несколько проблем, в частности с Hub'ами — не отслеживается отвал клиента по таймауту, плюс месяц назад были проблемы с реконнектом отвалившегося клиента. Разработчики на эти проблемы сказали — да мы знаем, но пока что фиксить не будем.
После всего перечисленного я у себя откатился на .net реализацию socket.io протокола (пишется за час-два т.к. основые спеки есть) и кастомную логику на стороне сервера.
saddr (
$L_NET
$PROVS_IPS
$ADM_IPS
$SIP_USERS
) proto udp dport 5060 ACCEPT;
proto udp dport 5060 DROP;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# respond ping
proto icmp ACCEPT;
# allow SSH connections
proto tcp dport ssh mod state state NEW mod recent {
update seconds 180 hitcount 5 rsource name NOSSHBRUTE DROP;
set rsource name NOSSHBRUTE ACCEPT;
}
saddr ( $ADM_IPS ) proto tcp dport 5038 ACCEPT;
proto tcp dport 5038 DROP;
}
Это не LDAP auth, это хранение данных о пользователях и т.п. в odbc-enabled базе, из плюсов вы получите отсутствие перегрузки всего конфига при изменении пользователей + меньше шансов на нештатную ситуацию при ошибочных/ неправильной обработке входящих данных из AD т.к. они будут контролироваться на уровне схемы БД.
А почему не использовали realtime для хранения пользователей? Он не требует передёргивания всего конфига, плюс свежедобавленные подтягиваются автоматом.
Это кстати странно, т.к. asterisk 1.4.22 на freebsd и 2 xeon (времен p4) успешно протягивает в продакшене по 200-250 параллельных звонков. Может это ветка 1.8 так себя ведёт? Хочется ещё увидеть 1.4 в тесте
/opt/freeswitch/conf/autoload_configs/switch.conf.xml
параметр max-sessions
> Rich Document Parsing and Indexing (PDF, Word, HTML, etc) using Apache Tika
lucene.apache.org/solr/features.html
Потом вышла более продуманная и расписанная тут: www.gotdotnet.ru/blogs/RaveNoX/7202/
После всего перечисленного я у себя откатился на .net реализацию socket.io протокола (пишется за час-два т.к. основые спеки есть) и кастомную логику на стороне сервера.
#
# Configuration file for ferm(1).
#
# Interfaces
@def $WAN_IF = eth0;
@def $LO_IF = lo;
# My IPs
@def $L_NET = 0.0.0.0/20;
@def $M_IP = 0.0.0.0;
@def $LO_IP = 127.0.0.1;
# SIP proviers
@def $S_IP = 0.0.0.0;
@def $M_IP = sip.sip.sip;
@def $A_IP = 0.0.0.0;
@def $PROVS_IPS = ($S_IP $M_IP $A_IP);
# Users
@def $SIP_USERS = ( 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 );
@def $ADM_IPS = ($A_IP $M_IP);
table filter {
chain INPUT {
policy ACCEPT;
# allow local packages
interface $LO_IP ACCEPT;
saddr (
$L_NET
$PROVS_IPS
$ADM_IPS
$SIP_USERS
) proto udp dport 5060 ACCEPT;
proto udp dport 5060 DROP;
# connection tracking
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
# respond ping
proto icmp ACCEPT;
# allow SSH connections
proto tcp dport ssh mod state state NEW mod recent {
update seconds 180 hitcount 5 rsource name NOSSHBRUTE DROP;
set rsource name NOSSHBRUTE ACCEPT;
}
saddr ( $ADM_IPS ) proto tcp dport 5038 ACCEPT;
proto tcp dport 5038 DROP;
}
chain OUTPUT {
policy ACCEPT;
}
chain FORWARD {
policy DROP;
}
}
Для примера сойдёт?
посмотрите, там есть примеры на perl
на .Net fast agi пишется минут за 30 под вашу задачу
ну или agi/fastagi скрипт позволит сделать то же с диалпланом
www.voip-info.org/wiki/view/Asterisk+RealTime+Sip
Это не LDAP auth, это хранение данных о пользователях и т.п. в odbc-enabled базе, из плюсов вы получите отсутствие перегрузки всего конфига при изменении пользователей + меньше шансов на нештатную ситуацию при ошибочных/ неправильной обработке входящих данных из AD т.к. они будут контролироваться на уровне схемы БД.