Сообщество - Лига Сисадминов

Лига Сисадминов

2 299 постов 18 814 подписчиков

Популярные теги в сообществе:

13

Ansible. Network-scripts. RHEL8. Временное применение сетевой конфигурации

Ansible. Network-scripts. RHEL8. Временное применение сетевой конфигурации Linux, Разработка, IT, Программирование, Perl, Командная оболочка bash, Open Source

Бонжур!


Доработал недавно (как и обещал в предыдущей публикации - Ansible. Network-scripts. RHEL8) функционал ansible-хелпера "conf_int_ipv4_via_network_scripts". Теперь изменения сетевых настроек возможно применить временно (например, на период тестирования). Для этого достаточно:

1) сконфигурировать целевые интерфейсы посредством правки файла "config";

2) задать время отката настроек на предыдущие через конфиг "additional_configs/config_temporary_apply_ifcfg" (по умолчанию = 10 минут);

3) запустить скрипт "apply_temporary_ifcfg.sh". Выполняет действия, аналогичные "apply_immediately_ifcfg.sh" (т.е. реконфигурирует сеть в соответствии с файлом "config"), но перед рестартом сервиса "network" запускает на удалённом хосте bash-скрипт "rollback_ifcfg_changes.sh", который возвращает сетевые настройки к виду до модификации через временной промежуток, определённый в файле "config_temporary_apply_ifcfg";

4) протестировать сетевые связанности целевых хостов (вероятно, когда-нибудь реализую утилиту на основе стека "ansible + bash + perl");

5) если всё в порядке, то запустить скрипт "apply_immediately_ifcfg.sh", который остановит исполнение сценария "rollback_ifcfg_changes.sh".


Итого, два варианта на выбор пользователя - либо применить новые настройки незамедлительно (just run "apply_immediately_ifcfg.sh"), либо применить их временно (run "apply_temporary_ifcfg.sh") до осуществления тестирования и отмены возврата к предыдущей конфигурации сети хоста (run "apply_immediately_ifcfg.sh").


Конечно, неплохо бы добавить централизованный сбор наименований сетевых интерфейсов и соответствующих им MAC-адресов, дабы в автоматическом режиме (при попытке применить конфигурацию) сверять с тем, что пользователь напишет в конфиге (и прекращать выполнение софта, если, например, для интерфейса задан некорректный MAC), но эту фичу, думаю, реализую позже.


P.S. На очереди небольшой сюрприз для любителей разрешать доступ только к тем сетевым портам, которые необходимы для конкретного сервиса.

===

Ссылка на репозиторий: https://github.com/vladimir-chursin000/ansible_helpers

Показать полностью
11

Загрузка ECS Z77H2-A2X Deluxe (v1.0) с NVMe

UPD:

Забыл подписать, что перед всеми манипуляциями нужно установить перемычку ME_UNLOCK

Пост будет полезен только владельцам материнской платы ECS Z77H2-A2X Deluxe (v1.0).


Материнка поддерживает загрузку с NVMe накопителя, подключенного через переходник к любому PCI Express порту. Но производитель забил маленький азиатский болт на обновление прошивки.


Ниже будет архив с готовой прошивкой для моей материнки (аппаратная версия платы только v1.0). Попытка прошить это куда-то ещё, кроме указанной в заголовке материнки — это… отличная идея, обязательно попробуйте! (сарказм)


ПРЕДУПРЕЖДЕНИЕ: Напоминаю, что прошивка BIOS потенциально не безопасная операция, будьте готовы нести комп в сервис.


Памятка, что нужно сделать:


(Опишу что делал я, но действия могут отличаться в зависимости от вашей текущей версии BIOS)


- Сначала обновляетесь с сайта до UEFI версии 11/15/2012, дизайн BIOS должен измениться, должен появиться номер версии Intel ME 8.1… (В архиве есть это обновление на всякий случай)


- Затем обновляетесь до следующей версии 01/10/2013. Моя модификация сделана на основе этой прошивки.


