По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Мы уже писали статьи о том, как зарегистрировать транки от таких провайдеров VoIP услуг как : МТТ, Телфин, SIPNET и другие. А сегодня расскажем как подключиться к SIP-сервису от оператора МегаФон - МультиФон на примере FreePBX 14. Почему то, именно с данным сервисом у многих возникают проблемы. Поэтому, дабы помочь нашим дорогим читателям и снять нагрузку с технической поддержки МегаФона, мы решили написать эту статью :) Предыстория МультиФон – это SIP-сервис от оператора мобильной связи МегаФон, с которым они вышли на рынок в 2010 году. Идея проста – связать сервисы сотовой связи оператора и VoIP. То есть организовать возможность приёма и совершения вызовов не только через сеть GSM, но и через Интернет. При этом средства списываются с мобильного номера. Помимо этого можно также совершать видео-звонки, а также отправлять SMS и MMS сообщения. Подключение и настройка Подключить МультиФон может любой обладатель мегафоновской SIM-карты. Для этого достаточно просто набрать комбинацию *137# и выбрать опцию “Подключить”. Через какое-то время Вам прилетит SMS с именем пользователя и паролем. Имя пользователя будет совпадать с номером мобильного, закреплённого за Вашей SIM-картой. После этого, логинимся во FreePBX и начинаем настраивать транк. Переходим в раздел Connectivity → Trunks. Далее нажимаем Add Trunk → Add Chan_sip trunk. Перед нами откроются параметры добавления нового транка. На вкладке General указываем желаемое название транка (Trunk Name) и Outbound CallerID - номер, который увидят абоненты, вызываемые через этот транк. Далее переходим сразу на вкладку sip Settings и настраиваем вкладку Outgoing, т.е параметры, которые мы будем отправлять на сервера МультиФона. В поле Trunk Name повторно введите название транка. А в поле PEER Details необходимо указать следующее: username=79261234567 type=peer secret=<SUPER_SECURE_PASS.> host=sbc.megafon.ru fromuser=79261234567 fromdomain=multifon.ru port=5060 qualify=yes insecure=invite,port canreinvite=no Где: username- имя пользователя, которые пришло Вам в SMS, которое совпадает с номером телефона; type - тип линии, которая будет обрабатывать входящие и исходящие вызовы, проходящие через Asterisk. Авторизация при входящих будет осуществляться по средствам сопоставления IP и порта; secret - пароль, который Вы получили по SMS; host - адрес сервера регистрации; fromuser - имя пользователя в поле FROM заголовка SIP; fromdomain - адрес домена для поля FROM заголовка SIP; port - порт, на котором сервер регистрации слушает протокол SIP; qualify - параметр, отвечающий за проверку доступности хоста; insecure - отвечает за проверку параметров при аутентификации. port, invite – означает, что аутентификация будет осуществляться без проверки номера порта и входящих сообщений INVITE; canreinvite - параметр, запрещающий повторную отправку сообщений INVITE, когда соединение уже установлено; Далее переходим на вкладку Incoming и прописываем такую строчку в поле Register String: 79261234567@multifon.ru:<SUPER_SECURE_PASS.>:79261234567@193.201.229.35:5060/79261234567 После чего нажимаем Submit и Apply Config. Далее необходимо перейти в модуль Settings → Asterisk SIP Settings → Chan SIP Settings и найди параметр Enable SRV Lookup, его нужно поставить в Yes После всех выполненных действий, Вы должны будете увидеть в Registries две регистрации – одну на multifon.ru, а другую на прокси сервере – sbc.megafon.ru. Можно также убедиться в том, что транк успешно зарегистрирован на вкладке Peers: Кстати, интересная особенность, которую можно увидеть с помощью утилиты sngrep, в том, что МультиФон использует отдельные сервера для сигнализации и RTP-трафика. А также, отправляет пакеты 407 Proxy Authentication Required, сообщающие о том, что для совершения вызова необходима аутентификация на прокси сервере. Вот посмотрите:
img
Многим приложениям нужно обмениваться данными между клиентом и сервером. Долгое время эталонным форматом данных для обмена информацией между двумя объектами считался XML. Затем, в начале 2000-х, появился альтернативный формат JSON. В данной статье вы узнаете все о JSON. Мы рассмотрим, что это, и как им пользоваться, а также разберем ряд популярных заблуждений. Что такое JSON? JSON (JavaScript Object Notation, нотация объектов JavaScript) - это текстовый формат обмена данными. Он представлен наборами пар "ключ-значение", причем ключ - это всегда строка, а значение может задаваться одним из следующих типов: число; строка; логическое значение; массив; объект; нулевое значение null. Несколько важных правил: В формате данных JSON ключи прописываются в двойных кавычках. Ключ и значение разделяются двоеточием (:). Может быть несколько пар "ключ-значение". Каждая пара отделяется запятой (,). В данных JSON недопустимы комментарии (// или /* */). (Но при желании это ограничение можно обойти) Ниже приведен пример простых данных в JSON: { "name": "Alex C", "age": 2, "city": "Houston" } Допустимые данные в JSON возможны в 2 разных форматах: Набор пар «ключ-значение» в фигурных скобках {...}. Это показано в примере выше. Упорядоченные списки пар «ключ-значение», разделенных запятой (,) и заключенных в квадратные скобки [...]. См. пример ниже: [ { "name": "Alex C", "age": 2, "city": "Houston" }, { "name": "John G", "age": 40, "city": "Washington" }, { "name": "Bala T", "age": 22, "city": "Bangalore" } ] Предположим, вы уже писали что-то на JavaScript. Тогда у вы можете ошибочно предположить, что формат JSON и объекты JavaScript (и массивы объектов) очень похожи. Но это не так. Чуть позже мы подробно об этом поговорим. Структура JSON разработана на основе синтаксиса объектов JavaScript, и это единственное, что объединяет JSON и объекты JavaScript. Формат JSON не зависит от языка программирования. Мы можем использовать JSON в Python, Java, PHP и многих других языках. Примеры формата данных JSON Сохранять данные JSON можно в файле с расширением .json. Давайте создадим файл employee.json с атрибутами сотрудника. Они представлены в виде ключей и значений. { "name": "Aleix Melon", "id": "E00245", "role": ["Dev", "DBA"], "age": 23, "doj": "11-12-2019", "married": false, "address": { "street": "32, Laham St.", "city": "Innsbruck", "country": "Austria" }, "referred-by": "E0012" } В примере выше присутствуют следующие атрибуты сотрудника: name – имя сотрудника. Значение в строковом формате (String). Оно указано в двойных кавычках. id – уникальный идентификатор сотрудника. Опять же, в строковом формате. role – роли, которые сотрудник выполняет в организации. Таких ролей может быть несколько, поэтому лучше перечислять эти данные в формате массива (Array). age – текущий возраст сотрудника. Это числовое значение (Number). doj – дата найма сотрудника. Поскольку это дата, ее добавляют в двойных кавычках и обрабатывают как строку. married – замужем/женат ли сотрудник? Ответом может быть да/нет (то есть true или false), так что это логический формат (Boolean). address – адрес сотрудника. Может состоять из нескольких частей: улица, город, страна, индекс и т.д. Такое поле лучше представлять в виде объекта (Object с парами «ключ-значение»). referred-by – идентификатор сотрудника, который порекомендовал этого человека на должность в организацию. Если сотрудник пришел по рекомендации, то атрибут имеет значение. В остальных случаях поле остается пустым, т.е. null. Теперь давайте создадим набор данных по сотрудникам в формате JSON. Если мы хотим добавить несколько записей о разных сотрудниках, то необходимо прописать их в квадратных скобках [...]. [ { "name": "Aleix Melon", "id": "E00245", "role": ["Dev", "DBA"], "age": 23, "doj": "11-12-2019", "married": false, "address": { "street": "32, Laham St.", "city": "Innsbruck", "country": "Austria" }, "referred-by": "E0012" }, { "name": "Bob Washington", "id": "E01245", "role": ["HR"], "age": 43, "doj": "10-06-2010", "married": true, "address": { "street": "45, Abraham Lane.", "city": "Washington", "country": "USA" }, "referred-by": null } ] Обратите внимание на значение атрибута referred-by для сотрудника Боба Вашингтона (Bob Washington). Оно пустое. То есть никто из сотрудников не давал ему рекомендаций. Как использовать данные JSON в качестве значения строки Мы узнали, как форматировать данные внутри файла JSON. Еще можно использовать данные JSON в качестве строковых значений и присваивать их переменной. Поскольку JSON считается текстовым форматом, в большинстве языков программирования его можно обрабатывать как строку. Давайте рассмотрим пример, как это делается JavaScript. Вы можете добавить данные JSON в одну строку. Перечисление делается через одинарные кавычки '...'. const user = '{"name": "Alex C", "age": 2, "city": "Houston"}'; Если вы хотите сохранить форматирование, то данные JSON лучше создавать с помощью шаблонных литералов (template literals). const user = `{ "name": "Alex C", "age": 2, "city": "Houston" }`; Кроме того, это очень удобное решение, если нужно создать данные JSON с динамическими значениями. const age = 2; const user = `{ "name": "Alex C", "age": ${age}, "city": "Houston" }`; console.log(user); // Output { "name": "Alex C", "age": 2, "city": "Houston" } Объекты JavaScript и JSON – это НЕ одно и то же Формат данных JSON создавался на базе объектной структуры JavaScript. Но все сходства на этом заканчиваются. Объекты в JavaScript: у объектов JavaScript могут быть методы, а у JSON – нет; ключи можно добавлять без кавычек; разрешены комментарии; отдельные сущности Как преобразовать JSON в объект JavaScript и наоборот В JavaScript есть 2 встроенных метода по преобразованию данных JSON в объекты JavaScript и наоборот. Как преобразовать данные JSON в объект JavaScript Для преобразования данных JSON в объект JavaScript используется метод JSON.parse(). Он проводит синтаксический разбор (парсинг) допустимой строки JSON в объект JavaScript. const userJSONData = `{ "name": "Alex C", "age": 2, "city": "Houston" }`; const userObj = JSON.parse(userJSONData); console.log(userObj); Вывод: Как преобразовать объект JavaScript в данные JSON Для преобразования объекта JavaScript в данные JSON используется метод JSON.stringify(). const userObj = { name: 'Alex C', age: 2, city: 'Houston' } const userJSONData = JSON.stringify(userObj); console.log(userJSONData); Вывод: Должно быть, вы обратили внимание на слово JSON, которое используется для вызова методов parse() и stringify(). Это встроенный объект JavaScript, который, хоть и называется JSON (хотя с тем же успехом он мог бы называться JSONUtil), но не имеет никакого отношения к формату JSON. Так что, пожалуйста, помните об этом. Как обрабатывать ошибки "Unexpected token u in JSON at position 1" и другие? При обработке JSON могут возникать ошибки. Это нормально. Например, при разборе данных JSON в объект JavaScript вдруг появляется следующее сообщение: Если возникает такая ошибка, обязательно проверьте корректность ваших данных в JSON. Чаще всего причина синтаксического сбоя кроется в небольшой ошибке, которую вы случайно сделали в исходных данных JSON. Проверить правильность данных и форматов JSON можно с помощью JSON Linter.
img
Привет, друг! Ты, наверное, слышал аббревиатуру DPI. А как это расшифровывается и что это вообще такое? Это сейчас и узнаем. Что такое DPI? Deep Packet Inspection (DPI) - это продвинутый метод проверки и управления сетевым трафиком. DPI представляет собой форму фильтрации пакетов, которая обнаруживает, идентифицирует, классифицирует, перенаправляет или блокирует пакеты с конкретными данными или полезной нагрузкой, которые обычная фильтрация пакетов (которая проверяет только заголовки пакетов) не может обнаружить. Обычно функции глубокой проверки пакетов работают на уровне приложений (Application) модели OSI, в то время как традиционная фильтрация пакетов только сообщает информацию заголовка каждого пакета. Другими словами, традиционная фильтрация пакетов была похожа на чтение названия книги без осознания или оценки содержимого внутри. Как работает DPI? DPI проверяет содержимое пакетов, проходящих через заданную точку, и принимает решения в режиме реального времени на основе правил, назначенных компанией, провайдером или сетевым администратором, в зависимости от того, что содержит пакет. До недавнего времени фаерволы не обладали вычислительной мощностью, необходимой для более глубоких проверок больших объемов трафика в режиме реального времени. Глубокая проверка пакетов может проверить содержимое сообщений и определить конкретное приложение или службу, из которой оно поступает. Кроме того, фильтры могут быть запрограммированы для поиска и перенаправления сетевого трафика из определенного диапазона адресов Интернет-протокола (IP) или определенной онлайн-службы, например, такой как Facebook. Как используется DPI? Глубокая проверка пакетов также может использоваться в управлении сетью для оптимизации потока сетевого трафика. Например, сообщение, помеченное как высокоприоритетное, может быть направлено к месту назначения раньше менее важных или низкоприоритетных сообщений, или пакетов, участвующих в случайном просмотре Интернета. DPI также может использоваться для регулирования передачи данных, чтобы предотвратить злоупотребление p2p, что улучшает производительность сети. Также DPI используется для предотвращения проникновения в вашу корпоративную сеть червей, шпионских программ и вирусов. Кроме того, DPI также можно использовать для расширения возможностей интернет провайдеров по предотвращению использования IoT-устройств при DDOS-атаках путем блокирования вредоносных запросов от устройств. Глубокая проверка пакетов также может предотвратить некоторые типы атак переполнения буфера. Наконец, глубокая проверка пакетов может помочь вам предотвратить утечку информации, например, при отправке конфиденциального файла по электронной почте. Вместо того, чтобы успешно отправить файл, пользователь вместо этого получит информацию о том, как получить необходимое разрешение и разрешение на его отправку. Техники DPI Два основных типа продуктов используют глубокую проверку пакетов: межсетевые экраны, в которых реализованы такие функции IDS (Intrusion Detection System – система обнаружения вторжений), как проверка содержимого, и системы IDS, которые нацелены на защиту сети, а не только на обнаружение атак. Некоторые из основных методов, используемых для глубокой проверки пакетов, включают в себя: Сопоставление шаблонов или сигнатур (Pattern or signature matching) - Один из подходов к использованию фаерволов, которые используют функции IDS, анализирует каждый пакет на основе базы данных известных сетевых атак. Недостатком этого подхода является то, что он эффективен только для известных атак, а не для атак, которые еще предстоит обнаружить. Аномалия протокола (Protocol anomaly) - Другой подход к использованию фаерволов с функциями IDS, аномалия протокола использует подход «запрет по умолчанию», который является ключевым принципом безопасности. В этой технике используются определения протокола (protocol definitions), для того чтобы определить, какой контент должен быть разрешен. Основным преимуществом этого подхода является то, что он обеспечивает защиту от неизвестных атак. Решения IPS - Некоторые решения IPS (Intrusion Prevention System – система предотвращения вторжений) используют технологии DPI. Эти решения имеют функции, аналогичные встроенным IDS, хотя они могут блокировать обнаруженные атаки в режиме реального времени. Одной из самых больших проблем при использовании этого метода является риск ложных срабатываний, который может быть смягчен до некоторой степени, путем создания консервативной политики. Существуют некоторые ограничения для этих и других методов DPI, хотя поставщики предлагают решения, направленные на устранение практических и архитектурных проблем различными способами. Кроме того, решения DPI теперь предлагают ряд других дополнительных технологий, таких как VPN, анализ вредоносных программ, антиспам-фильтрация, фильтрация URL-адресов и другие технологии, обеспечивающие более комплексную защиту сети. Недостатки DPI Ни одна технология не является идеальной, и DPI не является исключением. У нее есть несколько слабых сторон: Глубокая проверка пакетов очень эффективна для предотвращения таких атак, как атаки типа «отказ в обслуживании», атаки с переполнением буфера и даже некоторых форм вредоносных программ. Но это также может быть использовано для создания подобных атак. Глубокая проверка пакетов может сделать ваш текущий фаервол и другое программное обеспечение безопасности, которое вы используете, более сложным в управлении. Вы должны быть уверены, что вы постоянно обновляете и пересматриваете политики глубокой проверки пакетов, чтобы обеспечить постоянную эффективность. Глубокая проверка пакетов может замедлить работу вашей сети, выделив ресурсы для фаервола, чтобы он мог справиться с нагрузкой обработки. Помимо проблем конфиденциальности и внутренних ограничений глубокой проверки пакетов, некоторые проблемы возникли из-за использования сертификатов HTTPS и даже VPN с туннелированием. Некоторые фаерволы теперь предлагают проверки HTTPS, которые расшифровывают трафик, защищенный HTTPS, и определяют, разрешено ли пропускать контент. Тем не менее, глубокая проверка пакетов продолжает оставаться ценной практикой для многих целей, начиная от управления производительностью и заканчивая аналитикой сети, экспертизой и безопасностью предприятия.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59