По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Сегодня хотелось бы кратко описать команды менеджера пакетов yum - официальная сборка FreePBX основана на CentOS, в котором yum установлен по умолчанию. Он пригодится для установки, удаления, обновления пакетов. Установка пакета К примеру, для установки пакета mc нужно ввести команду yum install mc. После ввода команды, система попросит подтверждение. Чтобы подтверждение было одобрено по умолчанию, нужно добавить ключ -y , к примеру yum –y install mc: [root@localhost asterisk]# yum install mc Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.corbina.net * epel: mirror.datacenter.by * extras: mirror.corbina.net * updates: mirror.corbina.net Resolving Dependencies --> Running transaction check ---> Package mc.x86_64 1:4.8.7-11.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: mc x86_64 1:4.8.7-11.el7 base 1.7 M Transaction Summary ================================================================================ Install 1 Package Total download size: 1.7 M Installed size: 5.6 M Is this ok [y/d/N]: y Downloading packages: mc-4.8.7-11.el7.x86_64.rpm | 1.7 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : 1:mc-4.8.7-11.el7.x86_64 1/1 Verifying : 1:mc-4.8.7-11.el7.x86_64 1/1 Installed: mc.x86_64 1:4.8.7-11.el7 Complete! Удаление пакета Для удаления пакета, соответственно, нужно ввести команду yum remove mc. Точно также можно использовать ключ для подтверждения -y : [root@localhost asterisk]# yum remove mc Loaded plugins: fastestmirror Resolving Dependencies --> Running transaction check ---> Package mc.x86_64 1:4.8.7-11.el7 will be erased --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Removing: mc x86_64 1:4.8.7-11.el7 @base 5.6 M Transaction Summary ================================================================================ Remove 1 Package Installed size: 5.6 M Is this ok [y/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Erasing : 1:mc-4.8.7-11.el7.x86_64 1/1 Verifying : 1:mc-4.8.7-11.el7.x86_64 1/1 Removed: mc.x86_64 1:4.8.7-11.el7 Complete! Обновление пакета Предположим – у вас старая версия mysql и вам необходимо ее обновить – тут используется команда update. Целиком команда будет выглядеть так: yum update mysql . Поиск пакета Если хотите проверить наличие установленного конкретного пакета на сервере и доступные для установки – используйте команду list. Целиком команда будет выглядеть так: yum list mysql. Также можно указать точную версию пакета, если вам требуется более скрупулезный поиск. Вывод информации о пакете Если хотите вывести информацию о пакете – используйте команду info. Целиком команда будет выглядеть так: yum info mc . Вывод информации о всех доступных и установленных пакетах Для этого используется команда list с модификаторами. Для вывода доступных пакетов: yum list | less, а для вывода всех установленных - yum list installed | less Проверка доступных обновлений для пакетов и само обновление Для проверки служит команда check-update, а для обновления - update. Ниже три примера использования команд: yum check-update mysql - проверка обновлений пакета mysql; yum list updates - вывод списка обновлений; yum update mc - обновление Midnight Commander’а; yum –y update - обновление всех установленных пакетов; Групповые пакеты и операции с ними В Линуксе некоторые пакеты собраны в так называемые групповые пакеты – к примеру, DNS Name Server, Editors, Java Development и так далее. С помощью yum можно устанавливать групповые пакеты с помощью команды groupinstall - пример далее yum groupinstall ‘Clustering. Коротко опишу остальные команды для манипуляций с групповыми пакетами: yum grouplist - вывод всех доступных к установке групповых пакетов; yum groupupdate ‘Base’ - обновление конкретного группового пакета, в данном случае – Base; yum groupremove ‘Editors’ - удаление группового пакета; Репозитории в yum Поиск пакетов происходит в так называемых репозиториях, ниже приведу несколько команд для работы с ними – принцип тот же, что и с пакетами (команды list, к примеру). Вывод всех активных репозиториев производится с помощью команды yum repolist, вывод также и неактивных репозиториев – с помощью команды yum repolist all Для установки пакета из конкретного репозитория, неважно, активного или неактивного, используется ключ --enablerepo . Как пример – установка phpmyadmin: yum –enablerepo=epel install phpmyadmin Терминал в yum и история Если Вы собираетесь проводить очень много операций с пакетами, то можно сразу зайти в оболочку yum с помощью команды yum shell и с помощью уже известных вам команд (только уже без первых трёх букв, соответственно), Вы можете устанавливатьудалятьобновлятьwhatever пакеты. Также интересной фичей является возможность посмотреть историю установок в yum – с помощью команды yum history.
img
В сегодняшней статье расскажем про настройку IVR (Interactive Voice Response) стандартными способами Asterisk, без использования графической оболочки FreePBX. Аббревиатура IVR описывает систему, в которой вызывающий абонент, по средствам кнопок на телефоне осуществляет навигацию в голосовом меню и соединяется с нужным отделом, сотрудником и службой. В масштабах крупного "Enterprise", конечно, IVR описывает гораздо более сложные системы, где используются различные технологии интеграции. Но мы рассмотрим простейший вариант. Про настройку IVR через графический интерфейс FreePBX, читайте в нашей статье. Немного теории Перед тем как создать простейший пример IVR, необходимо разобраться во внутренних приложениях, которыми оперирует Asterisk. Приложение Background() проигрывает звуковую запись и в то же время слушает входящие сигналы DTMF (Dual-Tone Multi-Frequency). Система, тем временем, пытается найти совпадения введённых цифр DTMF и внутреннего номера (extension) в текущем контексте дайл-плана, если совпадение есть, то Asterisk отправит вызов на найденный номер. Приложение WaitExten() необходимо, если вы хотите заставить Asterisk подождать какое-то время после того, как он воспроизведет звуковую запись. Параметры, задающиеся в WaitExten() - это количество секунд, которые система будет ждать, прежде чем разрешит абоненту совершить набор внутреннего номера, например – WaitExten(10). Приложение Goto() позволяет переходить с одной позиции в дайл-плане на другую – это может быть контекст (context), внутренний номер (extension) и приоритет (priority). Конфигурация Теперь мы можем создать простейший пример голосового меню, используя вышеупомянутые приложения. Как правило, IVR создаётся в новом контексте, таким образом оставаясь независимым от остальных настроенных extension’ов в дайл-плане. Основная запись, содержащая сценарий голосового меню будет следующей: "Здравствуйте вы позвонили в компанию %companyname%. Для того, чтобы соединиться с отделом поддержки нажмите 1. Для того, чтобы соединиться с отделом продаж нажмите 2. Если Вы знаете внутренний номер абонента, наберите его в тональном режиме". Настройку IVR проводим в файле extensions.conf и добавляем туда следующую запись: [ivr-example] exten => s,1,Answer(500) same => n(loop),Background(Main_IVR_record) exten => 1,1,Goto(3445,s,1) #Переход в контекст отдела поддержки по нажатию кнопки 1. 3444 – Ринг группа отдела поддержки. exten => 2,1,Goto(3444,s,1) #Переход в контекст отдела продаж нажатию кнопки 2. 3445 – Ринг группа отдела продаж. exten => _XXX,1,Dial(SIP/${EXTEN}@Asterisk) #Набор внутреннего номера сотрудника Теперь, для инициализации IVR, остается только вызвать контекст [ivr-example].
img
Если Вы не раз сталкивались с большими списками доступа и/или входящими в них object-группами, то наверняка уже задавались вопросом, существует ли инструмент, позволяющий определить, пропустит ли access-лист некий заданный трафик и вообще, какие строки имеют к этому отношение. Конечно, такие инструменты существуют и полностью или частично решают перечисленные задачи. Однако, эти инструменты как правило являются частью функционала больших "комбайнов" управления сетью, 90% функционала которых Вас не интересует. Чтобы продолжить, необходимо скачать утилиту ACL check Безусловно, никто не запрещает использовать регулярные выражения для поиска определённых строк списка доступа прямо в консоли сетевого устройства. Но данный метод предоставит очень поверхностный результат. Например, он не отобразит доступ хоста, попадающего в сетевую маску или порт, попадающий под диапазон. Тем более, таким образом нельзя отобразить все существующие доступы между двумя заданными узлами/сетями. Знающий сетевой администратор осведомлён о безрезультативности метода простого парсинга access-листа в таких ситуациях. Данная небольшая утилита создана именно для этого - найти строки access-листа, разрешающие или запрещающие определённый сетевой трафик. И даже более - выявить все строки, имеющие отношение к доступам между интересующими узлами или сетями. Идея использования проста: Вы задаёте критерий, а программа находит строки access-листа, которые ему удовлетворяют. При этом, сам критерий выглядит как строка access-листа, но без использования оператора "permit" или "deny". Если регулярно добавлять сетевые правила в access-лист без должной проверки их существования, то списки доступа могут содержать большое количество избыточных правил. Чтобы навести порядок в таких access-листах, в данной программе реализован функционал анализа списков доступа на избыточность. Вы можете выявить ненужные строки и освободить ресурсы оборудования. Для анализа ACL с object-группами программе необходимо указать состав object-групп. Вывод ACL будет предоставлен в развёрнутом виде. У нас есть нужные для изучения листов доступа статьи: Стандартные листы контроля доступа (ACL) Расширенные листы контроля доступа (Extended ACL) Интерфейс программы Поле ввода access-листа Поле ввода object-групп Кнопка распознавания access-листа Поле вывода access-листа в детальном виде Однострочное поле ввода условия Многострочный список ввода условий Кнопка прямой проверки Кнопка обратной проверки Поле результата проверки Шкала позиционирования поля детальных результатов (11) по отношению ко всему ACL Поле просмотра детальных результатов проверки Кнопка анализа ACL на конфликты и избыточность Кнопка сортировки строк ACL по различным критериям Маркер текущего активного условия в многострочном списке (6) Шкала сокращённого обозначения результатов проверки условий многострочного списка Переключатель типа маски для различного типа сетевого устройства Переключатель алгоритма проверки адресов источника и назначения Активация режима игнорирования строк ACL с ICMP протоколом в режиме частичного совпадения адресов Меню выбора вариантов CLI команд в составе с именем ACL Вывод object-групп, используемых в распознанном ACL Вывод списка известных программе именованных протоколов, а также типов и кодов ICMP Поле вывода ошибок, возникающих в процессе распознавания ACL Основные шаги Исходный access-list необходимо скопировать в поле 1. Если он содержит object-группы, то их состав необходимо скопировать в поле 2. ACL и object-группы можно копировать как с конфигурации устройства (“show running-config”, “show startup-config”), так и по прямым командам “show access-lists”, “show object”. Ниже приведён пример результата команды “show running-config”, допустимого для использования в поле 1: ip access-list extended ACL permit icmp host 172.16.0.6 host 172.21.0.6 permit ip host 172.16.0.6 host 172.21.0.1 permit tcp host 192.168.8.15 range 1024 65534 host 192.168.66.47 permit tcp 192.168.8.0 0.0.0.255 eq 22 1521 3389 addrgroup ADMIN_BSD permit tcp host 192.168.8.12 eq 1521 192.168.83.20 0.0.0.1 Тот же access-list по команде “show access-lists”: Extended IP access list ACL 10 permit icmp host 172.16.0.6 host 172.21.0.6 20 permit ip host 172.16.0.6 host 172.21.0.1 (32 matches) 30 permit tcp host 192.168.8.15 range 1024 65534 host 192.168.66.47 40 permit tcp 192.168.8.0 0.0.0.255 eq 22 1521 3389 addrgroup ADMIN_BSD (1 match) 50 permit tcp host 192.168.8.12 eq 1521 192.168.83.20 0.0.0.1 Пример результата команды “show running-config”, допустимого для использования в поле 2: object-group ip address ADMIN_BSD host-info 10.237.92.131 host-info 10.22.145.132 host-info 10.22.145.136 host-info 10.22.145.141 Содержимое вывода команды “show object-group”: IP address object group ADMIN_BSD host 10.237.92.131 host 10.22.145.132 host 10.22.145.136 host 10.22.145.141 Также допустимы и другие форматы object-групп. Пример допустимого фрагмента команды “show running-config”: object-group network Servers host 10.15.12.5 host 10.15.5.11 host 10.15.4.2 host 10.15.7.34 object-group service Ports1 tcp-udp eq domain tcp-udp eq 88 udp range 3268 3269 tcp gt 49151 Пример того же фрагмента команды “show object-group”: Network object group Servers host 10.15.12.5 host 10.15.5.11 host 10.15.4.2 host 10.15.7.34 Service object group Ports1 tcp-udp eq domain tcp-udp eq 88 udp range 3268 3269 tcp gt 49151 После копирования ACL и object-групп необходимо нажать кнопку 3. В результате access-list будет распознан и отображён в развёрнутом виде (в случае использования object-групп) в поле 4. Если на этапе распознавания возникли ошибки, то они будут отображены в поле 22. Если номер строки конечного access-листа дополнен ‘0’, это означает, что данная строка получена из object-группы. Если access-лист скопирован вместе с его заголовком, то активируется кнопка 19, позволяющая использовать команды конфигурирования, содержащие имя access-листа. После распознавания ACL необходимо в поле 5 ввести условие для поиска интересуемого нас доступа и нажать кнопку 7. Результат поиска доступа отобразится в поле 9. В случае наличия доступа более детальная информация появится в поле 11. Вызов контекстного меню “Показать результат” по правой кнопке мыши на поле 11 позволит отобразить строки ACL, удовлетворяющие условию поиска. Проверка существования доступа между заданными узлами по определённому порту Предположим, нас интересует существование доступа с хоста 192.168.1.2 по порту TCP 1521 на сервер 192.168.2.2 в следующем списке доступа: ip access-list extended ACL 10 permit tcp 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 range 1521 1522 20 permit tcp host 192.168.1.2 any 30 permit tcp host 192.168.1.3 any eq 1521 Копируем access-лист в поле 1 и нажимаем кнопку 3. В поле 5 вводим следующее условие: tcp host 192.168.1.2 gt 1023 host 192.168.2.2 eq 1521 Нажимаем кнопку 7 или клавишу “Enter”. В поле 9 отобразится результат: Разрешено в строке 1: 10 permit tcp 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 range 1521 1522 Имеются ещё совпадения Здесь значение “1:” является результатом сквозной нумерации всех строк конечного (распознанного) ACL, а “10” – номер строки в исходном ACL. Надпись “Имеются ещё совпадения” означает, что в ACL присутствуют и другие строки, в которых теоретически может сработать наше условие. Результаты совпадения правил можно просмотреть в поле 11. Если на этом поле вызвать контекстное меню (правой кнопкой мыши) и выбрать пункт “Показать результат”, то появится дополнительное окно с выборкой сработавших строк ACL. Определение узлов заданной сети, к которым имеется доступ по определённому порту Рассмотрим ситуацию, когда требуется выяснить, к каким серверам сети 192.168.2.0 /24 открыт доступ по SSH (TCP 22). Список доступа следующий: ip access-list extended ACL 10 permit tcp 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 range 1521 1522 20 permit tcp any 192.168.2.0 0.0.0.3 eq 22 3389 30 permit tcp host 192.168.1.3 host 192.168.2.254 40 permit tcp host 192.168.1.10 any Копируем access-лист в поле 1 и нажимаем кнопку 3. Ставим переключатель 17 в положение “частичное по src и dst”. Алгоритм будет учитывать строки ACL, в которых IP-адреса источника и назначения полностью или частично попадают в диапазон адресов, указанный в условии. В поле 5 вводим следующее условие: tcp any gt 1023 any eq 22 Нажимаем кнопку 7 или клавишу “Enter”. В поле 9 отобразится результат Блок Результаты совпадения правил можно просмотреть в поле 11. Если на этом поле вызвать контекстное меню (правой кнопкой мыши) и выбрать пункт “Показать результат”, то появится дополнительное окно с выборкой сработавших строк ACL. Символ “?” в этом окне означает частичное совпадение по адресам. Определение доступов, открытых между определёнными узлами Выясним, какие доступы открыты от узла 192.168.1.10 к узлу 192.168.2.254 в следующем ACL: ip access-list extended ACL 10 permit tcp 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 range 1521 1522 20 permit tcp any 192.168.2.0 0.0.0.3 eq 22 3389 30 permit tcp host 192.168.1.3 host 192.168.2.254 40 permit tcp host 192.168.1.10 any Копируем access-лист в поле 1 и нажимаем кнопку 3. Ставим переключатель 17 в положение “частичное по src и dst”. В поле 5 вводим следующее условие: ip host 192.168.1.10 host 192.168.2.254 Метод состоит в том, что заданное условие рассматривается как access-лист, а каждая строка исходного ACL как отдельное условие. Другими словами, условие и ACL меняются ролями. Кнопка (8), решающая эту задачу, называется “Обратная проверка”. Нажимаем кнопку 8 или комбинацию “Ctrl-Enter”. В поле 9 отобразится результат: Блок Результаты совпадения правил можно просмотреть в поле 11. Если на этом поле вызвать контекстное меню (правой кнопкой мыши) и выбрать пункт “Показать результат”, то появится дополнительное окно с выборкой сработавших строк ACL. Символ “?” в этом окне означает частичное совпадение по адресам. Важным требованием при такой проверке является необходимость установки переключателя 17 в среднее положение. Многострочный список условий (поле 6) Список условий (6) предназначен для ввода нескольких условий и последовательной их проверки. Для ввода каждого следующего условия (новой строки) предусмотрена комбинация “Shift-Enter”. Для проверки условия из списка необходимо установить на него курсор и нажать кнопку 7 (Enter) или 8 (Ctrl-Enter). На шкале 15 напротив строки запрошенного условия отобразится соответствующий символ результата. Он сохранится до изменения условия в этой строке списка. Сортировка (кнопка 13) Распознанный access-list, выведенный в развёрнутом виде в поле 4, можно упорядочить по различным критериям и их комбинации. При нажатии на кнопку сортировки (13) открывается дополнительное окно. 1-7 – Кнопки включения элементов в цепь сортировки 8 – Отображение исходных номеров строк 9 – Режим группирования результатов сортировки Каждый следующий критерий в цепочке выбирается соответствующей кнопкой. Рассмотрим следующий список доступа: 1 permit udp 192.168.8.0 0.0.0.255 host 192.168.38.24 eq syslog 2 permit tcp 192.168.8.0 0.0.0.255 host 192.168.38.23 eq 1514 3 permit tcp 192.168.8.0 0.0.0.255 host 192.168.38.24 eq 1514 4 permit tcp 192.168.8.0 0.0.0.255 host 192.168.38.23 eq 4041 5 permit tcp 192.168.8.0 0.0.0.255 host 192.168.12.26 6 permit ip 192.168.8.0 0.0.0.255 192.168.41.0 0.0.0.255 7 permit ip 192.168.8.0 0.0.0.255 host 192.168.41.31 Чтобы упорядочить эти строки сначала по IP адресу назначения, а затем по протоколу, необходимо нажать последовательно кнопки 5 и 1: Цифры в круглых скобках на соответствующих кнопках указывают позицию элемента в цепочке сортировки. При отключении элемента из цепочки также исключаются все элементы с номерами выше отключенного. Анализ на конфликты и избыточность (кнопка 12) Кнопка “Анализ” (12) становится активной после распознания access-листа. Её нажатие запускает процесс анализа строк access-листа на конфликты и избыточность. Конфликтующей является строка access-листа, которая никогда не сработает из-за вышестоящего правила противоположного значения (“deny” после “permit” или наоборот). К примеру, загрузим следующий ACL: 10 permit icmp any any 20 permit tcp host 10.15.2.11 eq 1521 host 10.15.1.10 30 deny tcp 10.15.2.0 0.0.0.255 10.15.0.0 0.0.31.255 40 permit udp 10.15.2.0 0.0.0.255 host 10.19.9.232 50 permit udp 10.15.2.0 0.0.0.255 host 10.19.9.120 eq syslog 60 permit tcp host 10.15.2.11 eq 1521 host 10.15.7.11 Распознаем его (кнопка 3) и нажмём кнопку “Анализ” (12). Программа предупредит нас о имеющихся конфликтах: Кнопка “Да” откроет окно с результатами анализа, включающими только конфликты: Если нажать кнопку ‘Нет’, то откроется окно, включающее как конфликтующие, так и избыточные правила. Рассмотрим следующий access-list: 10 permit icmp any any 20 permit tcp host 192.168.1.10 host 192.168.2.20 eq 22 30 permit tcp host 192.168.1.10 host 192.168.2.20 40 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 Анализ такого ACL отобразит следующие результаты: Здесь жирным шрифтом выделены строки, если имеются другие правила, попадающие под их действие. Остальные строки (обычный шрифт) являются производными правилами. Установив курсор на определённой строке, удерживая нажатой клавишу “Ctrl”, получим детальную информацию в нижней части окна: Поле результатов Поле детализации выбранного правила Иерархический вид детализации В данном случае правило 2 является производным от правила 3. В свою очередь, правило 3 входит в правило 4. Визуально уровень такой вложенности можно определить по отступам строки вправо или выбрать иерархический вид (3). При иерархическом виде производные правила будут выведены ниже строк, в которые они входят. Можно выделить диапазон интересуемых строк в поле 1 и вызвать контекстное меню правой кнопкой мыши, в котором выбрать варианты удаления избыточных строк. Следует учитывать намеренное чередование операторов “permit” и “deny” в одном ACL для его упрощения. В таких случаях следует анализировать ACL частями. Например, до и после операторов “deny”. Либо анализировать полностью, но дополнительно обращать внимание на порядок следования конфликтующих строк в ACL и не удалять такие производные строки из исходного ACL. Опции запуска программы Предусмотрены следующие опции запуска exe-файла: /h, /?, /help – вызов справки параметров запуска /l (rus) – выбор языка /nm – включение режима “netmask” /pm (and,or) – выбор режима совпадения адресов /skipicmp – включение режима “игнорировать ICMP при частичном совпадении”.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59