- Прошиваете мой ROM файл из архива. В архиве есть подсказки, если будут траблы позовите знакомого программиста. Программа будет какое-то время шить BIOS и показывать прогресс и записываемые адреса, но потом в конце выдаст ошибку 18, это нормально



Что было сделано с BIOS:


- В архиве есть ссылки на гайды, которые я использовал


- Сначала была скачана последняя официальная прошивка версии 01102013 и прошита (говорят это важно сделать)


- Затем из *.CAP файла вытащил тело BIOS и добавил в него драйвер NvmExpressDxe_Small.ffs (версию compressed) от Ethaniel


- Всё



Файл лежит на Яндекс.Диске:

https://disk.yandex.ru/d/e0z5Aor5_zcltg

Показать полностью
664

Ответ на пост «Лицензионная флешка с Windows 10 не форматируется. Диск защищен от записи»1

Ответ на пост «Лицензионная флешка с Windows 10 не форматируется. Диск защищен от записи» Windows, Флешки, Microsoft, Длиннопост, Ответ на пост

KDI-MSFT Windows 10 USB Device
Ничего придумывать не надо.... требуется лишь терпение и конструктивная логика. Защита от записи у флешки программная, блокируется write protect при записи конфигурации контроллера.
Я пошел иным путем взял два архива с usbdev для контроллеров PS2307 (mpall 53mlc.rar и UPTool_Ver2093(Release)_20150312.zip). Ни с одним из них флешки не прошивались. Собрал из них один общий пакет с бинарниками ISP и FW, вот им и получилось прошить без проблем флешку от Microsoft (на самом деле это Kingston с плиткой памяти TLC от Toshiba, также есть плитки TLC от Hynix).

Вот кому надо, забирайте, https://disk.yandex.ru/d/CzBtcDWIlNw00Q

Ответ на пост «Лицензионная флешка с Windows 10 не форматируется. Диск защищен от записи» Windows, Флешки, Microsoft, Длиннопост, Ответ на пост
Ответ на пост «Лицензионная флешка с Windows 10 не форматируется. Диск защищен от записи» Windows, Флешки, Microsoft, Длиннопост, Ответ на пост
Ответ на пост «Лицензионная флешка с Windows 10 не форматируется. Диск защищен от записи» Windows, Флешки, Microsoft, Длиннопост, Ответ на пост
Показать полностью 3
39

Ответ на пост «И Гейтса я вертел вокруг оси, которой был мой детородный орган»1

Сначала, когда только началась СВО, политики сделали несколько популистских заявлений, типа, за нарушения авторских прав теперь наказывать не будем. Типа, отменяем все выплаты и иски по контрафактному ПО. Но потом, крупные софтварные криптоцигане, типа МягкойЛинии, заявили что такие меры "ударят также по отечественному производителю ПО". И все опять встало на свои места. Статью 146 УК РФ (Нарушение авторских и смежных прав) в части 3, п."г") (лицом с использованием своего служебного положения) никто не отменял и это по прежнему карается "принудительными работами на срок до пяти лет либо лишением свободы на срок до шести лет со штрафом в размере до пятисот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до трех лет или без такового". Короче, все будет зависеть только от лояльности местных проверяющих. Могут выдать "предупреждение" на первый раз, а могут обуть по полной схеме.

