Инструменты пользователя

Инструменты сайта


mp_doc:imain_install_ubuntu_work

Это старая версия документа!


Установка рабочего узла (Ubuntu Server 18.04)

Установка

1. Берем свеже установленный Ubuntu Server 18.04 обновляем его:

$ apt update && apt upgrade

2. Отключаем встроенный ресолвер:

$ systemctl disable systemd-resolved.service
$ service systemd-resolved stop
$ rm /etc/resolv.conf
$ touch /etc/resolv.conf
$ cat > /etc/resolv.conf <<EOF
nameserver 192.168.50.66
EOF

3. Изменить имя на minipbx-nodeX

mcedit /etc/hostname

4. Добавление репозитория minipbx

$ apt install gnupg

$ wget -O - http://rep.ds.local:81/keyFile | sudo apt-key add
$ echo 'deb [arch=amd64] http://rep.ds.local:81/ bionic contrib' > /etc/apt/sources.list.d/mpbx-repo.list
$ apt update

$ wget -O - http://deb.minipbx.ru:81/keyFile | sudo apt-key add
$ echo 'deb [arch=amd64] http://deb.minipbx.ru:81/ bionic contrib' > /etc/apt/sources.list.d/mpbx-repo.list
$ apt update

5. Установка комплекса и зависимостей:

$ apt install asterisk-minipbx
$ apt install minipbx minipbx-excodecs

6. Настройка /etc/mpbxd/mpbxd.ini. Если узел новый, то не забыть добавить его в БД.

[main]
nodeident=nodeX

[db]
Database=
Username=
Password=
Server=

7. Если SNMP нужен, устанавливаем его:

$ apt install snmpd

иначе нужно запретить загрузку модуля res_snmp.so. В файле /etc/asterisk/modules.conf убрать комментарий со строке:

noload => res_snmp.so

8. Настройка SNMP. Создать файл /etc/snmp/snmpd.conf

gentAddress  udp:0.0.0.0:161

view asterisk included .1.3.6.1.2.1.1.1
view asterisk included .1.3.6.1.2.1.1.2
view asterisk included .1.3.6.1.2.1.1.4
view asterisk included .1.3.6.1.2.1.1.5
view asterisk included .1.3.6.1.2.1.1.6
view asterisk included .1.3.6.1.4.1.22736

rocommunity dialog <ip> -V asterisk
syslocation <location>
sysContact admin <admin@some.com>
master          agentx
agentXSocket /var/agentx/master
agentXPerms 0660 0775 asterisk asterisk

Для отключения поднятия каких то лишних, причем случайных портов, в /etc/snmp/snmpd.conf закомментировать trapsink и trap2sink.

9. Настройка отправки электронной почты:
9.1. Настройка отправки через обычный SNMP сервер

$ cpan MIME::QuotedPrint MIME::Base64 Mail::Sendmail

Проверка:

$ perl -c /usr/voice/sendmail-dialog.pl

9.2. Настройка отправки через gmail:

$ apt install make libcrypt-ssleay-perl libauthen-sasl-perl
$ cpan Email::Send::SMTP::Gmail

Проверка:

$ perl -c /usr/voice/sendmail-gmail.pl

10. Установка кодеков g723 и g729:

$ apt install minipbx-excodecs

11. Установка ntp клиента:

$ apt install ntpdate

Добавим в /etc/crontab

*/30 * * * * root /usr/sbin/ntpdate 192.168.50.94 >/dev/null 2>&1

12. Проверить наличие стандартных звуковых файлов:

$ ls -l /var/lib/asterisk/sounds

Отсутствие файлов приведет к проблемам! Например, без файлов pbx-transfer и beep не будет работать перевод вызовов!
13. Настройка рабочих IP адресов X. Перерезапуск и проверка сервисов

Полное удаление

apt purge minipbx mpbxd asterisk-minipbx minipbx-excodecs

Тонкая настройка

1. Отключить ipv6:

in /etc/sysctl.conf
# Disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
# for each interface (eth0, eth1, ...)
net.ipv6.conf.<ifname>.disable_ipv6 = 1

В каждом интерфейсе, файла /etc/netplan/01-netcfg.yaml, должно быть что то типа (последние 2 строки):

    eth1:
      dhcp4: no
      dhcp6: no
      accept-ra: no
      link-local: [ ]

2. Включить src routing:

in /etc/sysctl.conf
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
net.ipv4.conf.all.forwarding = 1
net.ipv4.conf.default.forwarding = 1

# Controls source route verification
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.eth0.rp_filter=0
net.ipv4.conf.eth1.rp_filter=0

# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 1

# Controls source route verification
net.ipv4.conf.default.rp_filter = 1

В каждом интерфейсе (кроме основного), файла /etc/netplan/01-netcfg.yaml, должно быть что то типа (последние 2 секции):

    eth3:
      dhcp4: no
      dhcp6: no
      accept-ra: no
      link-local: [ ]
      addresses:
          - 80.89.xxx.9/26
      routes:
          - to: 0.0.0.0/0
            via: 80.89.xxx.10
            table: 103
      routing-policy:
          - from: 80.89.xxx.9
            table: 103
          - to: 80.89.xxx.9
            table: 103

3. Установка дополнительных пакетов:

apt install zabbix-agent vsftpd

4. Особенности настройки asterisk за NAT:

Иногда необходимо установить рабочий узел за NAT сервер (например так предоставляет подключение провайдер Яндекс). Для этого необходимо добавить (или отредактировать) набор параметров типа Узел, добавив в шаблон что то типа:

localnet=10.130.0.27/255.255.255.255
externip=84.201.168.24
media_address=84.201.168.24

где

  • localnet - это внутренняя сеть (или внутренний адрес вашего сервера);
  • externip - это внешний адрес вашего сервера, который будет использован в SIP заголовках;
  • media_address = это внешний адрес вашего сервера, который будет использован для приема RTP (голосового) трафика;

Этот пример работает без дополнительной настройки в случае One-to-One NAT (один внешний адрес, жестко соответствует одному внутреннему). Для других видов NAT потребуется проброс портов (SIP и RTP).

Включение событий о готовности записи разговора

Многие CRM системы могут хранить у себя запись разговора. К сожалению, из за архитектурных особенностей Asterisk, выполнение каких либо операций с записью происходит асинхронно. Поэтому, если существует необходимость интеграции с CRM, необходимо включить отправку сообщений о готовности записи разговоров:

mpbxd -record_events enable

Также вы можете отключить эту, уже включенную возможность, выполнив команду:

mpbxd -record_events disable

При включении этой возможности, создается файл с именем record_events, обычно располагаемый в каталоге /etc/mpbxd. Внутри этого файла содержится 3 строки:

  • идентификатор узла;
  • параметры подключения к БД;
  • базовый путь хранения записей разговоров (должен заканчиваться символом разделителя пути, например «/«).
mp_doc/imain_install_ubuntu_work.1607315642.txt.gz · Последнее изменение: 2024/03/31 22:04 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki