420

Заставляем расклейщиков спама оторвать свою шляпу.

Пост по просьбе тех кого задолбали расклейщики всяких шляпных объявлений, там где не надо.

Суть проста- названивать по указанному в объявлении номеру пока не уберут. Поскольку объявления вешаются с единственной целью привлечь лохов  клиентов, а вы своими звонками наглухо срываете всю коммерцию- то проще сорвать объявление на вашем доме, чем перепечатывать вообще весь тираж и переклеивать его безо всякой гарантии что все не повторится.

Теперь к предупреждениям. На действия, описанные в посте, законодательство России смотри неодобрительно, а иногда с явным предостережением не делать так, поскольку формально это самое что ни есть телефонное хулиганство. Пока мы достаем полулегальные конторки, которые никогда не пойдут в полицию- все норм. Надумаете применить против граждан- получите шанс получить неплохой штраф и помести дворы 15 суток. Троллинг организации- вполне можно влететь на условку и опять же штраф. Не дай бог надумаете терроризировать государственную или силовую организацию или вообще отключив мозг позвоните и сообщите о бомбе- без разговоров срок. И не переживайте, если надо- все равно найдут. Одно дело мелкое хулиганство, совсем другое- телефонный терроризм.

Далее теория. Прежде всего нам понадобится телефонный провайдер с динамическим АОН ( ну то бишь каждый раз разный номер при звонке). В Европе есть такой- Dellmont S.A.R.L.( ранее- Betamax). Знамениты сии сыны телефонной Тортуги тем что перепродают занедорого пиратский SIP-трафик по всему миру - к примеру США и Канада за смешные 1 цент минута, Европа по 3-4 цента, Азия от 5 центов. Второй занимательный факт- конторка разделилась на более чем 30 клонов которые под разными именами лихо конкурируют друг с другом, являясь по сути одним лицом. Мы возьмем самые удобные в нашем случае - siptraffic.com или же bestvoipreselling.com. Я рекомендую второй, он позволяет наплодить несколько учеток поверх основной и выставлять им лимиты. Удобно если у вас несколько устройств. Из минусов- минимальный взнос 10 евро. Заходим, регистрируемся ( причем данные можно от балды), получаем свою учетку.

Ставим на телефон Zoiper ( программка для SIP-телефонии, есть для яблока и андроида), вколачиваем полученные от провайдера данные - IP-адрес сервера. логин, пароль. Значок позеленел? Все, мы готовы. Ну и плюсом получили возможность недорого звонить за границу или из-за границы домой, бы бы инет.

Далее есть два пути - простой и истинного джедая VoIP. Начнем с простого.

С Zoiper звоним спамерам ( набирать только в международном формате, вида 790999999999) и вежливо интересуемся, а не вы ли наклеили объявление о продаже блох и ремонте примусов  на дверь подъезда по улице Печенек, 3? И если подтверждают- вежливо просим оторвать. Хамят, посылают? Ну вот тогда уже двигаемся дальше, мы же не нацистская Германия, без предупреждения нападать.

Простой путь- на том же Зойпере периодически жмем вызов и отключаем микрофон. Советую так и сделать первые два дня, чтобы не геморроиться со сложной схемой. И периодически звонить и заново вежливо просить убрать объявление. Практика показывает что около половины случаев этим и оканчивается.

Нет? Ну тогда только путь сложный.

Ставим названивание на автомат. Для этого понадобится VoIP АТС, в нашем случае Asterisk, запущенный на Debian Linux. Звучит страшно, в реале не сложнее установки винды. Определяемся с местом установки. Вариантов два- платный хостинг или же VirtualBox у себя на компе. Первый вариант надежнее и сложнее, второй проще и в случае чего все удаляется в считанные секунды без следа.  Если выбрали первый- то выбирайте  Debian 9 stretch и пропускайте абзац с установкой.

Если же VirtualBox - то устанавливаем его, скачиваем образ Debian 9 netinstall. В свойствах машины добавляете сетевую карту в мост с физической ( у вас же есть дома роутер?), как минимум 1 ядро и 512 мегабайт оперативы, доступно на любом тазике. Остальное неважно.

Запускаете установку и в лучших традициях windows "далее-далее-далее", кроме выбора пакетов. Графическую среду убираете, ssh-сервер добавляете. Пароли root и пользователя что угодно, лишь бы запомнили. Установили, перезагрузили, увидели приглашение залогиниться