Вот там еще про линукс был вопрос. Так вот - большинство российских производителей (которые в реестре отечественного ПО на https://reestr.digital.gov.ru/ ) тоже платные для юрлиц. С ними надо или бесплатный договор иметь для учебного заведения (как правило, они очень охотно идут на это) или  платить. Исключение - Calculate Linux со всей линей кой продуктов Desktop и Server, их можно ставить куда угодно и где угодно. А можно и какую-нибудь Убунту накатить.

28

И Гейтса я вертел вокруг оси, которой был мой детородный орган1

Суть вопроса- админю в сильно бюджетном учреждении. Денег нет, но мы держимся. Набрал хлама двухъядерного из списанного, купил десяток ssd-шек на алике по 600 - ну для себя же.  Параллельно с... импортировал 10-ку с 10 же офисом. В итоге- нормальный компьютерный класс на 12 рабочих мест плюс место преподавателя. Компы ну не сказать прям летают- но винда грузится за 15 секунд на офис и интернет хватает только в путь.  Это с 2 гб ddr 3 - на что-то большее "нет денех"- да мне, в принципе и не надо.  Итак, допустим, что приходит ко мне прокурорский проверяющий- а что, бывали уже.  С вопросом о лицензии на сие ПО. Может такое быть?  Ну, в текущей ситуации, когда сайт майкрософт в России не активен и компашка официально с России ушла?  Ибо, мой первый вопрос к этому проверяющему будет- а не иноагент ли он? Собирающий деньги для проклятых американцев на приобретение оружия для поставок на окраину? На кого, мол, работаешь пес смердящий?! Откровенно говоря, мне и так было глубоко параллельно на правоотношения в сфере патентного права- но хотелось бы аргументированного ответа на вопрос- чем грозит-да и грозит ли вообще в текущей ситуации?!  Могут ли вообще сейчас на территории России вымогать деньги  агенты потенциального противника? Это вообще законно? И кто представляет интересы мелкомягких в России, если эти мелкомягкие официально с... ушли из России "на неопределенный срок"?  

ПыСы- медленно разбираюсь с Линухом- установить и настроить сетку получается без проблем, а вот с установкой приложений пока запара. Но, похоже, со следующего года, все ж придется переходить, придется.

Изменение размера рута в Убунте. Вопрос

Коллеги, добрый день. Направьте на путь истинный, пожалуйста. Есть комп с двумя ОС: Виндой и Убунтой. На Убунте у рута кончается место, хочу отрезать от Винды и увеличить рут. В интернете нашел статью с тем, как это сделать - предлагается через GPArted. Но в доке на GParted написано, что разделы с установочными файлами (я так понимаю, что это рут и есть с его либами) нельзя переносить, а иначе мне никак не передвинуть разделы, чтобы пустая нераспределенная память оказалась рядом с разделом рута. Я правильно понимаю, что мне в этой ситуации только переустанавливать Убунту или есть способы?

154

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе

Итак, как и обещал, завершаю историю про подключение ведомственной АТС Panasonic KX-TDA600 и Asterisk.Начало тут: Краткие заметки по дружбе OpenVox D110P (Digium Wildcard TE110P) и Астериск в 2022 году

По немногочисленным руководствам из интернетов начал ковырять АТС Panasonic. В деле настройки АТС я полный ноль, поэтому на быстрый результат не рассчитывал. Нашу АТС лет 10 назад кто то настроил (по слухам - приглашённый специалист), и с тех пор она работала, работала и работала. Надёжная штука.

Скопировал себе содержимое SD карточки что бы откатиться к исходным настройкам если вдруг чо.

Поставил переключатели на плате PRI30 в нужные позиции и вставил плату в АТС.

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

Для RJ45 ставим переключатель на лицевой планке в положение 120 Ом. (Кстати, разъём для ISDN PRI не RJ45 на самом деле, а RJ47, господа связисты быстро начинают глумиться на форумах, если вдруг RJ47 для E1 назвал привычным RJ45. RJ45 кстати вполне подходит, и все в основном его и используют, но сам факт показать свою значимость и осведомлённость - бесценен. Я на связных форумах называл его осторожно - 8p8c :)))).

Переключатель на плате указывает, какой кабель используем - прямой или кросс. А - прямой, B - кросс. Для E1 используются 1,2 - первая пара, 4,5 - вторая.

Т.е. прямой кабель - 1 - бело-оранжевый, 2 - оранжевый, 4 - бело-зелёный, 5 - зелёный. Второй конец так же.

