Звездочка залита входящим SIP-соединением от неизвестного партнера
Здравствуйте, я только что установил новую конфигурацию звездочки с freepbx и подписал для учетной записи SIP.
Я установил SIP-транк с данными своего провайдера, запустил консоль с помощью команды asterisk -vvvr для отладки, затем я заметил, что журналы переполнены такими записями:
== Using SIP RTP CoS mark 5
-- Executing [00088884600972595117946@from-sip-external:1] NoOp("SIP/XXX.XXX.58.107-00000355", "Received incoming SIP connection from unknown peer to 00088884600972595117946") in new stack
-- Executing [00088884600972595117946@from-sip-external:2] Set("SIP/XXX.XXX.58.107-00000355", "DID=00088884600972595117946") in new stack
-- Executing [00088884600972595117946@from-sip-external:3] Goto("SIP/XXX.XXX.58.107-00000355", "s,1") in new stack
-- Goto (from-sip-external,s,1)
-- Executing [s@from-sip-external:1] GotoIf("SIP/XXX.XXX.58.107-00000355", "1?checklang:noanonymous") in new stack
-- Goto (from-sip-external,s,2)
-- Executing [s@from-sip-external:2] GotoIf("SIP/XXX.XXX.58.107-00000355", "0?setlanguage:from-trunk,00088884600972595117946,1") in new stack
-- Goto (from-trunk,00088884600972595117946,1)
-- Executing [00088884600972595117946@from-trunk:1] Set("SIP/XXX.XXX.58.107-00000355", "__FROM_DID=00088884600972595117946") in new stack
-- Executing [00088884600972595117946@from-trunk:2] NoOp("SIP/XXX.XXX.58.107-00000355", "Received an unknown call with DID set to 00088884600972595117946") in new stack
-- Executing [00088884600972595117946@from-trunk:3] Goto("SIP/XXX.XXX.58.107-00000355", "s,a2") in new stack
-- Goto (from-trunk,s,2)
-- Executing [s@from-trunk:2] Answer("SIP/XXX.XXX.58.107-00000355", "") in new stack
-- <SIP/XXX.XXX.58.107-00000352> Playing 'digits/8.ulaw' (language 'en')
-- <SIP/XXX.XXX.58.107-00000351> Playing 'digits/9.ulaw' (language 'en')
-- <SIP/XXX.XXX.58.107-0000034f> Playing 'digits/6.ulaw' (language 'en')
-- Executing [s@from-trunk:5] SayAlpha("SIP/XXX.XXX.58.107-00000353", "00088884400972595117946") in new stack
-- <SIP/XXX.XXX.58.107-00000353> Playing 'digits/0.ulaw' (language 'en')
-- Executing [s@from-trunk:3] Wait("SIP/XXX.XXX.58.107-00000355", "2") in new stack
-- <SIP/XXX.XXX.58.107-00000350> Playing 'digits/1.ulaw' (language 'en')
-- <SIP/XXX.XXX.58.107-00000352> Playing 'digits/8.ulaw' (language 'en')
-- Executing [s@from-trunk:6] Hangup("SIP/XXX.XXX.58.107-0000034f", "") in new stack
== Spawn extension (from-trunk, s, 6) exited non-zero on 'SIP/XXX.XXX.58.107-0000034f'
-- Executing [h@from-trunk:1] Macro("SIP/XXX.XXX.58.107-0000034f", "hangupcall,") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/XXX.XXX.58.107-0000034f", "1?theend") in new stack
-- Goto (macro-hangupcall,s,3)
-- Executing [s@macro-hangupcall:3] ExecIf("SIP/XXX.XXX.58.107-0000034f", "0?Set(CDR(recordingfile)=)") in new stack
-- Executing [s@macro-hangupcall:4] Hangup("SIP/XXX.XXX.58.107-0000034f", "") in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/XXX.XXX.58.107-0000034f' in macro 'hangupcall'
== Spawn extension (from-trunk, h, 1) exited non-zero on 'SIP/XXX.XXX.58.107-0000034f'
-- <SIP/XXX.XXX.58.107-00000351> Playing 'digits/7.ulaw' (language 'en')
-- <SIP/XXX.XXX.58.107-00000350> Playing 'digits/1.ulaw' (language 'en')
-- <SIP/XXX.XXX.58.107-00000353> Playing 'digits/0.ulaw' (language 'en')
-- <SIP/XXX.XXX.58.107-00000352> Playing 'digits/4.ulaw' (language 'en')
Я просто не могу отладить свою магистраль из-за этих надоедливых соединений от неизвестных пиров, что это за звонки, как я могу отследить их происхождение, это может быть неисправный инструмент тестирования от моего провайдера?
4 ответа
Ну, я узнал, что позволяю SIP гостям. Похоже, что многие боты ищут незащищенные серверы для спама или ретрансляции.
Так что я просто отключил эту опцию, и мои журналы теперь вернулись в нормальное состояние.
Даже если GUEST выключен, ваш сервер Asterisk все еще будет подвергаться попыткам взлома SIP. Вы должны установить что-то еще для мониторинга и управления атаками. Посмотрите на Asterisk Security предложения и даже основы того, как защитить свой сервер Asterisk. (Гость не достаточно)
Я полагаю, все зависит - я предполагаю, что вы используете Asterisk на каком-то Linux? Я делал это несколько раз, и это может быть немного сложно тут и там. Но - когда дело доходит до отладки, есть ряд инструментов, которые могут помочь.
Неизвестные клиенты могут быть заблокированы, например, с помощью IPTables. Если вы знаете, откуда должны поступать ваши звонки, вы можете настроить правила брандмауэра, чтобы блокировать что-либо кроме этого. Это то, что я сделал - убедился, что говорить могут только мои собственные клиенты и любые вышестоящие АТС.
Чтобы выяснить, кто на самом деле является неизвестными клиентами, вы можете использовать такие инструменты, как Wireshark, для фильтрации соединений по типу и тому подобное. Обычно это позволяет получить четкое представление о происходящем.
Это просто указатели. Возможно, вы захотите немного рассказать о вашей настройке - тогда я мог бы быть более конкретным.
Из памяти это можно отключить на серверах Trixbox через УАТС> Редактор файлов конфигурации> sip_general_additional.conf
Добавьте к нижней строке:
allowguest = нет
нажмите обновить.
затем перейдите в раздел система> обслуживание системы> сбросить сейчас.
Все сделано.