Заходим от root и копипастим следующие команды

apt-get update  -y

apt-get dist-upgrade  -y

apt-get install mc asterisk  -y


Это обновление системы до актуальной и установка Asterisk. Ждем пока все пройдет.

Далее подключаем нашу новорожденную систему к SIP-провайдеру. Очищаем конфиги SIP и плана набора:

echo  >  /etc/asterisk/sip.conf

echo  > /etc/asterisk/extensions.ael


открываем конфиг sip.conf

mcedit /etc/asterisk/sip.conf

и копипастим туда это  ( вставка - shift+ins)


[general]

context=null

srvlookup=no

useragent=VoIP_PBX

nat=force_rport,comedia

allowguest=no

canreinvite=no

directmedia=no

language = ru

videosupport = no

pedantic = yes

alwaysauthreject=yes

insecure=port,invite

defaultexpiry = 90

tcpenable=no


[provider]

username=LOGIN

type=peer

secret=PASSWORD

callbackextension=LOGIN

nat=force_rport,comedia

insecure=port,invite

host=IP_СЕРВЕРА

fromuser=LOGIN

disallow=all

allow=alaw

allow=ulaw

canreinvite=no

authuser=LOGIN


выходим по F10

далее открываем extensions.ael


mcedit  /etc/asterisk/extensions.ael

и копипастим это


[autodial]

_X.  =>  {

Dial(SIP/provider/${EXTEN},90);

Playback(advice);

};


теперь создаем файл автоматического вызова


mcedit /opt/autodial.call


и копипастим туда это


Channel: Local/НОМЕР_ЗЛЫДНЕЙ@autodial

MaxRetries: 2

RetryTime: 60

WaitTime: 30

Context: callme

Extension: 800

Priority: 2


выходим, сохраняем.даем права на файл

chown asterisk:asterisk  /opt/autodial.dial

chmod 775 /opt/autodial.dial


заходим в консоль астериска

asterisk -r

приглашение поменяется на что то типа

asterisk*cli>

вводим

sip reload

ael reload


проверяем что астериск зарегистрировался у провайдера

sip show registry

должно быть что то типа

IP_СЕРВЕРА:5060 N LOGIN 75 Registered Sat, 06 Jul 2019 02:02:56


Все, атс готова к бою. Простая, примитивная, но свою задачу выполнит.

Чтобы начался вызов, нужно скопировать call-файл в папку астериска

cp /opt/autodial.call  /var/spool/asterisk/outgoing


И доверим копировать файл планировщику

crontab -e

откроется редактор и копипастим туда нужное количество раз строку


00 09 * * *  cp /opt/autodial.call /var/spool/asterisk/outgoing


где 00 - это минуты, 09 часы. Меняем на нужные в каждой строке.


Выходим, сохраняем. Готово, ваш тупой робот вылетел на бомбардировку. Но он умеет только звонить и молчать в трубку. Если хотите добавить ему голос- то идем на https://voicefabric.ru/ и генерируем там роботом нужный текст. Копируем файл( уж найдите сами статейку про winSCP)  в /var/lib/asterisk/ru/ и конвертим его

apt-get install sox

sox -V VOICEFILE.wav -r 8000 -c 1 -t al  advice.alaw


Все, после поднятия трубки робот будет проговаривать этот файл.


Если вдруг тема будет популярной- то в ближайшее время могу изготовить готовый шаблон машины для VirtualBox, в которой все вышеуказанное будет уже сделано. останется только вбить свои логин и пасс.


Знатокам Linux и Asterisk- я знаю что тут многое не стоит так делать, но это статья для полных чайников. Кто знает и умеет- тот здесь ничего нового не увидит.


Будут вопросы- вэлкам в комменты.

И еще раз предупреждение- описанная выше статья- не игрушка! Пфрименять только в отношении тех кто стопроцентно заслужил и вряд ли будет жаловаться.


2
Автор поста оценил этот комментарий

Какой номер будет определяться у того кому звоните? Если будут определяться как Уругвай, Филиппины или Армения, то установщики окон начнут догадываться, что можно просто не брать трубку

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

В любом случае определяется российский мобильный . правда какого попало региона.