Кросс - 1 - бело-оранжевый, 2 - оранжевый, 4 - бело-зелёный, 5 - зелёный. С другой стороны - 1 - бело-зелёный, 2 - зелёный, 4 - бело-оранжевый, 5 - оранжевый.

Я использовал кросс.

Инструкция строго рекомендует на кабель вешать феррит. Хз, я не вешал.


Естесственно, при попытке захода на Панасоник пароль не подошел. Гуглим.

Натыкаемся на ЭТОТ форум, где человек спрашивает про сброс пароля и ему господа связисты, а именно НачШтаба рекомендует обратится к нему и он-де сбросит пароль за деньги. При этом говорит что вы, сисадмины весьма самонадеянны и считаете, что вам всё по плечу. А связь - "это вам не это". Понятно... - подумал я и продолжил гуглёж.

И на второй странице выдачи гугла нашел вот это руководство. Программа отработала на 5+, и я попал на нашу АТС. Проинициализировал плату PRI30.

По мотивам Вот этого руководства я настроил взаимодействие с Астериском, и... ничего не заработало. Ожидаемо.

Проверил ещё раз. Не заработало.

Сбрасываем всю АТС. Я не видел проблем, ибо у нас она в минимальной конфигурации - набита платами ESLC16, ну и добавилась PRI30. Ничего сложного.

Выключаем АТС. Переводим тумблер на процессорном модуле в положение инициализации, включаем. Ждём когда зелёный индикатор заморгает на корпусе АТС, ждём для верности ещё секунд 10, и переводим переключатель в режим normal.

АТС инициализируется где то 2 минуты и встаёт в работу.

Но номерной план сбит. У нас были трёхзначные номера от 100 до 212 (7 плат внутренних абонентов по 16 номеров). По умолчанию же АТС выставляет четырёхзначные 1001-1112.

Идём в 2.6.1 maitenance console и во вкладке Внутренние линии меняем 10 на 1, итд. Сохраняем и внутренние звонки пошли.

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

Далее опять обращаемся к тому же руководству из интернетов. Приведу его здесь.

1.1. Коннектимся к АТС с помощью консоли администрирования (KX-TDA Maintenance Console)

открываем пункт 1.1 (Slot).


1.2. Видим установленную плату PRI30.


1.3. Если она в режиме "INS" ("In Service" ), то переводим ее в режим "OUS", кликнув по ней правой кнопкой мыши и выбрав соответствующий пункт ("Out-of-service"). (В режиме INS Panasonic не дает править настройки платы).


1.4. Снова кликаем по ней мышкой и выбираем пункт "Port Property" ("Свойства порта").


1.5. Там выставляем Port Type (тип порта) в "QSIG-Master" (если плата в Asterisk у нас в режиме Slave.

Принципиально, чтобы на разных концах были разные значения, однако эмпирически получилось, что если ставить плату на Asterisk в Master (pri_net), то Panasonic постоянно отваливается, так что Master должен быть Panasonic).


1.6. CRC4 Mode (Режим CRC4) в "Disable". (Или enable, в зависимости от того как мы его выставили в Asterisk, опять же эмпирика показывает, что panasonic как-то криво обрабатывает этот пункт, лучше ставить в disable).


На этом настройка платы закончена, включаем плату (ПКМ - INS) и все должно заработать на уровне физики. Переходим на уровень логики.


Объединяем линии платы PRI30 в отдельную транковую группу:

2.1. открываем пункт "10.1" (CO Line Settings).

В таблице слева видим номер слота и номер порта. Справа можем задавать номер транковой группы (TRG) от 1 до 64. Выбираем любой неиспользуемый номер и присваиваем его всем 30-ти линиям платы.

Я поставил всем 2.
Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

