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

Asterisk 13 + fail2ban (Debian)

0

Добрый день!

Не получается настроить fail2ban. Подскажите, пожалуйста, в чем может быть проблема. Делал по различным статьям. Возможно намешал всего подрят... Буду благодарен за любую подсказку!

Лог астера:

[2017-02-08 10:38:51] WARNING[26902]: chan_sip.c:4120 retrans_pkt: Timeout on 41df6fd224fa186e31ce9c8c573f8d0d on non-critical invite transaction.
[2017-02-08 10:40:57] SECURITY[26919]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent="ChallengeSent",EventTV="2017-02-08T10:40:57.003+0600",Severity="Informational",Service="SIP",EventVersion="1",AccountID="sip:99901@185.22.**.**",SessionID="0x7f7b40014c00",LocalAddress="IPV4/UDP/185.22.**.**/5060",RemoteAddress="IPV4/UDP/193.111.140.133/5074",Challenge="044e4d23"
[2017-02-08 10:41:29] WARNING[26902]: chan_sip.c:4120 retrans_pkt: Timeout on 2ad47a7da4865a42d2fe6c7b7a2669f0 on non-critical invite transaction.
[2017-02-08 10:43:29] SECURITY[26919]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent="ChallengeSent",EventTV="2017-02-08T10:43:29.417+0600",Severity="Informational",Service="SIP",EventVersion="1",AccountID="sip:99901@185.22.**.**",SessionID="0x7f7b40014c00",LocalAddress="IPV4/UDP/185.22.**.**/5060",RemoteAddress="IPV4/UDP/193.111.140.133/5070",Challenge="34ff0e95"
[2017-02-08 10:44:01] WARNING[26902]: chan_sip.c:4120 retrans_pkt: Timeout on 3b6af71165c6d4a9d7c66a983702f19b on non-critical invite transaction.
[2017-02-08 10:46:08] SECURITY[26919]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent="ChallengeSent",EventTV="2017-02-08T10:46:08.131+0600",Severity="Informational",Service="SIP",EventVersion="1",AccountID="sip:99901@185.22.**.**",SessionID="0x7f7b40014c00",LocalAddress="IPV4/UDP/185.22.**.**/5060",RemoteAddress="IPV4/UDP/193.111.140.133/5074",Challenge="07684d8e"
[2017-02-08 10:46:40] WARNING[26902]: chan_sip.c:4120 retrans_pkt: Timeout on eafc5d3550b13213503c1c77ba307fca on non-critical invite transaction.

jail.conf:

[asterisk-iptables]
enabled  = true
filter   = asterisk
action   = iptables-allports[name=ASTERISK, protocol=all]
logpath  = /var/log/asterisk/messages
maxretry = 1
findtime = 21600
bantime = 864000

[asterisk-tcp]

enabled  = true
filter   = asterisk
port     = 5060,5061
protocol = tcp
logpath  = /var/log/asterisk/messages

[asterisk-udp]

enabled  = true
filter   = asterisk
port     = 5060,5061
protocol = udp
logpath  = /var/log/asterisk/messages

fw

iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
fail2ban-asterisk-udp  udp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 5060,5061
fail2ban-asterisk-tcp  tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 5060,5061
fail2ban-ASTERISK  all  --  0.0.0.0/0            0.0.0.0/0           
fail2ban-ssh  tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 22

logger.conf

[general]
dateformat=%F %T
console => notice,warning,error,security
messages => security,notice,warning,error

filter.d/asterisk.conf

[INCLUDES]

before = common.conf

[Definition]

log_prefix= \[\]\s*(?:NOTICE|SECURITY)%(__pid_re)s:?(?:\[\S+\d*\])? \S+:\d*

failregex = ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - Wrong password$
            ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - No matching peer found$
            ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - Username/auth name mismatch$
            ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - Device does not match ACL$
            ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - Peer is not supposed to register$
            ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - ACL error \(permit/deny\)$
            ^%(log_prefix)s Registration from '[^']*' failed for '<HOST>(:\d+)?' - Not a local domain$
            ^%(log_prefix)s Call from '[^']*' \(<HOST>:\d+\) to extension '\d+' rejected because extension not found in context 'default'\.$
            ^%(log_prefix)s Host <HOST> failed to authenticate as '[^']*'$
            ^%(log_prefix)s No registration for peer '[^']*' \(from <HOST>\)$
            ^%(log_prefix)s Host <HOST> failed MD5 authentication for '[^']*' \([^)]+\)$
            ^%(log_prefix)s Failed to authenticate (user|device) [^@]+@<HOST>\S*$
            ^%(log_prefix)s (?:handle_request_subscribe: )?Sending fake auth rejection for (device|user) \d*<sip:[^@]+@<HOST>>;tag=\w+\S*$
            ^%(log_prefix)s SecurityEvent="(FailedACL|InvalidAccountID|ChallengeResponseFailed|InvalidPassword)",EventTV="[\d-]+",Severity="[\w]+",Service="[\w]+",EventVersion="\d+",AccountID="\d+",SessionID="0x[\da-f]+",LocalAddress="IPV[46]/(UD|TC)P/[\da-fA-F:.]+/\d+",RemoteAddress="IPV[46]/(UD|TC)P/<HOST>/\d+"(,Challenge="\w+",ReceivedChallenge="\w+")?(,ReceivedHash="[\da-f]+")?$

ignoreregex =

filter.d/asterisk-security.conf

[INCLUDES]

[Definition]