показать ответы
2
Автор поста оценил этот комментарий

Продавай лучше этот сервис )

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Сервис спама? И чем я буду лучше этих расклейщиков?

показать ответы
7
Автор поста оценил этот комментарий

Если ты звонишь по делу - а именно, требуешь прекратить нарушать закон в отношении общедомового имущества, часть которого тебе принадлежит - ничего никто не сделает. Хоть миллион раз позвони. Если просто автодозвон - то да, могут впаять хулиганство.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Люди всегда слишком легкомысленно относятся к последствиям своих действий, будь то пьянство за рулем. хулиганство или рукоприкладство, типа, а чего такого. Поэтому любые предупреждения не лишни.

показать ответы
29
Автор поста оценил этот комментарий
Очень круто и интересно. Но ТС советую тебе изменить последний абзац и написать что данный текст представлен чисто в качестве примера, творческого вымысла или вообще абстракции. Что он не является призывом к действию , отвлечённо описывает ВОЗМОЖНУЮ ситуацию и применять указанные в тексте вещи нужно на свой страх и риск.
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да вроде и так написал, что к чему в начале поста

показать ответы
1
Автор поста оценил этот комментарий
Мне не нравится, что на звонки нужно будет потратить кучу денег. Разве что на бесплатные номера звонить.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну какая куча? Минута соединения посекундно- порядка рубля-полутора. Пусть 6 звонков в час, 12 часов в день. 70-80 рублей в сутки. Цена двух буханок хлеба.

показать ответы
1
Автор поста оценил этот комментарий

План забавный, но что если на том конце додумаются включить платные входящие? Либо вы разоритесь либо звонки просто не будут проходить.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Платные входящие на обычном мобильном не включишь. Да и не будут этим заниматься те кто расклеивает объявления "продам гараж"," вши блохи тараканы недорого".

По сути же- получить денег с dellmont не получится в принципе. Максимум звонок будет обрываться при попытке начала тарификации. Ну то бишь все равно после поднятия трубки.

2
Автор поста оценил этот комментарий

Эта тема давно не работает. Известные ресурсы давно требуют подтверждения номера.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Клоны dellmont не требуют ничего. Телефонные пираты как есть.

0
Автор поста оценил этот комментарий

Автор, зачем сайт для генерации голоса? Есть же фестиваль и шикарнейший RHVoice, гораздо удобнее. Пусть они звонят и зачитывают статьи уголовного кодекса или конституции.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Затем что статья для чайников, которые вряд ли осилят festival.

показать ответы
4
Автор поста оценил этот комментарий
Прежде всего нам понадобится телефонный провайдер с динамическим АОН

АОН - автоматический определитель номера.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

В телефонии принят термин CallerID, но я решил не усложнять и написать более понятную всем аббревиатуру.

0
Автор поста оценил этот комментарий

насколько я понял, подстановка через сайт работает. А вот работает ли она если указать это в конфиге астериска - загадка. Такая-же как и "что там происходит на том конце", может там точно также включили переадресацию на автоответчик или типа того. Без записи этого не поймёшь.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Не работает, проверено.

показать ответы
0
Автор поста оценил этот комментарий

есть прошаренные ребята также с астерисками, которые банят номера и при очередном звонке "вешают на холд". Поэтому удобно время от времени послушать что там происходит + ограничить длительность звонка + было бы шикарно рандомом генерить CallerID с нужным префиксом (иначе попадаешь на ИВР или в другой регион, например). Для bestvoipreselling достаточно в Autodial.call указать CallerID, или он не будет подставляться?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Для России не будет. Подстановка по моим наблюдениям работает только в NANPA (североамериканский план нумерации). А у нас хоть ставь хоть нет - не прокатит. Насчёт длительности и холда не прокатит- робот проговорит файл и положит трубку

показать ответы
0
Автор поста оценил этот комментарий

цифр 10шт после семёрки, я тут просто не добил. Контекст скопипащен из поста. Я уже исправил на autodial


Так, вроде заработало

Теперь надо ещё запись включить :)

раскрыть ветку (1)
Автор поста оценил этот комментарий

Собственно, а зачем? Слушать робота они не будут. В шаблон лучше добавить "нажмите 1 если вы уже исправили косяк" с отправкой уведомления если жмякнули. Но это уже усложнение контекста.