2.2. Объявляем эту транковую группу локальной (в том смысле, что не "внешней") для данной АТС. Для этого идем в пункт "9.1" (TIE Table). Думаем что бы написать в графе "Leading Number". Это такие цифры, при наборе которых АТС будет "отдавать" звонок в транковую группу, то есть нам на астериск. Тогда в Leading Number я пишу "3XX" и "4XX". В графе "Trunk Group" ("Группа внешних линий") указываем тот номер, который мы задали на предыдущем шаге, в пункте 10.1 консоли. При этом запоминаем номер строки таблицы, в который мы все это вписали (!). Это важно!

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

2.4 Идём в пункт "2.6.1Numbering Plan, Main", (План нумерации, Основное) на вкладку "Other PBX Extension" (Внутренняя линия другой УАТС), пишем первую цифру нумерации Asterisk (у меня - 3 и 4 соответственно). ВАЖНО, чтобы строка была та же, что и в пункте 9.1.

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

Добавляем настройки порта платы PRI30 для работы АОН на астериске.

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

И генерируем CLIP

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост

Для меня - всё. У меня нет городских линий на АТС. Весь город я заведу на Asterisk. Мне с ним проще. Во-первых, море информации. Во вторых - дружелюбное сообщество.


Настраиваем Астериск. Начинаем с DAHDI.

/etc/dahdi/system.conf

loadzone=ru

defaultzone=ru

#span = 1,1,0,ccs,hdb3,crc4

span = 1,1,0,ccs,hdb3

# Параметры по порядку:

# 1 - Номер порта (спана) - 1 для 1-й карты

# 2 - Мастер(0) и слейв (1) - 1

# 3 - для стабилизации на длинных линиях. У нас линия короткая - 0

# 4 Fraiming

# 5 Coding

# 6 - необязательный - вкл CRC. Полезно опять же на длинных линиях. Наверное.

bchan = 1-15,17-31

dchan = 16

#alaw=1-15,17-31

Обратите внимание, тут комментарии экранируются решёткой #. В конфигах астериска  - точка с запятой (;).


/etc/asterisk/chan_dahdi.conf

[trunkgroups]


[channels]

language=ru

context=from-panas

switchtype=qsig  ;euroisdn

nationalprefix=8

overlapdial=yes

signalling=pri_cpe

rxwink=300

usecallerid=yes

cidsignalling=bell

;bell: bell202 as used in US (default)

;v23: v23 as used in the UK

;v23_jp: v23 as used in Japan

;dtmf: DTMF as used in Denmark, Sweden and Netherlands

;smdi: Use SMDI for caller ID. Requires SMDI to be enabled

;cidstart=ring ;Determine signals the start of caller ID. The options supported by Asterisk are:

;ring: A ring signals the start (default)

;polarity: Polarity reversal signals the start

;polarity_IN: Polarity reversal signals the start, DTMF dialtone detection in India

;dtmf: DTMF Caller ID spill begins only with DTMF, at various times before the ring.

;This causes Asterisk to constantly listen for DTMF CallerID signals on the specified channels

;If cidstart is configured to use dtmf, the energy level on the line may need to be

;tuned to properly identify the DTMF tones.

; This tuning is done with the dtmfcidlevel configuration option.

; The specified value is compared to the average over a packet of audio level

;of the absolute value of 16 bit signed linear samples.

; The default is set to 256, but this is completely arbitrary.

;It must be set high enough to prevent false detections, while low

;enough to ensure no dtmf spills are missed.

;hidecallerid=no

;callwaiting=yes

usecallingpres=yes

callwaitingcallerid=yes

transfer=yes

canpark=no

cancallforward=yes

callreturn=no

echocancel=no

echocancelwhenbridged=no

rxgain=0.0

txgain=0.0

group=1

callgroup=1

pickupgroup=1

immediate=no

busydetect=yes

busycount=8

channel => 1-15,17-31

/etc/asterisk/extensions.conf

[from-panas]  ; Звонки с панасоника

exten => _[34]XX,1,NoOp()

same => n, Dial(PJSIP/${EXTEN},30,tT)

same => n, Hangup()


[sip-local] ; Звонки с сипофонов и шлюзов там всяких

