По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Привет! В статье расскажем о бесплатном способе передачи информации о звонящем в момент звонка из Битрикс24. Проверять мы будем лид и контакт. В качестве системы, куда мы будет отправлять данные будет уютный Telegram :) Погнали. Создаем Вебхук в Битрикс24 Переходим в Битрикс24 и открываем раскрывающееся меню в верхнем левом углу. Далее, выбираем «Вебхуки»: Добавляем Входящий вебхук, нажав на зеленую кнопку в правом верхнем углу Добавить вебхук. Делаем следующие настройки: Название - дайте имя. Например «Внешний доступ к REST API»; Описание - «cоответствие номера клиента и его имени»; Права доступа - необходимо выбрать «CRM (crm)»; Нажимаем «Сохранить». Для нас будет сгенерирован Вебхук. Переходим к настройке скрипта. Telegram - бот Перед продолжение настройки, вам необходимо создать Telegram – бота. О том, как это сделать читайте по кнопке: Создание бота Скрипт интеграции Из предыдущего шага, у вас должен быть идентификатор чата в Telegram, токен бота, вебхук и доменное имя вашего Битрикс24. Все, остальное дело скрипта: #!/usr/bin/php -q <?php #подключаем AGI - библиотеку; require('phpagi.php'); $agi = new AGI(); $cid = $agi->request['agi_callerid']; #от провайдера, номер на нашу АТС прилетает в формате 79ХХХХХХХХХ. В CRM номера записаны как 89ХХХХХХХХХ. Поэтому, мы стрипаем цифру спереди и подставлем 8ку; $phone = substr($cid, 1); $phone = "8$phone"; $phoneFieldset = "Коллеги, входящий звонок. Звонящий: "; #укажите служебные параметры: токен бота, идентификатор чата, хостовое имя CRM (то, что между https:// и до .bitrix24.ru) и вебхук, который мы получили ранее; $token = "333333333:MMMMMEEEEE_RRRIIIIOOOO_NNNNEEEETTTT"; $chat_id = "-1001001001001"; $crm_id = "имя_вашего_Битрикс24"; $webhook = "wblhahgytuwrnwer"; #проверяем существование лида по номеру; $bitrix_lead_url = "https://$crm_id.bitrix24.ru/rest/2/$webhook/crm.lead.list.json?filter[PHONE]=$phone&select[]=TITLE&select[]=NAME&select[]=LAST_NAME"; $btl = curl_init(); curl_setopt ($btl, CURLOPT_URL,$bitrix_lead_url); curl_setopt ($btl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt ($btl, CURLOPT_TIMEOUT, 60); curl_setopt ($btl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt ($btl, CURLOPT_RETURNTRANSFER, 1); $bitrix_lead = curl_exec ($btl); curl_close($btl); $bitrix_lead_o = json_decode($bitrix_lead, true); $l_total = $bitrix_lead_o['total']; #проверяем существование контакта по номеру; $bitrix_contact_url = "https://$crm_id.bitrix24.ru/rest/2/$webhook/crm.contact.list.json?filter[PHONE]=$phone&select[]=TITLE&select[]=NAME&select[]=LAST_NAME"; $btc = curl_init(); curl_setopt ($btc, CURLOPT_URL,$bitrix_contact_url); curl_setopt ($btc, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt ($btc, CURLOPT_TIMEOUT, 60); curl_setopt ($btc, CURLOPT_FOLLOWLOCATION, 1); curl_setopt ($btc, CURLOPT_RETURNTRANSFER, 1); $bitrix_contact = curl_exec ($btc); curl_close($btc); $bitrix_contact_o = json_decode($bitrix_contact, true); $c_total = $bitrix_contact_o ['total']; #если найден лид, то: формируем массив и кидаем в сторону Telegram: имя, фамилия и идентификатор лида; if ($l_total >= 1) { $l_name = $bitrix_lead_o['result'][0]['NAME']; $l_title = $bitrix_lead_o['result'][0]['TITLE']; $l_l_name = $bitrix_lead_o['result'][0]['LAST_NAME']; $l_id = $bitrix_lead_o['result'][0]['ID']; $l_titleFieldset = "Входящий звонок от лида - "; $l_FnameFieldset = "Его имя - "; $l_linkFieldset = "Ссылка на лид - "; $l_fullname = "$l_name $l_l_name"; $l_link = "https://$crm_id.bitrix24.ru/crm/lead/show/$l_id/"; $arr = array( $l_titleFieldset => $l_title, $l_FnameFieldset => $l_fullname, $l_linkFieldset => $l_link, ); foreach($arr as $key => $value) { $txt .= "".$key." ".$value."%0A"; }; fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r"); } #если найден контакт, то: формируем массив и кидаем в сторону Telegram: имя, фамилия и идентификатор контакта; elseif ($c_total >= 1) { $c_name = $bitrix_contact_o ['result'][0]['NAME']; $c_c_name = $bitrix_contact_o ['result'][0]['LAST_NAME']; $c_id = $bitrix_contact_o ['result'][0]['ID']; $c_FnameFieldset = "Входящий звонок от контакта - "; $c_linkFieldset = "Ссылка на контакт - "; $c_fullname = "$c_name $c_c_name"; $c_link = "https://$crm_id.bitrix24.ru/crm/contact/show/$c_id/"; $arr = array( $c_FnameFieldset => $c_fullname, $c_linkFieldset => $c_link, ); foreach($arr as $key => $value) { $txt .= "".$key." ".$value."%0A"; }; fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r"); } else {}; Скачать скрипт По факту, от вас требуется изменить следующие переменные: $token - токен вашего бота. Как его получить указано в стате по ссылке «Создание телеграм бота» выше; $chat_id - идентификатор чата, в котором находится бот. Генерация так же указана в статье; $crm_id - хостовая часть вашего Битрикс24. Если у вас URL CRM company.bitrix24.ru, то указать нужно company; $webhook - вебхук. Мы показывали ранее, как его получить в Битрикс24 (у нас wblhahgytuwrnwer); Сохраняем скрипт как b24.php закидываем его в директорию /var/lib/asterisk/agi-bin. Адаптируем скрипт в unix – среде: dos2unix /var/lib/asterisk/agi-bin/b24.php chown asterisk:asterisk /var/lib/asterisk/agi-bin/b24.php chmod 775 /var/lib/asterisk/agi-bin/b24.php В диалплане (вставьте исполнение скрипта в транке, например): exten => _.,n,AGI(b24.php) Добавив в скрипт конструкцию вида $agi->set_variable("lookupcid", "$c_fullname"); для контакта или $agi->set_variable("lookupcid", "$l_fullname"); для лида, в диалплане мы сможем сделать следующее: Set(CALLERID(name)=${lookupcid}) мы получим имя звонящего в виде CallerID Name – например, на дисплее телефона. Можете создать тестового лида (или контакт) со своим номером телефона или дождаться звонка клиента. Наслаждаемся :)
img
Прежде чем перейти к более сложным темам, мы завершим эту серию статей об основах OSPF. Здесь мы рассмотрим типы LSA, типы областей и виртуальные ссылки (LSA types, area types, и virtual links). Протокол маршрутизации OSPF: LSA, области и виртуальные ссылки OSPF LSA ТИПЫ Link State Advertisements (LSA) — Объявления состояния канала — это основа работы сетей на OSPF. Наполнение этих обновлений позволяют сети OSPF создать карту сети. Это происходит с помощью алгоритма кратчайшего пути Дейкстры. Не все LSA OSPF равны. Ниже представлен каждый их них: Router (Type 1) LSA - мы начинаем с того, что многие называют «фундаментальным» или «строительным блоком» Link State Advertisements. Type 1 LSA (также известный как Router LSA) определен в пределах области. Он описывает интерфейсы локального маршрутизатора, которые участвуют в OSPF, и соседей, которых установил локальный спикер OSPF. Network (Type 2) LSA - вспомните, как OSPF функционирует на (широковещательном) Ethernet сегменте. Он выбирает Designated Router (DR) and Backup Designated Router (BDR), чтобы уменьшить количество смежностей, которые должны быть сформированы, и хаос, который будет результатом пересечением этих отношений. Type 2 LSA отправляется назначенным маршрутизатором в локальную область. Этот LSA описывает все маршрутизаторы, которые подключены к этому сегменту. Summary (Type 3) LSA – напоминаем вам, что Type 1 LSA и Type 2 LSA ретранслируются в пределах области. Мы называем их intra-area LSA. Теперь пришло время для первого из наших inter-area LSA. Summary (Type 3) LSA используется для объявления префиксов, полученных из Type 1 LSA и Type 2 LSA в другой области. Маршрутизатор границы области (ABR) — это устройство OSPF, которое разделяет области, и именно это устройство рекламирует Type 3 LSA. Изучите топологию OSPF, показанную на рисунке 1 ниже. Топология OSPF Рис. 1: Пример многозональной топологии OSPF Область 1 ABR будет посылать Type 3 LSA в область 0. ABR, соединяющий область 0 и область 2, отправил эти Type 3 LSA в область 2, чтобы обеспечить полную достижимость в домене OSPF. Type 3 LSA остаются Type 3 LSA во время этой пересылки. ASBR Summary (Type4) LSA - есть особая роль маршрутизатора OSPF, который называется пограничный маршрутизатор автономной системы Autonomous System Boundary Router (ASBR). Задача этого маршрутизатора заключается в том, чтобы ввести внешнюю префиксную информацию из другого домена маршрутизации. Для того чтобы сообщить маршрутизаторам в различных областях о существовании этого специального маршрутизатора, используется Type 4 LSA. Эта Summary LSA предоставляет идентификатор маршрутизатора ASBR. Таким образом, еще раз, Area Border Router отвечает за пересылку этой информации в следующую область, и это есть еще один пример inter-area LSA. External (Type 5) LSA - Таким образом, ASBR — это устройство, которое приносит префиксы из других доменов маршрутизации. Type 4 LSA описывает это устройство. Но какой LSA используется для реальных префиксов, поступающих из другого домена? Да, это Type 5 LSA. OSPF ASBR создает эти LSA, и они отправляются к Area Border Routers для пересылки в другие области. NSSA External (Type 7) LSA - в OSPF есть специальный тип области, называемый Not So Stubby Area (NSSA). Эта область может выступать заглушкой, но она также может вводить внешние префиксы из ASBR. Эти префиксы передаются как Type 7 LSA. Когда ABR получает эти Type 7 LSA, он отправляет по одному в другие области, такие как Type 5 LSA. Таким образом, обозначение Type 7 предназначено только для этой специальной области NSSA. Другие типы LSA. Существуют ли другие типы LSA? Да. Но мы не часто сталкиваемся с ними. Например, Type 6 LSA используется для многоадресной (Multicast) передачи OSPF, и эта технология не прижилась, позволяя Protocol Independent Multicast передаче победить. Для завершения ниже показан полный список всех возможных типов LSA: LSA Type 1: Router LSA LSA Type 2: Network LSA LSA Type 3: Summary LSA LSA Type 4: Summary ASBR LSA LSA Type 5: Autonomous system external LSA LSA Type 6: Multicast OSPF LSA LSA Type 7: Not-so-stubby area LSA LSA Type 8: External Attribute LSA for BGP LSA Type 9, 10, 11: "Opaque" LSA типы, используемые для конкретных прикладных целей OSPF ТИПЫ LSA И ТИПЫ AREA Одна из причин, по которой вы должны освоить различные типы LSA, заключается в том, что это поможет вам полностью понять потенциальную важность multi-area, особенно такого, который может включать специальные области. Ключом к важности специальных типов областей в OSPF является тот факт, что они инициируют автоматическую фильтрацию определенных LSA из определенных областей. Например, подумайте о области 1, присоединенной к основной области области 0. Type 1 LSA заполнил область 1. Если у нас есть широковещательные сегменты, мы также имеем Type 2 LSA, циркулирующие в этой области. Area Border Router посылает LSA Type 3 в магистраль для суммирования префиксной информации из области 1. Этот ABR также принимает эту информацию от магистрали для других областей, которые могут существовать. Если где-то в домене есть ASBR, наша область 1 получит LSA Type 4 и LSA Type 5, чтобы узнать местоположение этого ASBR и префиксы, которыми он делится с нами. Обратите внимание, что это является потенциальной возможностью для обмена большим количеством информации между областями. Именно поэтому у нас есть специальные типы зон! OSPF LSAS И STUB AREA (ЗАГЛУШКА) Для чего предназначена Stub Area? Мы не хотим слышать о тех префиксах, которые являются внешними для нашего домена OSPF. Помните, у нас был такой случай? Конечно, это LSA Type 5. На самом деле, мы даже не хотим слышать о тех LSA Type 4, которые используются для вызова ASBR в сети. Таким образом, Stub Area заполнена LSA Type 1, Type 2 и Type 3. На самом деле, как эта область могла бы добраться до одного из этих внешних префиксов, если бы это было необходимо? Для этого мы обычно используем очень специальный LSA Type 3. Этот LSA представляет маршрут по умолчанию (0.0.0.0 / 0). Именно этот удобный маршрут позволяет устройствам в этой области добраться до всех этих внешних объектов. На самом деле именно этот маршрутизатор используется для получения любого префикса, специально не определенного в базе данных маршрутизации (RIB). OSPF LSA И TOTALLY STUBBY AREA (ПОЛНОСТЬЮ КОРОТКАЯ ОБЛАСТЬ) Использование этой области имеют малые перспективы LSA. Использование этой области имеет смысл тогда, когда мы хотим снова заблокировать Type 4 и 5, но в данном случае мы блокируем даже LSA Type 3, которые описывают информацию префикса из других областей в нашем домене OSPF. Однако здесь имеется одно большое исключение. Нам нужен LSA Type 3 для маршрута по умолчанию, чтобы мы действительно могли добраться до других префиксов в нашем домене. OSPF LSAS И NOT SO STUBBY AREA И TOTALLY NOT SO STUBBY AREA Запомните, что Not So Stubby Area должна иметь LSA Type 7. Эти LSA Type 7 допускают распространение тех внешних префиксов, которые входят в ваш домен OSPF благодаря этой созданной вами области NSSA. Очевидно, что эта область также имеет Type 1, Type 2 и Type 3 внутри нее. Type 4 и Type 5 будут заблокированы для входа в эту область, как и ожидалось. Вы также можете создать Totally Not So Stubby Area, ограничив Type 3 из этой области. VIRTUAL LINKS Вспомните из нашего более раннего обсуждения OSPF, что все области в автономной системе OSPF должны быть физически связаны с основной областью (область 0). Там, где это невозможно, вы можете использовать виртуальную связь (virtual link) для подключения к магистрали через область, не являющуюся магистралью. Учтите следующие факты о virtual link: Они никогда не должны рассматриваться в качестве цели проектирования в ваших сетях. Они являются временным "исправлением" нарушения работы OSPF. Вы также можете использовать virtual link для соединения двух частей секционированной магистрали через область, не являющуюся магистралью. Область, через которую вы настраиваете virtual link, называемую транзитной областью, должна иметь полную информацию о маршруте. Транзитная зона не может быть stub area (заглушкой). Вы создаете virtual link с помощью команды в режиме конфигурации OSPF: area 1 virtual-link 3.3.3.3 Эта команда создает virtual link через область 1 с удаленным устройством OSPF с идентификатором маршрутизатора (Router ID) 3.3.3.3. Вы также настраиваете это удаленное устройство OSPF с помощью команды virtual-link. Например, если наше локальное устройство OSPF находится в Router ID 1.1.1.1, то соответствующая удаленная команда будет: area 1 virtual-link 1.1.1.1 Примечание: virtual link — это всего лишь один из способов наладки нарушений в работе OSPF. Вы также можете использовать туннель GRE для исправления сбоев в работе OSPF.
img
Атака MITM обычно выполняется во внутренней корпоративной сети. Злоумышленник использует этот тип атаки с целью перехвата конфиденциальной информации, которая передается между устройствами. Как вы понимаете, «человек посередине» (Man-in-the-middle) — это просто указание на то, где находится злоумышленник. Он располагается между устройством (устройствами) жертвы и получателем. Машина злоумышленника используется для перехвата всех сообщений между жертвой получателем. Большинство пользователей не знают о незащищенных сетевых протоколах, которые используются для передачи их сообщений от источника к получателю. Эти незащищенные протоколы передают сообщения в виде обычного текста, позволяя злоумышленнику перехватить и просмотреть фактические данные. Чтобы лучше понять, как работает MITM-атака, давайте посмотрим на следующий рисунок: Как показано на предыдущем рисунке, если PC1 захочет отправить какие-либо данные через Интернет, они отправляются на шлюз по умолчанию, которым является R1. Кроме того, для всех коммуникаций, которые происходят в локальной сети, устройства пересылают сообщения, используя MAC-адрес назначения, найденный в кадре, а не IP-адрес назначения. IP-адрес назначения важен только тогда, когда сообщение должно быть переадресовано за пределы локальной сети, например, в другую подсеть или удаленную сеть. Следовательно, когда PC1 захочет отправить сообщение через Интернет, он пересылает сообщение на MAC-адрес назначения, известный как BBBB.BBBB.BBBB, который принадлежит R1. Когда R1 должен пересылать какие-либо сообщения (пакеты) на PC1, он будет использовать MAC-адрес назначения AAAA.AAAA.AAAA. Таким образом, изначально сообщения на машину злоумышленника не отправляются. Злоумышленник может использовать уязвимость в протоколе разрешения адресов (Address Resolution Protocol - ARP), чтобы гарантировать, что все сообщения, которыми обмениваются между PC1 и R1, отправляются через его машину, как показано на следующем рисунке: Протокол ARP работает между уровнем 2 (канальный уровень) и уровнем 3 (уровень Интернета) стека протоколов TCP/IP. Он предназначен для преобразования IP-адреса в MAC-адрес потому, что коммутаторы не могут считывать адресацию уровня 3, например IP-адресацию внутри пакета. Коммутаторы могут только читать MAC-адреса и пересылать кадры на основе MAC-адреса назначения, найденного в заголовке кадра уровня 2. По этой причине ARP необходим в любой сети. Когда устройство, такое как PC1, не знает MAC-адрес целевого хоста, такого как R1, оно будет отправлять ARP-запрос в сеть, спрашивая, у кого есть MAC-адрес для конкретного пункта назначения, как показано на следующем рисунке: Запрос ARP отправляется на все устройства. Только устройство, имеющее IP-адрес назначения, ответит ARP-ответом, содержащим его MAC-адрес, как показано на следующем рисунке: Затем MAC-адрес временно сохраняется в кэше ARP исходного устройства, PC1. Исходное устройство затем вставляет MAC-адрес назначения в заголовок кадра уровня 2 перед размещением сообщения в сети. Коммутатор, который получает сообщение от PC1, проверяет MAC-адрес назначения, найденный в заголовке уровня 2, и пересылает сообщение на хост назначения. Злоумышленник может обманом заставить PC1 поверить в то, что он — это R1, а также заставить R1 думать, что он — это PC1. Злоумышленник может притвориться PC1 для R1 и наоборот. С технической точки зрения злоумышленник выдает себя за другую машину в сети — это называется подменой MAC-адресов. Кроме того, злоумышленник отправит безвозмездное сообщение ARP, содержащее ложное сопоставление IP-адресов и MAC-адресов. Каждое сообщение создается специально для PC1 и R1. Безвозмездное сообщение ARP — это ответ, который не был инициирован запросом ARP. Другими словами, это когда одно устройство отправляет обновление ARP без запроса. Это позволяет злоумышленнику выполнять атаку с подменой ARP и отправлять ложные сообщения ARP устройствам, заставляя их вставлять неверные сопоставления IP-адресов в MAC-адреса в их кэш ARP. Это известная уязвимость, обнаруженная в ARP и TCP/IP. На следующем рисунке показано, как злоумышленник отправляет безвозмездное сообщения ARP на PC1 и R1: Это приведет к тому, что весь трафик между PC1 и R1 будет отправлен на атакующую машину, что приведет к атаке MITM. На следующем скриншоте показан пример инструмента тестирования на проникновение, известного как arpspoof, который используется для отправки бесплатных сообщений ARP на хост-устройства в сети для создания атак MITM: Как показано на предыдущем скриншоте, инструмент постоянно заполняет компьютер жертвы (10.10.10.11) и шлюз по умолчанию (10.10.10.1) ложными сведениями о сопоставлении IP-адресов с MAC-адресами. На следующем рисунке показан захват Wireshark, отображающий ложные сообщения ARP, отправляемые по сети: Обратите внимание, как Wireshark выделил сообщения желтым цветом как подозрительные для изучения. Существует множество функций безопасности уровня 2, которые уже предварительно загружены в коммутаторы Cisco IOS, и все они могут быть реализованы специалистом по безопасности. Вот некоторые из этих функций безопасности: Port security: Port security используется для фильтрации неавторизованных MAC-адресов от входа в интерфейс коммутатора. Dynamic ARP Inspection (DAI): DAI проверяет информацию об адресе IP-to-MAC, найденную в пакете, поступающем в коммутатор. Если будет найдено поддельное сообщение, коммутатор отклонит его, чтобы защитить сеть уровня 2. IP Source Guard: это еще одна функция безопасности, которая позволяет устройствам Cisco разрешать в сети только IP-адреса доверенных источников, предотвращая атаки с подменой IP-адресов.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59