показать ответы
0
Автор поста оценил этот комментарий

да, такое уже сам нагуглил поправил


дальше в логах

NOTICE[4849] core_local.c: No such extension/context +7xxxxxxxx@autodial while calling Local channel

NOTICE[4848] pbx_spool.c: Call failed to go through, reason (0) Call Failure (not BUSY, and not NO_ANSWER, maybe Circuit busy or down?)


ощущение что не сошлось чо-то в autodial.call с остальным конфигом, толи context толи что-то ещё


а без плюса в номере

WARNING[4866][C-00000003] pbx.c: Channel 'Local/7xxxxxxxx@autodial-0000000b;1' sent to invalid extension but no invalid handler: context,exten,priority=callme,800,2

NOTICE[4865] pbx_spool.c: Call completed to Local/7xxxxxxxx@autodial


и длительность звонка 1 сек

раскрыть ветку (1)
Автор поста оценил этот комментарий

Увидел. Короче по памяти и в больничной обстановке насажал ошибок. В .call файле строка

context: callme

лишняя

А вообще в конце недели уже буду дома и создам готовый отлаженый шаблон машины для Virtualbox

показать ответы
0
Автор поста оценил этот комментарий

да, такое уже сам нагуглил поправил


дальше в логах

NOTICE[4849] core_local.c: No such extension/context +7xxxxxxxx@autodial while calling Local channel

NOTICE[4848] pbx_spool.c: Call failed to go through, reason (0) Call Failure (not BUSY, and not NO_ANSWER, maybe Circuit busy or down?)


ощущение что не сошлось чо-то в autodial.call с остальным конфигом, толи context толи что-то ещё


а без плюса в номере

WARNING[4866][C-00000003] pbx.c: Channel 'Local/7xxxxxxxx@autodial-0000000b;1' sent to invalid extension but no invalid handler: context,exten,priority=callme,800,2

NOTICE[4865] pbx_spool.c: Call completed to Local/7xxxxxxxx@autodial


и длительность звонка 1 сек

раскрыть ветку (1)
Автор поста оценил этот комментарий

Цифр не хватает- российская нумерация 7+10 знаков (итого 11). И откуда взялся контекст callme?

показать ответы
0
Автор поста оценил этот комментарий

попробовал сделать по твоему мануалу, на этапе ael reload получаю:

Command 'ael reload' failed.

ERROR[4676]: ael.y:840 ael_yyerror: ==== File: /etc/asterisk/extensions.ael, Line 1, Cols: 0-10: Error: syntax error, unexpected word, expecting 'context'

раскрыть ветку (1)
Автор поста оценил этот комментарий

Только заметил , что форматирование уплыло


context autodial {


_X. => {


Dial(SIP/provider/${EXTEN},90);


Playback(advice);


};

};

показать ответы
0
Автор поста оценил этот комментарий

Fail2ban забыл прикрутить.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Куда, на машину не имеющую никаких sip-пиров которые можно взломать, контекстов, через которые можно позвонить и прямого доступа в интернет?

Создам шаблон для VirtualBox, там врублю. А здесь ни к чему людям забивать голову весьма маловероятным рисками

0
Автор поста оценил этот комментарий
Докер компоуз запилите тогда в придачу
раскрыть ветку (1)
Автор поста оценил этот комментарий

Докер для такой примитивной задачи? Ну попробую в свободное время

0
DELETED
Автор поста оценил этот комментарий
Номер же заблокировать на раз в телефоне можно, нет? И да, а если вызовы платными сделают?
раскрыть ветку (1)
Автор поста оценил этот комментарий

ННомера определяются каждый раз разные. С кого брать плату за звонок, с пиратской вольницы, которая продаёт левый трафик?

0
Автор поста оценил этот комментарий

а как начет LOGIN, PASSWORD, IP_СЕРВЕРА в конфиге? что там указывать?

раскрыть ветку (1)
Автор поста оценил этот комментарий

То что получишь от провайдера - логин, пароль, ip-адрес sip-сервера.

показать ответы
0
Автор поста оценил этот комментарий
А русские буквы текста робот сможет читать?
раскрыть ветку (1)
Автор поста оценил этот комментарий

Генерируется звуковой файл. Хоть китайский забей.

показать ответы