exten => _[34]XX, 1, NoOp()  ; Звонки с сипофонов на сипофоны

same => n, DIAL(PJSIP/${EXTEN},30,tT)

same => n, Hangup()


exten => _[12]XX, 1, NoOp()  ; Звонки с сипофонов на панасоник

same => n, Dial(Dahdi/g1/${EXTEN},,tT)

same => n, Hangup()

Ну и настраиваем авторизацию PjSIP. В этой версии астериска он основной. Можно конечно убрать, но на форумах убеждают, что несмотря на возросшую сложность конфигурирования - за ним будущее. Хз, чтож уж. Пробуем.

Настраиваем два сипофона - с номерами 301, 302 и паролями "5825".


/etc/asterisk/pjsip.conf

[udp-transport]

type = transport

protocol = udp

bind = 0.0.0.0

; ---------------------------------------300

[300]

type=endpoint

context=sip-local

disallow=all

allow=alaw

transport=udp-transport

auth=auth300

aors=300


[auth300]

type=auth

auth_type=userpass

password=5825

username=300


[300]

type=aor

max_contacts = 1


;---------------------------------------301

[301]

type=endpoint

context=sip-local

disallow=all

allow=alaw

transport=udp-transport

auth=auth301

aors=301


[auth301]

type=auth

auth_type=userpass

password=5825

username=301

[301]

type=aor

max_contacts = 1

И внезапно при запуске asterisk выясняем что кучи функций нет. Если ставим asterisk из репозиториев убунты, то том в конфигураторе модулей стоит разрешение загружать всё, за исключением пары модулей.

Здесь же, внезапно, наоборот.


Поэтому вот Вам мой файл /etc/asterisk/modules.conf Жаль, под кат нельзя убрать.

[modules]

autoload = no

; This is a minimal module load. We are loading only the modules

; required for the Asterisk features used in the "Super Awesome

; Company" configuration.

; Applications

load = app_bridgewait.so

load = app_dial.so

load = app_playback.so

load = app_stack.so

load = app_verbose.so

load = app_voicemail.so

load = app_directory.so

load = app_confbridge.so

load = app_queue.so

; Bridging

load = bridge_builtin_features.so

load = bridge_builtin_interval_features.so

load = bridge_holding.so

load = bridge_native_rtp.so

load = bridge_simple.so

load = bridge_softmix.so

; Call Detail Records

load = cdr_custom.so

; Channel Drivers

load = chan_bridge_media.so

load = chan_pjsip.so

load = chan_dahdi.so

;load = chan_sip.so

; Codecs

load = codec_gsm.so

load = codec_resample.so

load = codec_ulaw.so

load = codec_g722.so

; Formats

load = format_gsm.so

load = format_pcm.so

load = format_wav_gsm.so

load = format_wav.so

; Functions

load = func_callerid.so

load = func_cdr.so

load = func_pjsip_endpoint.so

load = func_sorcery.so

load = func_devstate.so

load = func_strings.so

; Core/PBX

load = pbx_config.so

; Resources

load = res_http_websocket.so

load = res_musiconhold.so

load = res_pjproject.so

load = res_pjsip_acl.so

load = res_pjsip_authenticator_digest.so

load = res_pjsip_caller_id.so

load = res_pjsip_dialog_info_body_generator.so

load = res_pjsip_diversion.so

load = res_pjsip_dtmf_info.so

load = res_pjsip_endpoint_identifier_anonymous.so

load = res_pjsip_endpoint_identifier_ip.so

load = res_pjsip_endpoint_identifier_user.so

load = res_pjsip_exten_state.so

load = res_pjsip_header_funcs.so

load = res_pjsip_logger.so

load = res_pjsip_messaging.so

load = res_pjsip_mwi_body_generator.so

load = res_pjsip_mwi.so

load = res_pjsip_nat.so

load = res_pjsip_notify.so

load = res_pjsip_one_touch_record_info.so

