По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
При первичной настройке Asterisk или дальнейшей отладке очень часто может возникнуть потребность в совершении звонка без использования физического телефона или софтфона. К примеру, изменились настройки фаерволла, транка или экстеншена и необходимо при каждом изменении совершать тестовые исходящие звонки. Подобную функцию выполняет команда «Dial», но в данном случае необходимо создать так называемый «call» файл, просто текстовый файл, который содержит следующие строки: Channel: SIP/flowroute/84951112233 MaxRetries: 1 RetryTime: 60 WaitTime: 30 Context: test_forcall Extension: 1 Priority: 1 Set: variablename=variablevalue CallerID: Test <84954445566> Первая строчка определяет канал, который будет использоваться для совершения вызова и экстеншен, в данном случае – любой номер телефона, в данном примере 84951112233. Следующая строка – параметр, определяющий сколько раз Asterisk произведет попыток вызова на данный номер. Далее – временной интервал между вызовами и начальное время ожидания перед первым звонком. Параметр «Context» отвечает соответственно за контекст, через который пойдет вызов, экстеншен и приоритет. Кроме того, можно настроить CallerID (номер вызывающего абонента), в данном случае - Test <84954445566>. Для того, что бы Астериск прочел и использовал .call файл, его необходимо поместить в директорию /var/spool/asterisk/outgoing/ - важно, что он должен быть именно перемещён в неё с помощью команды «mv», а не создан в самой директории. Кроме того, необходимо, что бы Астериск имел достаточно прав для того, чтобы удалить этот файл после использования. Суммируя вышесказанное, необходимо: Создать .call файл с необходимым наполнением Настроить необходимые разрешения с помощью команды chmod chmod 777 callfile.call 3. Переместить файл в директорию для его исполнения командой mv mv callfile.call /var/spool/asterisk/outgoing/ Так как файл совершает вызов с использованием контекста, экстеншена и приоритета, ниже приведён пример контекста, который использовался для данного примера: [test_forcall] exten => 1,1,Answer() exten => 1,n,Record(/home/test/asterisk_sounds/rec/incoming_call.gsm,5,30) exten => 1,n,Playback(vm-goodbye) exten => 1,n,Hangup() В описании данного контекста нет никакой специфики, кроме того что необходимо зарегистрировать экстеншен с номером 1, так как через него идет вызов (.call файл в начале статьи). Если изменить дату создания .call файла, то Asterisk совершит вызов в указанный момент. Для этого используется команда touch, как указано ниже. touch -t YYYYMMDDHHMM.SS filename // формат использования команды touch -t echo date('YmdHi'); .00 callfile.call // изменение даты файла так, что Asterisk совершит вызов echo date('d'); function getMonthRus($num_month = false){ if(!$num_month){ $num_month = date('n'); } $monthes = array( 1 => 'января', 2 => 'февраля', 3 => 'марта', 4 => 'апреля', 5 => 'мая', 6 => 'июня', 7 => 'июля', 8 => 'августа',9 => 'сентября', 10 => 'октября', 11 => 'ноября', 12 => 'декабря' ); $name_month = $monthes[$num_month]; return $name_month; } echo getMonthRus(); echo date('Y'); года в echo date('H:i'); .Это если Вы решите позвонить прямо сейчас :) Если необходимо проверить список файлов, которые ожидают исполнения, необходимо ввести следующую команду: ls --full-time /var/spool/asterisk/outgoing/ Таким образом, можно генерировать файлы для совершения автодозвона в целях тестирования, в любое необходимое время – к примеру, можно проверять работоспособность АТС в критичные моменты.
img
При изучении принципов написания программного кода вы, вероятно, встречались с термином AJAX и задавались вопросом, что же он значит. Что это – язык программирования, платформа или приложение? На самом деле ничего из перечисленного, но к концу прочтения этой статьи вы будете знать, что же такое AJAX (Asynchronous Javascript and XML - асинхронные сценарии JavaScript и XML). История AJAX До конца 1990-х годов большинство веб-сайтов могли выдавать в качестве результата только полные веб-страницы при посещении страницы на сайте. Иначе говоря, для того, чтобы перезагрузить какие-либо отдельные данные, вам необходимо было перезагрузить всю страницу. Это был не самый эффективный способ предоставления информации пользователям, и, соответственно, не очень хорошо сказывалось на впечатлениях пользователей от взаимодействия с сайтом. Также это увеличивало нагрузку на серверы и пропускную способность, необходимую для обслуживания данных. В 1996 году Microsoft представила тег iframe для Internet Explorer, который позволял браузеру асинхронно извлекать данные в фоновом режиме. Это был шаг в верном направлении на пути к современным веб-приложения. В 2004 году Google добавила в Gmail функцию, позволяющую получать данные в фоновом режиме, а в 2005 году они сделали то же самое и для Google Maps. Технологии Google и Microsoft позволяли разработчикам получать данные с веб-сервера с помощью JavaScript без необходимости перезагружать страницу. В 2005 году Джесси Джеймсон Гарретт в своей статье (о том, как Google добились такого результата) назвал эту технологию AJAX. Эта технология быстро стала одним из самых популярных способов создания веб-приложений. А теперь, когда вы узнали немного из истории AJAX, давайте посмотрим, как это работает. Как работает AJAX? Что делает работу AJAX возможной, так это встроенный в веб-браузер объект XMLHttpRequests (XHR). Этот объект поддерживают все современные браузеры, включая: Chrome Firefox IE7+ Safari Opera Большинство библиотек JavaScript, которые используют AJAX, помещают этот объект в пользовательский код для того, чтобы упростить его использование разработчиками, но мы рассмотрим, как AJAX работает в обычном JavaScript. Первый шаг – создать переменную, которая будет создавать для вас экземпляр объекта XMLHttpReaquests в JavaScript. Ниже приведен пример: const request = new XMLHttpRequest(); Поскольку мы хотим использовать эти данные в дальнейшем, например, хотим распечатать их на веб-странице, то мы добавим к этому запросу получатель запроса, который сообщит нам, когда наш запрос закончит обрабатываться и получит нужные данные. Как можно понять из самого термина, запросы AJAX выполняются асинхронно. Это значит, что код JavaScript продолжает работать после отправки запроса и не ждет ответа. Прикрепив получатель запросов, мы можем перехватить ответ, когда он будет готов. Сделаем мы это вот так: function requestListener() { console.log(this.responseText); } request.addEventListener("load", requestListener); Выше у нас есть функция, которая выводит ответ на консоль JavaScript, которую мы можем получить из атрибута responseText объекта XMLHttpRequests. Затем мы присоединяем эту функцию к событию load нашего запроса. Следующий шаг – используем этот объект для отправки запроса к серверу с помощью метода open объекта XMLHttpRequests. Метод open принимает два параметра. Первый параметр – это используемый метод запроса. Ниже приведены несколько наиболее распространенных методов: GET: этот метод используется для извлечения данных и является наиболее распространенным. POST: этот метод отправляет данные запрошенному ресурсу и чаще всего используется для создания новых записей или для входа в систему. PUT: этот метод заменяет текущие представления данных измененными, которые были отправлены в запросе. PATCH: этот метод обычно используется для обновления части данных в запрошенном ресурсе. DELETE: этот метод используется для удаления определенного ресурса. Второй параметр, который передается методу open, - это запрашиваемый ресурс. Мы будем использовать страницу с веб-сайта example.org и использовать запрос GET для простого получения данных. Вот так это будет выглядеть: request.open("GET", "http://www.example.org/example.txt"); Последний шаг – фактическая отправка запроса на удаленный ресурс с помощью метода send объекта XMLHttpRequests. Ниже приведен пример: request.send(); Если мы используем метод POST, PUT или какой-либо другой метод, который обновляет ресурс, то этот метод мы вызываем с параметром, содержащем данные, которые мы отправляем: request.send(OUR_DATA_VARIABLE) В нашем случае мы только извлекаем данные, поэтому, как только мы выполним этот код, на консоли нашего веб-браузера выведется содержимое http://example.org/example.txt. Данный пример помогает объяснить то, как работает AJAX, но на самом деле технология AJAX имеет куда более продвинутые функциональные возможности. Для чего нужен AJAX? Что вы должны были вынести из приведенного выше примера, так это то, что все функции кода загружаются на одной странице. Действительно, сначала загрузится веб-страница с нашим кодом JavaScript, затем он выполнится, и после он распечатает результаты запроса. С таким же успехом можно было прикрепить приведенный выше код к функции, которая выполняется при нажатии кнопки. Это бы означало, что каждый раз при нажатии кнопки, будет выполняться код, отправляться запрос, и результаты будут выводиться на консоль без загрузки новой страницы. И эта магическая технология изменила подход к веб-разработке. С появлением AJAX большая часть веб-разработки переместилась на внешний интерфейс приложения – часть, которая работает в браузере. Вы наблюдаете то, как работает AJAX ежедневно и даже не подозреваете об этом. Когда вы заходите на современный веб-сайт, перед вами появляется форма. Вы вводите свои учетные данные и нажимаете кнопку «Войти». Индикатор загрузки может вращаться в течение нескольких минут, но если вы обратите внимание, то заметите, что страница на самом деле никогда не перезагружается. Все, что вы сделали, это просто отправили свое имя пользователя и пароль на сервер с помощью AJAX. Индикатор загрузки нужен только для отвода глаз, пока запрос выполняется, независимо от того, ввели ли вы верные учетные данные или нет. Если ваши учетные данные верны, то ваша домашняя страница загружается, скорее всего, из другого запроса AJAX. Большинство запросов AJAX в JavaScript не загружают целые веб-страницы, как в нашем примере. Данные отправляются и извлекаются в формате JSON, для представления данных используется текстовый формат, а для форматирования этих данных в формате HTML и их печати на странице используется дополнительный код JavaScript. Например, данные, которые отправляются для входа на веб-сайт, в формате JSON будут выглядеть так: { username: "MyUserName", password: "MyPassword" } Как только учетные данные будут проверены, файл JSON, содержащий минимальный объем данных для отображения панели инструментов, будет отправлен обратно в браузер. AJAX в сочетании с JSON не только наделяет современные веб-страницы способностью быстро реагировать на действия пользователей, но и экономит пропускную способность, отправляя только необходимые данные для создания веб-страницы.
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