failregex = NOTICE.* .*: No registration for peer '.*' \(from <HOST>\)
    NOTICE.* .*: Host <HOST> failed MD5 authentication for '.*' \(.*\)
    NOTICE.* .*: Host <HOST> denied access to register peer '.*'
    NOTICE.* .*: Host <HOST> did not provide proper plaintext password for '.*'
    NOTICE.* .*: Registration of '.*' rejected: '.*' from: '<HOST>'
    NOTICE.* .*: Peer '.*' is not dynamic (from <HOST>)
    NOTICE.* .*: Host <HOST> denied access to register peer '.*'
#
    WARNING.* .*: .*Rejecting unknown SIP connection from <HOST>.*
    WARNING.* Ext. s: Friendly Scanner from <HOST>
#
    SECURITY.* .*: SecurityEvent="InvalidAccountID".*,Severity="Error",Service="(SIP|AMI)".*,RemoteAddress="IPV[46]\/(UDP|TCP|TLS)\/<HOST>\/[0-9]+"
    SECURITY.* .*: SecurityEvent="FailedACL".*,Severity="Error",Service="(SIP|AMI)".*,RemoteAddress="IPV[46]\/(UDP|TCP|TLS)\/<HOST>\/[0-9]+"
    SECURITY.* .*: SecurityEvent="InvalidPassword",.*,Severity="Error",Service="[a-zA-Z]+",.*,RemoteAddress="IPV[46]/(UDP|TCP|TLS)/<HOST>/[0-9]+"
    SECURITY.* .*: SecurityEvent="ChallengeResponseFailed".*,Severity="Error",Service="(SIP|AMI)".*,RemoteAddress="IPV[46]\/(UDP|TCP|TLS)\/<HOST>\/[0-9]+"

#VERBOSE.* logger.c: -- .*IP/<HOST>-.* Playing 'ss-noservice' \(language '.*'\)

ignoreregex =

fail2ban.log

tail -f /var/log/fail2ban.log 
2017-02-08 09:46:02,745 fail2ban.filter [27171]: INFO    Added logfile = /var/log/asterisk/messages
2017-02-08 09:46:02,745 fail2ban.filter [27171]: INFO    Set maxRetry = 2
2017-02-08 09:46:02,747 fail2ban.filter [27171]: INFO    Set findtime = 600
2017-02-08 09:46:02,747 fail2ban.actions[27171]: INFO    Set banTime = 360000
2017-02-08 09:46:02,760 fail2ban.jail   [27171]: INFO    Jail 'ssh' started
2017-02-08 09:46:02,763 fail2ban.jail   [27171]: INFO    Jail 'asterisk-iptables' started
2017-02-08 09:46:02,765 fail2ban.jail   [27171]: INFO    Jail 'asterisk-tcp' started
2017-02-08 09:46:02,766 fail2ban.jail   [27171]: INFO    Jail 'asterisk-udp' started
2017-02-08 09:46:57,029 fail2ban.filter [27171]: ERROR   Error in FilterPyinotify callback: 'module' object has no attribute '_strptime_time'
2017-02-08 09:46:57,030 fail2ban.filter [27171]: ERROR   Error in FilterPyinotify callback: 'module' object has no attribute '_strptime_time'
удалить закрыть спам изменить тег редактировать

спросил 2017-02-08 09:19:07 +0400

rukit Gravatar rukit
1 2

Comments

Поставьте отсюда http://downloads.freepbxdistro.org/ISO/ нужный астериск, останется только параметры fail2ban подстроить под ваши, хотя он по умолчанию уже настроен.

Он на OS centos.

Out ( 2017-02-08 11:47:02 +0400 )редактировать

а у меня вот есть два на разных машинах freepbx distro x64, которые подвисают на announce навсегда. потому в данный момент плохой совет. ну или ставить 32бита.

meral ( 2017-02-08 13:42:00 +0400 )редактировать

4 машины, все работают без проблем, может вы что то свое накрутили? :D Или прикрутили? Или сам файл announce немного кривоватый. Хотя.. у человека с вашим опытом наврядли, или правило: и на старуху бывает проруха. Перепишите файл ;)

Out ( 2017-02-08 15:15:41 +0400 )редактировать

может и файл кривоватый. но на 32бит и на астериске 11.* все работает прекрасно. Особенно интересно, что ядро работает и даже этот звонок можно сбросить. он просто повисает после hangup. у меня тоже было много машин с freepbx distro которые "работали без проблем". такое только с последней версией(с текущей).

meral ( 2017-02-08 16:27:09 +0400 )редактировать

однако, если файл кривоватый, софтсвитч же не должен зависать, правда?

meral ( 2017-02-08 16:27:47 +0400 )редактировать

meral, спасибо за инфу :) по версии. Обычно если файл кривой, он его "не видит" и не проигрывает, но может видит хотя и кривой, поэтому глюк, попробуй записать еще раз и подменить :)

Out ( 2017-02-08 21:29:15 +0400 )редактировать

извини, но я давно ушел от подтасовки файлов. вот я щас заменю(врядли поможет, ну допустим), а потом клиент заменит - о опять все повиснит. а там обзвон с 500к звонков в день. НЕТ. мне проще переинсталить астериск.

meral ( 2017-02-08 23:00:59 +0400 )редактировать

очередь там тоже подвисала, кстати.в той же ситуации.

meral ( 2017-02-08 23:01:50 +0400 )редактировать

Значит все таки проблемная версия. :)

Out ( 2017-02-09 11:35:16 +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)!
[скрыть предварительный просмотр]

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

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

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

Статистика

Задан: 2017-02-08 09:19:07 +0400

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

Обновлен: Feb 08

Похожие вопросы:

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