load = res_pjsip_outbound_authenticator_digest.so

load = res_pjsip_outbound_publish.so

load = res_pjsip_outbound_registration.so

load = res_pjsip_path.so

load = res_pjsip_pidf_body_generator.so

load = res_pjsip_pidf_digium_body_supplement.so

load = res_pjsip_pidf_eyebeam_body_supplement.so

load = res_pjsip_publish_asterisk.so

load = res_pjsip_pubsub.so

load = res_pjsip_refer.so

load = res_pjsip_registrar.so

load = res_pjsip_rfc3326.so

load = res_pjsip_sdp_rtp.so

load = res_pjsip_send_to_voicemail.so

load = res_pjsip_session.so

load = res_pjsip.so

load = res_pjsip_t38.so

load = res_pjsip_transport_websocket.so

load = res_pjsip_xpidf_body_generator.so

load = res_rtp_asterisk.so

load = res_sorcery_astdb.so

load = res_sorcery_config.so

load = res_sorcery_memory.so

load = res_sorcery_realtime.so

load = res_timing_timerfd.so


; Do not load res_hep and kin unless you are using HEP monitoring

; <http://sipcapture.org> in your network.


noload = res_hep.so

noload = res_hep_pjsip.so

noload = res_hep_rtcp.so


; ------------Добавляю свои


load = res_clioriginate.so

load = app_originate.so

load = app_echo

load = app_stream_echo.so


; -----------------------------------------Отладка

load = app_agent_pool.so

load = app_alarmreceiver.so

load = app_amd.so

load = app_attended_transfer.so

load = app_audiosocket.so

load = app_authenticate.so

load = app_blind_transfer.so

load = app_bridgeaddchan.so

load = app_cdr.so

load = app_celgenuserevent.so

load = app_chanisavail.so

load = app_channelredirect.so

load = app_chanspy.so

load = app_controlplayback.so

load = app_dictate.so

load = app_directed_pickup.so

load = app_dtmfstore.so

load = app_dumpchan.so

load = app_exec.so

load = app_externalivr.so

load = app_festival.so

load = app_flash.so

load = app_followme.so

load = app_forkcdr.so

load = app_jack.so

load = app_mf.so

load = app_milliwatt.so

load = app_minivm.so

load = app_mixmonitor.so

load = app_morsecode.so

load = app_mp3.so

load = app_page.so

load = app_playtones.so

load = app_privacy.so

load = app_read.so

load = app_readexten.so

load = app_record.so

load = app_reload.so

load = app_sayunixtime.so

load = app_senddtmf.so

load = app_sendtext.so

load = app_sf.so

load = app_sms.so

load = app_softhangup.so

load = app_speech_utils.so

load = app_stasis.so

load = app_system.so

load = app_talkdetect.so

load = app_test.so

load = app_transfer.so

load = app_userevent.so

load = app_waitforcond.so

load = app_waitforring.so

load = app_waitforsilence.so

load = app_waituntil.so

load = app_while.so

load = chan_audiosocket.so
load = chan_rtp.so
load = codec_adpcm.so

load = codec_alaw.so

load = codec_dahdi.so

load = codec_g726.so

load = codec_ilbc.so

load = codec_lpc10.so

load = codec_speex.so

load = format_g719.so

load = format_g723.so

load = format_g726.so

load = format_g729.so

load = format_h263.so

load = format_h264.so

load = format_ilbc.so

load = format_mp3.so

load = func_blacklist.so

load = func_callcompletion.so

load = func_channel.so

load = func_config.so

load = func_cut.so
load = func_dialgroup.so

load = func_dialplan.so

load = func_enum.so

load = func_env.so

load = func_evalexten.so

load = func_extstate.so

load = func_frame_drop.so

load = func_frame_trace.so

load = func_global.so

load = func_groupcount.so

load = func_hangupcause.so

load = func_holdintercept.so

load = func_iconv.so

load = func_jitterbuffer.so

