По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Продолжаем рассказывать про Terraform. Предыдущая статья тут. В данной статье мы разберем динамичные блоки кода в Terraform, которые можно использовать в своей работе. Данный функционал значительно облегчает написание кода Terraform с помощью которого мы управляем сервисами Amazon. В статье будет описан сценарий с генерацией кода Terraform. Данный функционал был добавлен в terraform 0.12 версии. Для работы создадим новую директорию, можно путем копирования из предыдущего урока. Директорию назовем lesson-5. Для написания кода мы по-прежнему используем текстовый редактор Atom. Мы можем создать файлик с именем DynamicSecurityGroup.tf или переименуем существующий webserver.tf если вы добавили папку путем копирования. Если вы создавали путем копирования отредактируем файл, убрав строчки, которые создают веб-сервер. Удаляем. Теперь мы начнем писать код Terraform, чтобы у нас появилась динамическая группа безопасности. В прошлой статье мы прописывали 2 правила. Данные правила открывали нам порты 80 и 22, аналогично можно прописать, чтобы открывался порт 443 ну или любой другой, который нам необходим для корректного инстанса и работоспособности сервиса. А теперь представим, что нам необходимо открыть еще 20 разных портов. Можно сделать это с помощью copy-paste, т.е. копированием и вставкой уже существующих блоков кода с редактированием протокола и номеров портов. В terraform версии 0.12 добавили функционал и назвали его DynamicBlocks, что позволит генерировать кусочки кода в Terraform. Добавим следующую часть кода: dynamic "ingress" { for_each = ["80", "443", "8080", "1541", "9092"] content { from_port = ingress.value to_port = ingress.value protocol = "tcp" cidr_blocks = ["0.0.0.0/0"] } } Разберем для лучшего понимания. Функция Dynamic, далее кавычки двойные и внутри мы пишем, что-будет динамическим, в нашем случае это функция Ingress. Открываем фигурные скобки и пишем цикл с помощью for_each = ["номерпорта1", "номерпорта2"] указывая номера портов. Следовательно, цикл for_each пройдется по каждому из параметров и будет применена конструкция content. Значения внутри конструкции content, будут заменены, а именно с какого порта на какой порт открывается доступ. Далее в конструкции content описываем используемый протокол сетевого уровня и cider_blocks – с каких IP или диапазонов IP разрешено использовать данной правило. Конструкция 0.0.0.0/0 позволяет указать, что данное правило с данным портом разрешено использовать всему интернету вне зависимости от IP адреса. В целях информационной безопасности рекомендую использовать конкретные подсети или конкретные IP адреса, конечно, если это не публичный сервис. Если посмотреть на пример, то написанное таким образом правило, сгенерирует нам 5 отдельных правил, т.е. получается достаточно удобно и сокращает нам количество строчек в коде, а также потенциально количество ошибок. Код становится более читаемым и легким. После использования в коде функции dynamic, мы можем удалить все ставшие ненужными функции ingress. Не забывайте изменить имя ресурса. Это делается путем редактирования переменной name в разделе функции resource, для читаемости кода и удобства управления ресурсами в облаке AWS. После того, как у нас готов наш код, мы можем его запустить. Так как, была создана новая папка, нам необходимо инициализировать ее использования. Переходим в необходимую директорию, в которой находится файл. И запускаем инициализацию стандартной командой terraform init. После ввода команды ожидаем пару минут, пока Terraform скачает все необходимые модули для подключения и работы. Следующей командой terraform apply мы запускаем код на исполнение. И получаем запрос на подтверждение операции. Среди вывода мы можем видеть: Это значит что все порты, которые были указаны в аргументах будут созданы. Осталось подтвердить и дождаться успешного выполнения операции.
img
Спешим поделиться тем, как с помощью IP-АТС Asterisk можно провести двусторонний видео - звонок. В качестве терминалов, которые будут участвовать в данном соединении, мы выбрали программный open - sourсe клиент IP-телефонии на базе протокола SIP - Linphone (Linux Phone) версии 3.10.2 для Windows и приложение Linphone для Android версии 3.1.1. Настройки произведем с помощью графического интерфейса FreePBX 13. Конфигурация FreePBX Приступим к настройке. Для начала необходимо создать на сервере два внутренних номера (Extension). Важно: обязательно создавайте номера с типом CHAN_SIP. Теперь новым внутренним номерам нужно включить поддержку видео. Для этого переходим во вкладку Advanced: И напротив строки Video Support выбираем Yes. Такую процедуру проделываем для всех номеров, которым хотим разрешить пользоваться видео - вызовами. Теперь необходимо включить глобальную поддержку видео. Для этого переходим по следующему пути: Settings -> Asterisk SIP Settings и открываем вкладку Chan SIP Settings: По умолчанию, в разделе Video Codecs поддержка видео отключена. Для того, чтобы её выключить, нажимаем Enabled: Откроется список поддерживаемых видео кодеков. По умолчанию, Asterisk поддерживает следующие кодеки: H.261, mpeg4, H.263, H.263+, H.264 и последний кодек, который мы будем использовать далее - VP8. Чтобы исключить возможные проблемы с подключением SIP-терминалов в дальнейшем, можно изменить ещё один параметр. Дело в том, что практически все SIP-терминалы используют 5060 порт для отправки запросов регистрации, а в FreePBX 13 для технологии CHAN_SIP используется порт 5160, соответственно, на этапе регистрации Endpoint’а могут возникнуть проблемы. Что бы этого избежать, в строке Bind Port поставим 5060. Не забудьте предварительно поменять порт для CHAN_PJSIP, может возникнуть внутренний конфликт. На этом настройка FreePBX завершена, теперь необходимо настраивать терминалы. Настройка видео - терминалов Как было сказано в начале, для теста будем использовать Linphone (Linux Phone) версии 3.10.2. После установки дистрибутива, нас встречает помощник настройки учётной записи SIP: Вводим данные для ранее созданного внутреннего номера, например - 1022, и жмём Применить. Если всё было сделано верно, то мы увидим наш полный идентификатор и зелёный круг, свидетельствующий о том, что регистрация была успешной. Далее переходим в настройки, выбираем требуемые параметры видео (разрешение и частоту кадров) В разделе кодеки, следует обязательно убедиться в том, что кодек VP8 – разрешен к использованию. На этом настройка десктопного клиента для Windows закончена. Теперь сконфигурируем Linphone Android клиент. После установки приложения, нужно выбрать USE SIP ACCOUNT Ввести данные учетной записи в соответствии с данными, которые мы вводили на сервере. В качестве транспорт укажите UDP. В разделе Settings устанавливаем требуемые параметры по видео (разрешение, частоту кадров, максимальную пропускную способность) и обязательно разрешаем использование кодека VP8. Если всё было сделано правильно, то мы увидим статус Registered. Софтфон готов к использованию. Теперь можно проводить вызовы с трансляцией видео. Набираем номер нужного абонента и жмём на значок трубки. Нажав на значок Видео начнётся двусторонняя видеотрансляция. Ниже пример как это выглядит на десктопной версии: И пример того, как это выглядит в мобильном приложении:
img
Расскажем о том, как настроить активную запись разговоров на Cisco UCM (CUCM). Если быть кратким, активная запись это гораздо более удобный, гибкий, масштабируемый и производительный способ выполнить запись разговоров на аппаратах Cisco (с поддержкой BiB). Вы спросите гораздо более удобный по сравнению с чем? С пассивным - ответим мы. Пассивный метод записи осуществляется с помощью зеркалирования трафика, с помощью SPAN/RSPAN/ERSPAN. Работает это примерно так: сервер записи забирает метаданные звонка через специальный API (JTAPI в CUCM, это часть CTI), а RTP поток уходит напрямую с телефона через BiB (Built-in Bridge). Активную запись поддерживают такие вендоры как Nice, ZOOM, Verint, ЦРТ и другие. Приступаем к настройке. Почитать подробнее о том, как работает система записи телефонных переговоров можно по ссылке. Настройка Application User на CUCM Логинимся на интерфейс IP PBX. Далее, выбираем User Management → Application User. Нажимаем Add New. Появляется дисплей: Вводим User ID; Вводим пароль пользователя в поле "Password". Введем тот же пароль в поле "Confirm Password"; Выбираем доступные устройства и добавляем в поле Controlled Devices. Так же, нажимаем Add to User Group, чтобы добавить пользователю роли. Данный пользователь должен иметь возможность контролировать пользователей, ТА которых подлежат записи. Назначим следующие роли: Standard CTI Allow Park Monitoring. Standard CTI Allow Call Recording Standard CTI Allow Control of Phones supporting Connected Xfer and conf Standard CTI Allow Control of Phones supporting Rollover Mode Standard CTI Enabled. Нажать Add Selected: Нажать Save (сохранить).На этом, конфигурация пользователя завершена. Перейдем к настройке SIP транка. Настройка SIP транка на CUCM В деталях про настройку SIP транка на CUCM можно читать по ссылке. В появившемся окне нажать Add New. Выбираем Trunk Type = SIP trunk, Device Protocol = SIP Даем имя транку в поле Device Name, пишем описание в поле Description, выбираем Device Pool (набор общих параметров), SIP Trunk Security Profile выбираем Non Secure SIP Trunk Profile, SIP Profile выбираем Standard SIP Profile. Далее, необходимо настроить Route Pattern (маршрут в транк) Настройка Route pattern на CUCM Выбираем незанятый в диалплане номер. Например 1111. В поле Gateway/Route List выбираем сконфигурированный нами транк. Recording Profile Перейдите в Select Device → Device Setting → Recording Profile. Нажмите Add New: Дайте имя профилю; Задайте номер, как в настройке Route Pattern. 1111 в нашем примере; Осталось только настроить запись на линии телефона (включив BiB), назначить Recording Profile на телефон, включить опцию Allow Control of Device from CTI и в опции Recording Option выставьте Automatic Call Recording Enabled.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59