По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Для управлениями сертификатами SSL в графическом интерфейсе FreePBX 13 создан специальный модуль - Certificate Management. Но, перед тем как перейти к его настройке, давайте вспомним, для чего же нужен сертификат и что же такое SSL в Asterisk? SSL и FreePBX Сертификат SSL позволяет вашему FreePBX иметь уникальную цифровую подпись, с помощью которой, каждый раз при обращении к интерфейсу будет создаваться защищенное соединение между web – сервером и клиентским устройством. SSL сертификат включает в себя информацию о его владельце и открытый ключ. Выдачей SSL сертификатов занимается специальный центр сертификации (Certification authority), честность которого априори неоспорима. Помимо этого, сертификат позволяет совершать звонки по защищенному транспортному протоколу TLS и шифровать голосовые потоки через SRTP. Генерация CSR Приступаем к получению сертификата. Центр сертификации попросит вас предоставить сгенерированный CSR файл (Certificate Signing Request). Это является обязательной частью подачи заявления на сертификат, и содержит в себе различные данные об организации, такие как наименование, полное имя домена, код страны и прочие. Перейдем во вкладку Admin -> Certificate Management. В открывшемся окне модуля нажимаем + Generate CSR. Откроется окно генерации CSR файла: Разберемся поподробнее с каждым из пунктов: Name - имя для сгенерированного CSR файла. Когда файл будет сгенерирован, он будет иметь название, как указано в этом поле Common Name (Host Name) (CN) - полное имя домена Organization Name (O) - полное наименование организации, как указано в учредительных документах Organization Unit (OU) - наименование подразделения (отдела), на который выписывается данный сертификат Country (C) - код страны из двух букв. В нашем случае RU. State/Province (ST) - наименование области или края, в котором вы находитесь. В нашем случае мы оставили это поле пустым City or Locality (L) - укажите город. Мы указали Moscow По окончанию настроек нажмите Generate CSR. После того, как CSR файл будет сгенерирован, он станет доступен для скачивания в главном интерфейсе модуля. Для его загрузки, нажмите на кнопку Download CSR. Сам файл представляет из себя ключ, заключенный в теги начала и окончания: -----BEGIN CERTIFICATE REQUEST----- MIIC0zCCAbsCAQAwgY0xFDASBgNVBAMTC21lcmlvbmV0LnJ1MRgwFgYDVQQKEw9N ZXJpb24gTmV0d29ya3MxCzAJBgNVBAsTAklUMQswCQYDVQQGEwJSVTEMMAoGA1UE CBMDUUxEMQ8wDQYDVQQHEwZNb3Njb3cxIjAgBgkqhkiG9w0BCQEWE2ludmFsaWRA ZXhhbXBsZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDKvJYr== -----END CERTIFICATE REQUEST----- После этого, вам необходимо написать заявление в центр сертификации и приложить к нему этот файл, после чего вы сможете получить свой SSL сертификат. Загрузка сертификата После того, как мы получили сертификат от сертификационного центра (CA), его необходимо загрузить на сервер. Нажимаем на кнопку New Certificate и выбираем Upload Certificate Name - имя для сертификата Description - описание сертификата. Используется только внутри модуля и не влияет на импорт сертификата. Passphrase - кодовая фраза, то есть пароль. Необходима для доступа к сертификату и генерации сертификатов на стороне клиента. Если вы не укажете пароль в данном поле, то вам придется указывать его каждый раз, когда потребуется новый сертификат. К тому же, отсутствие пароля приводит к незащищенности приватного ключа сертификата. CSR Reference - в данном поле выберите сгенерированный CSR файл на предыдущем этапе. Поле Certificate - откройте файл сертификата, который вам предоставил сертификационный центр и полностью копируйте его в это поле, начиная от тэга «-----BEGIN CERTIFICATE-----» до «-----END CERTIFICATE-----» Поле Trusted Chain - порой, центр сертификации (CA), помимо самого сертификата может предоставить вам целый набор файлов. Они называется Trusted Chain, то есть цепочки доверия. Последовательно откройте каждый из файлов и скопируйте их содержимое в это поле. По окончанию настроек нажмите Generate Certificate. По окончанию настроек вы сможете увидеть ваш сертификат в общем списке. В процессе эксплуатации он доступен для редактирования: Бесплатный сертификат Let’s Encrypt Интерфейс FreePBX 13 имеет встроенную возможность настройки бесплатного SSL сертификата с помощью сертификационного центра Let’s Encrypt. Чтобы воспользоваться бесплатным сертификатом, у вашего сервера должно быть настроено доменное имя, и его оно должно резолвиться по его IP – адресу. Помимо этого, следующие хосты должны быть добавлены в разрешенные в настройках фаервола: outbound1.letsencrypt.org outbound2.letsencrypt.org mirror1.freepbx.org mirror2.freepbx.org
img
Под телефонными (VoIP) кодеками понимаются различные математические модели используемые для цифрового кодирования и компрессирования (сжатия) аудио информации. Многие из современных кодеков используют особенности восприятия человеческим мозгом неполной информации: алгоритмы голосового сжатия пользуются этими особенностями, вследствие чего не полностью услышанная информация полностью интерпретируется головным мозгом. Основным смыслом таких кодеков является сохранение баланса между эффективностью передачи данных и их качеством. Изначально, термин кодек происходил от сочетания слов КОДирование/ДЕКодирование, то есть устройств, которые преобразовывали аналог в цифровую форму. В современном мире телекоммуникаций, слово кодек скорее берет начало от сочетания КОмпрессия/ДЕКомпрессия. Перед тем как начать подробный рассказ про различные кодеки, мы составили таблицу со краткой сравнительной характеристикой современных кодеков: Кодек Скорость передачи, Кб/сек. Лицензирование G.711 64 Кб/сек. Нет G.726 16, 24, 32 или 40 Кб/ сек. Нет G.729А 8 Кб/ сек. Да GSM 13 Кб/ сек. Нет iLBC 13.3 Кб/ сек. (30 мс фрейма); 15.2 Кб/ сек. (20 мс фрейма) Нет Speex Диапазон от 2.15 до 22.4 Кб/ сек. Нет G.722 64 Кб/сек. Нет G.711 Кодек G.711 это самый базовый кодек ТфОП (PSTN). В рамках данного кодека используется импульсно-кодовая модуляция PCM. Всего в мире используется 2 метода компандирования (усиления сигнала) G.711: µ – закон в Северной Америке и A – закон в остальной части мира. Данный кодек передает 8 – битное слово 8 000 раз в секунду. Если умножить 8 на 8 000, то получим 64 000 бит – то есть 64 Кб/с, скорость потока, создаваемого G.711. Многие люди скажут, что G.711 это кодек, в котором отсутствует компрессирование (сжатие), но это не совсем так: сам по себе процесс компандирования является одной из форм компрессирования. Все мировые кодеки «выросли» на базе G.711. Важная особенность G.711 в том, что он минимально загружает процессор машины, на которой он запущен. G.726 Этот кодек использовался некоторое время, став заменой для G.721, который на тот момент устарел, и является одним из первых кодеков с алгоритмом компрессии. Он так же известен как кодек с адаптивной импульсно-кодовой модуляции (Adaptive Differential Pulse-Code Modulation, ADPCM) и может использовать несколько скоростей потока передачи. Наиболее распространенные скорости передачи это 16, 24 и 32 Кб/сек. Кодек G.726 почти идентичен G.711 – единственным отличием является то, что он использует половину полосы пропускания. Это достигается путем того, что вместо отправки полного результата квантования, он отправляет только разницу между двумя последними измерениями. В 1990 году от кодека практически отказались, так как он не мог работать с факсимильными сигналами и модемами. Но в наше время, из – за своей экономии полосы пропускания и ресурсов центрального процессора у него есть все шансы вновь стать популярные кодеком в современных сетях. G.729A Учитывая то, какую малую полосу пропускания использует G.729A, всего 8 Кб/сек., он обеспечивает превосходное качество связи. Это достигается за счет использования сопряженной структуры с управляемым алгебраическим кодом и линейным предсказанием (Conjugate-Structure Algebraic-Code-Excited Linear Prediction, CS-ACELP). По причине патента, использование данного кодека является коммерческим; однако это не мешает кодеку G.729A быть популярным в различных корпоративных сетях и телефонных системах. Для достижения такой высокой степени сжатия, G.729A активно задействует мощности процессора (CPU). GSM Кодек для глобального стандарта цифровой мобильной сотовой связи (Global System for Mobile Communications, GSM) не обременен лицензированием, как его аналог G.729A, но предлагает высокое качество и умеренную нагрузку на процессор при использовании 13 Кб/сек. полосы пропускания. Эксперты считают, что качество GSM несколько ниже чем G.729A. iLBC Кодек iLBC (Internet Low Bitrate Codec) сочетает в себе низкое использование полосы пропускания и высокого качества. Данный кодек идеально подходит для поддержания высокого качества связи в сетях с потерями пакетов. iLBC не так популярен как кодеки стандартов ITU и поэтому, может быть не совместим с популярными IP – телефонами и IP – АТС. Инженерный совет Интернета (IETF) выпустил RFC 3951 и 3952 в поддержку кодека iLBC. Internet Low Bitrate кодек использует сложные алгоритмы для достижения высокого показателя сжатия, поэтому, весьма ощутимо загружает процессор. В настоящий момент iLBC используется бесплатно, но владелец этого кодека, Global IP Sound (GIPS), обязует уведомлять пользователей о намерении коммерческого использования этого кодека. Кодек iLBC работает на скорости в 13.3 Кб/сек. с фреймами в 30 мс, и на скорости 15.2 кб/сек. с фреймами в 20 мс. Speex Кодек Speex относится к семейству кодеков переменной скорости (variable-bitrate, VBR), что означает возможность кодека динамически менять скорость передачи битов в зависимости от статуса производительности сети передачи. Этот кодек предлагается в широкополосных и узкополосных модификациях, в зависимости от требования к качеству. Speex полностью бесплатный и распространяется под программной лицензией университета Беркли (Berkeley Software Distribution license, BSD). Кодек работает на диапазонах от 2.15 до 22.4 Кб/сек. в рамках переменного битрейта. G.722 G.722 является стандартом ITU-T (International Telecommunication Union - Telecommunication sector) и впервые опубликован в 1988 году. Кодек G.722 позволяет обеспечить качество, не ниже G.711 что делает его привлекательным для современных VoIP разработчиков. В настоящий момент патент на G.722 не действителен, и этот кодек является полностью бесплатным.
img
Обмен сообщениями Publish/Subscribe, также известный как Pub/Sub, - это асинхронный метод связи между службами, который используется в бессерверных архитектурах и архитектурах микрослужб. В целом, модель Pub/Sub включает в себя: Издателя (publisher), который отправляет сообщение Подписчика (subscriber), который получает сообщение через брокера сообщений   В общих чертах, что такое обмен сообщениями Pub/Sub С учетом того, что популярность несвязных приложений и приложений на основе микрослужб только растет, критически важное значение для общей функциональности приложения имеет надлежащая коммуникация между компонентами и службами. Обмен сообщениями Pub/Sub помогает здесь в двух аспектах:  предоставляет разработчикам возможность легко и просто создавать несвязные приложения, используя надежный метод; предоставляет пользователям возможность легко и просто создавать событийно-управляемые архитектуры. Модель Pub/Sub позволяет асинхронно передавать сообщения в несколько разделов приложений.  Основной компонент, который обеспечивает всю эту функциональность, называется Тема (Topic). Издатель отправляет сообщение в тему, а тема сразу же отправляет это сообщение всем подписчикам. Именно этот подход отличает модель Pub/Sub от обычных брокеров сообщений, где очередь сообщений группируется до тех пор, пока пользователь или служба не запросит и не извлечет их.  Что бы ни представляло из себя сообщение в модели Pub/Sub, оно в любом случае будет отправлено всем подписчикам. Единственное исключение – это политики для подписчиков, которые создаются пользователями и которые фильтруют сообщения. Такой поход позволяет создавать событийно-управляемые сервисы, которые не будут требовать от подписчиков запрашивать сообщения из очереди. Также модель Pub/Sub позволяет разработчикам создавать различные отдельные функции, которые используют одно и то же сообщение (одни и те же данные) и которые могут выполняться параллельно, что дает возможность обслуживать сразу несколько подписчиков.   Шаблон Pub/Sub обособляет издателей от подписчиков для того, чтобы издатели не знали, где используется сообщение, а подписчики не знали ничего об издателе. Это способствует улучшению общей безопасности приложения.  Преимущества шаблона Pub/Sub Распределенное приложение на основе микрослужб, которое к тому же было разработано с помощью шаблона Pub/Sub, приносит выгоду всей организации, от разработчиков программного обеспечения до инженеров, которые отвечают за контроль качества.  Ниже приведен список преимуществ шаблона Pub/Sub: Несвязные/слабосвязные компоненты Модель Pub/Sub позволяет легко разделить коммуникацию и логику приложения, это в свою очередь позволяет создать изолированные компоненты. Это обеспечивает: создание модульных, более надежных и безопасных программных компонентов или модулей; улучшение качества кода и удобство сопровождения. Улучшенная наглядность в масштабе системы Простота шаблона Pub/Sub позволяет пользователям легко понимать принцип работы приложения.  С помощью этого шаблона также можно создавать несвязные компоненты, которые позволяют наблюдать за информационным потоком. Мы можем точно знать, откуда идет информация и куда, без явного определения источников или адресатов в исходном коде.  Коммуникации в режиме реального времени Pub/Sub мгновенно доставляет сообщения подписчикам с помощью push-доставки. Это делает данный подход идеальным для коммуникации в режиме, близком к режиму реального времени. Такой подход избавляет от необходимости отправки запроса для проверки наличия сообщений в очередях, в следствие чего снижается задержка доставки сообщений в приложении.  Простота разработки Так как Pub/Sub не зависит от языка программирования, протокола или какой-то конкретной технологии, то в этот шаблон может быть интегрирован абсолютно любой поддерживаемый брокер сообщений с помощью любого языка программирования. Ко всему прочему, Pub/Sub может быть использован в качестве моста для обеспечения коммуникации между компонентами, которые были реализованы с помощью различных языков программирования, путем управления межкомпонентной связью. Это приводит к тому, что такое приложение будет просто интегрировать с внешними системами и не нужно будет создавать дополнительные функции для упрощения процесса коммуникации или беспокоиться о последствиях нарушения безопасности. Мы можем просто опубликовать сообщение в теме и позволить внешнему приложению подписаться на эту тему, тем самым пропадает необходимость прямого взаимодействия с основным приложением.  Повышенная масштабируемость и надежность Этот шаблон обмена сообщениями считается эластичным – не нужно заранее определять количество издателей или подписчиков. Их можно просто по необходимости добавить в нужную тему. Тот факт, что коммуникация и логика приложения разделены, упрощает процесс устранения неисправностей, так как разработчики могут сосредоточиться на каком-то конкретном компоненте и не беспокоиться о том, что это может как-то повлиять на остальную часть приложения.  Шаблон Pub/Sub также улучшает масштабируемость приложения, так как позволяет менять архитектуру брокеров сообщений, фильтры и пользователей и не затрагивать при этом базовые компоненты. В модели Pub/Sub новая реализация обмена сообщениями в случае, если форматы сообщений совместимы даже со сложными изменениями в архитектуре, – это просто вопрос изменение темы.  Улучшенная способность к тестированию В связи с тем, что приложение является модульным, тесты могут быть направлены на каждый модуль в отдельности, обеспечивая тем самым более оптимизированный процесс тестирования. Сосредоточенность на каждом отдельном компоненте приложения значительно снижает сложность тестовых сценариев.  Также шаблон Pub/Sub позволяет легко определить источник и адресат данных и информационный поток. Это особенно полезно, когда вы тестируете вопросы, связанные с: повреждением данных; форматированием; безопасностью. Недостатки шаблона Pub/Sub Pub/Sub – это надежная служба обмена сообщениями, но она не всегда соответствует всем требованиям. Давайте кратко рассмотрим некоторые недостатки этого шаблона. Излишняя сложность в небольших системах Pub/Sub требует правильной настройки и сопровождения. Если масштабируемость и несвязность компонентов не являются жизненно важными аспектами для вашего приложения, то внедрение такого шаблона, как Pub/Sub, будет пустой тратой ресурсов и добавит небольшой системе излишнюю сложность.  Потоковая передача мультимедиа Pub/Sub не подходит для работы с медиафайлами, такими как аудио или видео, так как они требуют плавной синхронной потоковой передачи между хостом и получателем. Так как этот шаблон не поддерживает синхронную сквозную передачу данных, то обмен сообщениями Pub/Sub не стоит рассматривать для: видео-конференций; голосовой связи по IP-протоколу; обычных приложений для потоковой передачи мультимедиа. Обмен сообщениями Pub/Sub: варианты использования Итак, когда же лучше всего использовать шаблон Pub/Sub? Шаблон Pub/Sub можно использовать в самых различных областях для того, чтобы облегчить обмен данными в режиме реального времени и при распределенных коммуникациях. Например, ключевая сфера, которой такой шаблон только на руку, - это автоматизация.  В следующих разделах вы найдете описание самых распространенных вариантов использования шаблона Pub/Sub.  Интернет вещей  В эпоху интеллектуальных устройств нам требуется надежный и эффективный способ сбора и распространения информации. Узел управления или сервер может публиковать обновления, которые будут автоматически доставляться на все подписанные устройства Интернета вещей.  Пользовательские устройства Интернета вещей также могут выступать в роли издателей и публиковать уведомления, информацию от датчиков и т.д. в облаке, которые затем будут переданы пользователю. Контроль системы и уведомления о событиях Pub/Sub позволяет пользователям создавать темы для сбора сведений о системе и отправки их в интерфейсы визуализации и уведомлений.  Такой подход будет крайне полезен при работе с крупномасштабными внедрениями: Сообщения можно группировать по категориям. Все серверы и службы могут публиковать данные в этих общих темах; при этом не нужно создавать отдельные конвейеры уведомлений.  Можно выйти за пределы этой функциональной возможности, подписавшись на функции сопровождения или управления темой. Например, если сервер сообщает об ошибке, то он запускает функцию, которая автоматически заменит этот сервер.  Резервное копирование и репликация базы данных Крайне важно делать резервные копии баз данных, которые распределены по разным технологиям и поставщикам. Можно настроить периодическое резервное копирование или снимки состояний с помощью планировщика задач.  А теперь давайте представим, что нам необходимо переместить эти резервные копии в другие области или облачное хранилище. В таком случае нам нужно воспользоваться шаблоном обмена сообщениями Pub/Sub, чтобы создать конвейер, который будет отправлять сообщение о завершении резервного копирования. Затем подписанная функция будет использовать это сообщение в качестве триггера, чтобы запустить процесс переноса или копирования.  Управление журналами Шаблон Pub/Sub может выступать в роли посредник для агрегации и распространения журналов. Журналы можно собирать из нескольких мест и отправлять в подписанные службы, такие как масштабируемый поиск, или хранить их в разных местах.  Журналы можно фильтровать по вопросам, журналам аудита, уведомлениям, фоновым задачами и т.д. и направлять их подписчикам. Таким образом, можно обеспечить надлежащее управление журналами.  Службы обмена сообщениями Pub/Sub Существует большое количество различных служб обмена сообщениями по шаблону Pub/Sub, от специализированных брокеров сообщений до облачных решений. Далее представлен список некоторых популярных служб Pub/Sub. Apache Kafka. Kafka разработан Apache и имеет надежные функции обмена сообщениями Pub/Sub с помощью журналов регистрации сообщений.  Faye. Это простая служба Pub/Sub, которая предназначена для обеспечения работы веб-приложений с помощью серверов, разработанных для NodeJS и Ruby. Redis. Это один из самых популярных брокеров сообщений, который поддерживает как традиционную очередь сообщений, так и реализацию шаблона Pub/Sub. Amazon SNS. Amazon Simple Notification Service – это полностью управляемая служба, которая использует реализацию обмена сообщениями Pub/Sub. Google Pub/Sub. GPS подходит для реализации службы обмена сообщениями Pub/Sub. Azure Service Bus. Надежная служба обмена сообщениями (MaaS) с возможностью использования шаблона Pub/Sub.  Простой пример: обмен сообщениями Pub/Sub Теперь, когда мы разобрались в концепции Pub/Sub, давайте рассмотрим простой пример, который иллюстрирует рабочий процесс, с помощью Google Pub/Sub. Он опубликует сообщение в теме и вызовет подписанную функцию Google для того, чтобы напечатать отправленное сообщение.  Шаг 1. Создание темы Первый шаг – создать тему в Google Pub/Sub для того, чтобы у нас была возможность публиковать сообщения в этой теме.  Шаг 2. Настройка триггера Необходимо перейти в созданную тему (Test_Topic) и нажать «Trigger Google Function». Таким образом вы сможете создать функцию Google, где в качестве триггера будет выступать созданная тема.  Шаг 3. Создание функции Google (print_message_pubsub_test) На первом экране вы можете дать функции название и настроить тему в качестве триггера. Для создания функции, которая будет просто собирать передаваемые данные и отправлять их на сайт Webhook, мы будем использовать Python. Помимо этого, для создания запроса POST для отправки данных мы будем использовать библиотеку запросов.  Фрагмент кода облачной функции: import base64 import requests def get_quote(event, context): # Decode the Message Data message = base64.b64decode(event['data']).decode('utf-8') # Create Request url = "https://webhook.site/xxxxxxx-xxxx-xxxx-xxxx-739c28ebd7ad" request_headers = {"Content-type": "application/json"} request_data = {"quote": message} response = requests.post(url, data=request_data, headers=request_headers) # Print Response print(response.status_code) print(response.text) После того, как функция будет успешно развернута, вы увидите, что в качестве триггера функции будет указана тема Test_Topic. Шаг 4. Настройка издателя На этом шаге нам нужно создать простую программу на Python, которая будет выступать в роли издателя.  Воспользуемся библиотекой Google Cloud pubsub_v1 для того, чтобы создать клиента Publisher и выбрать случайную вдохновляющую цитату с сайта quotable.io. После чего мы опубликуем объединенную строку (автор и цитата) в тему (Test_Topic). message_publish.py from google.oauth2 import service_account from google.cloud import pubsub_v1 import requests # Create Authentication Credentials project_id = "test-applications-xxxxx" topic_id = "Test_Topic" gcp_credentials = service_account.Credentials.from_service_account_file('test-applications-xxxx-xxxxxxxxxx.json') # Create Publisher Client publisher = pubsub_v1.PublisherClient(credentials=gcp_credentials) topic_path = publisher.topic_path(project_id, topic_id) # Get a Random Quote response = requests.get("https://api.quotable.io/random") json_response = response.json() message = f"{json_response['author']} - {json_response['content']}" # Publish the Message data = message.encode("utf-8") future = publisher.publish(topic_path, data) # Print Result print(f"Published messages to {topic_path} - {future.result()}.") Ну вот и все! Мы успешно настроили конвейер обмена сообщениями. Когда вы запустите скрипт «message_publish», данные опубликуются в Test_Topic, запустится облачная функция Google (print_message_pubsub_test), которая отправит данные на сайт Webhook. Здесь мы можем видеть сообщения, которые были опубликованы в теме. В журналах облачной функции Google будет зафиксировано, что функция была запущена. И наконец, ниже мы можем видеть все сообщения, которые получил сайт Webhook.  Выше мы рассмотрели базовую структуру любого рабочего процесса обмена сообщениями по шаблону Pub/Sub. Можно использовать его как обычный шаблон или расширить его для того, чтобы улучшить какие-то функциональные возможности. Простые коммуникации с широкими возможностями Шаблон обмена сообщениями Pub/Sub – это мощный, но при этом простой метод передачи информации. Он выступает в роли краеугольного камня для обеспечения работы распределенных приложений на основе микрослужб в режиме реального времени. Он управляет всем процессом обмена данными между внутренними и внешними компонентами.  Шаблон Pub/Sub можно использовать для создания асинхронных масштабируемых потоков обработки сообщений с минимальными задержками при доставке. Все это возможно благодаря всем тем преимуществам, в которых он превосходит брокеров сообщений. 
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59