load = func_json.so

load = func_lock.so

load = func_logic.so

load = func_math.so

load = func_module.so
load = func_periodic_hook.so

load = func_pitchshift.so

load = func_pjsip_aor.so

load = func_pjsip_contact.so

load = func_presencestate.so

load = func_rand.so

load = func_realtime.so

load = func_sayfiles.so

load = func_scramble.so

load = func_shell.so
load = func_sprintf.so

load = func_srv.so

load = func_sysinfo.so

load = func_talkdetect.so

load = func_timeout.so

load = func_uri.so

load = func_version.so

load = func_vmcount.so

load = func_volume.so

load = pbx_ael.so

load = pbx_loopback.so
load = pbx_realtime.so

load = pbx_spool.so


load = res_aeap.so

load = res_ael_share.so

load = res_audiosocket.so

load = res_clialiases.so

load = res_convert.so

load = res_fax.so load = res_fax_spandsp.so

load = res_format_attr_celt.so

load = res_format_attr_g729.so

load = res_format_attr_h263.so

load = res_format_attr_h264.so

load = res_format_attr_ilbc.so

load = res_http_post.so

load = res_limit.so

load = res_manager_devicestate.so

load = res_manager_presencestate.so

load = res_mutestream.so

load = res_mwi_devstate.so

load = res_parking.so

load = res_phoneprov.so

load = res_pjsip_config_wizard.so

load = res_pjsip_dlg_options.so

load = res_pjsip_empty_info.so

load = res_pjsip_history.so

load = res_pjsip_sips_contact.so

load = res_realtime.so

load = res_resolver_unbound.so

load = res_rtp_multicast.so

load = res_security_log.so

load = res_smdi.so

load = res_snmp.so

load = res_sorcery_memory_cache.so

load = res_speech.so

load = res_speech_aeap.so

load = res_srtp.so

load = res_stasis.so

load = res_stasis_answer.so

load = res_stasis_device_state.so

load = res_stasis_playback.so

load = res_stasis_recording.so

load = res_stasis_snoop.so

load = res_statsd.so

load = res_stun_monitor.so

load = res_timing_dahdi.so

load = res_timing_pthread.so

load = res_tonedetect.so

Ваш набор модулей может быть меньше или больше. Я повыкидывал то, что мне точно не пригодится.


Вот и всё. Теперь будем канючить деньги на 24-портовый голосовой шлюз, что бы подключить удалённый офис. :)


Надеюсь мой опус поможет кому то не плясать по грабелькам.


Попозже может опишу, как я ставил VirtualBox на Ubuntu Server в консоли и настраивал проброс USB в гостевую систему из консоли. Это я делал для того, что бы подключить панасоник к компу с астериск, на комп поставить virtualBox, поставить на виртуалку W2K, и на W2K поставить maitenance console и настраивать панасоника не выходя из кабинета. Ибо заманался я бегать в другой корпус с ноутом, подстраивать мелочи всякие на панасе.

Меня приятно поразили консольные возможности VirtualBox'а.


Кстати, никто не знает, что за ошибка выскакивает на 2.10 - настройка АОН внутренних абонентов?

Panasonic KX-TDA600 и Asterisk. О их дружбе и недружбе Asterisk, Panasonic, Длиннопост
Показать полностью 8
38

Администратор Linux. Виртуализация и кластеризация. Часть 4 из 5 (2020)

Курс для тех, для тех кто хочет начучится строить отказоустойчивые кластера виртуализации для запуска современных сервисов, рассчитанных под высокую нагрузку

Вы сможете строить системы с использованием современных популярных сервисов на базе Linux и разберетесь в каких проектах применяются те или иные сервисы.

Курс подойдет для администраторов Linux и DevOps


ссылка на скачивание

третья часть

наш телеграмм канал

PS: мы залили все части в тг

так же там могут быть материалы которые ещё не вышли на пикабу или не выйдут вовсе

Отличная работа, все прочитано!