All pages
Powered by GitBook
1 of 7

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Обслуживание

Изменить имя для авторизации

При добавлении на АТС нового Сотрудника на АТС заводится учетная запись SIP с числовым внутренним номером. В ряде случаев, в целях безопасности есть необходимость изменить имя для авторизации этого сотрудника.

При настройке SIP Клиентов часто можно увидеть два ключевых параметра:

  1. Username - обычно равен ID учетной записи, в случае с MikoPBX равен внутреннему номеру

  2. Auth Username - имя пользователя для авторизации. В случае MikoPBX равен внутреннему номеру

Для изменения имени авторизации:

  1. Откройте учетную запись сотрудника на редактирование

Раздел "Сотрудники"
  1. Перейдите к «Расширенным настройкам» → «Дополнительные параметры SIP»

Расширенные настройки сотрудника
  1. Добавьте следующие строчки:

[auth] 
username = MIKO204

Вместо MIKO204 укажите имя для авторизации, желательно использовать и буквы и цифры

Дополнительные параметры

Хранение записей в общей папке windows

В ряде случаев необходимо предусмотреть сохранение записей разговоров на сетевой диск. В этом примере покажем как подключить к MikoPBX общий каталог windows.

Обратите внимание: если сетевой каталог будет не доступен, возможны сбои в работе АТС.

  1. Создадим каталог для хранения скрипта

  1. Создадим файл скрипта

  1. Вставьте содержимое скрипта

  1. Нажмите сочетание клавиш «CTRL+D» два раза для завершения создания файла

  2. Предоставьте права на исполнение

  1. В переменных скрипта «HOST,USER,PASS» следует описать параметры подключения к общему каталогу

  2. Скрипт необходимо доавить в cron для автоматического подключения общей папки

  3. Перейдите в раздел «Система» - «Кастомизация системных файлов»

  4. Добавьте в конец файла «/var/spool/cron/crontabs/root» следующее правило

  1. Протестируйте работу АТС, убедитесь, что записи разговоров сохраняются на сетевой диск.

Сброс пароля администратора из консоли MikoPBX

Действия для сброса данных из консоли MikoPBX

Может возникнуть ситуация, когда Вы забыли логин или пароль от web-интерфейса MikoPBX. В данной инструкции вы найдете порядок действий для их сброса.

Сброс из консоли MikoPBX

  1. Перейдите в консоль MikoPBX.

В зависимости от способа установки, консоль может находиться:

  • При установке на физический сервер - на мониторе, подключенному к серверу.

  • При установке в виртуальную машину - в консоли управления виртуальной машиной.

  • При установке в облако - в серийной консоли облака (так же в консоли управления виртуальной машиной).

  • Способ сброса при установке в Docker-контейнер описан далее в текущей документации.

Помимо этого, в консоль можно попасть, используя авторизацию по SSH. Подробнее про SSH-подключение, Вы можете прочитать .

Для знакомства с системой MikoPBX, используйте следующую .

  1. Перейдите в раздел "[7] Reset password for the web interface".

  2. Введите "y" для подтверждения сброса логина и пароля.

  1. Авторизуйтесь в web-интерфейс по стандартным данным:

Стандартные данные для входа в web-интерфейс:

Логин: admin

Пароль: admin

Измените данные для входа после первой авторизации.

Сброс пароля в Docker-контейнере

  1. Перейдите в container-shell.

Замените mikopbxcontaierNameOrID на название или ID вашего контейнера.

  1. Запустите меню, используя следующую команду:

  1. Перейдите в раздел "[7] Reset password for the web interface".

  2. Введите "y" для подтверждения сброса логина и пароля.

  3. Авторизуйтесь в web-интерфейс по стандартным данным:

Стандартные данные для входа в web-интерфейс:

Логин: admin

Пароль: admin

Измените данные для входа после первой авторизации.

mkdir /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script
cat > /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script/mount-shared-folder.sh
#!/bin/sh
HOST='//172.16.32.38/SharedFolder';
USER='';
PASS='';
REC_DIR='autorecords';
mountPoint='/storage/win-shared';

createLink ()
{
  subDir="$(date '+%Y/%m')";
  monitorDir="$(/bin/busybox grep monitordir < /etc/inc/mikopbx-settings.json | /bin/busybox cut -f 4 -d '"')";
  if [ "${monitorDir}x" = 'x' ];then
    echo "Empty monitor dir";
    return;
  fi;
  /bin/busybox mkdir -p "$monitorDir" "$mountPoint/$REC_DIR/$subDir";
  if [ ! -L "$monitorDir/$subDir" ] && [ -d "$monitorDir/$subDir" ];then
    cp -r "$monitorDir/$subDir/"*  "$mountPoint/$REC_DIR/$subDir";
    rm -rf "${monitorDir:?}/$subDir/";
    ln -s "$mountPoint/$REC_DIR/$subDir" "${monitorDir:?}/$subDir";
  fi;

  if [ ! -L "$monitorDir/$subDir" ] && [ ! -f "${monitorDir:?}/$subDir" ]; then
    ln -s "$mountPoint/$REC_DIR/$subDir" "${monitorDir:?}/$subDir";
  fi;
}

/bin/busybox mount | /bin/busybox grep "$HOST";
resGrep="$?";
if [ "$resGrep" = "0" ]; then
  echo "Disk is mounted..."
  createLink;
  exit 2;
fi;

mkdir -p "$mountPoint";
/bin/busybox mount -t cifs "$HOST" "$mountPoint" -o "username=$USER,password=$PASS,vers=2.0"
resMount="$?";

if [ "$resMount" != '0' ];then
  echo "Error mount $HOST"
  exit 1;
fi;

createLink;
chmod +x /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script/mount-shared-folder.sh
*/1 * * * * /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script/mount-shared-folder.sh > /dev/null 2> /dev/null
docker exec -it mikopbxcontaierNameOrID sh
/etc/rc/console_menu
здесь
документацию
Ошибка авторизации в WEB-интерфейс
Консоль MikoPBX
Подтверждение сброса пароля
Изменение данных для входа
Изменение данных для авторизации

Закончилось место на доп. диске, увеличение размера диска

Увеличить размер диска позволяют некоторый виртуальные машины

Перед работами обязательно выполните резервное копирование данных!

Для выполнения предложенных далее команд потребуется Подключение к АТС с помощью SSH-клиента.

Контроль свободного места на диске

~ # df -h
Filesystem                Size      Used Available Use% Mounted on
none                    281.3M    324.0K    281.0M   0% /dev
/dev/sda2               392.3M    384.6M      3.8M  99% /offload
/dev/sda3                14.1M    915.0K     12.9M   6% /cf
/dev/sdb1                 4.9G     71.0M      4.5G   2% /storage/usbdisk1

Диск для хранения данных обычно монтируется в каталог «/storage/usbdisk1». Из примера выше видно, что на текущий момент доступно 4.5G из 4.9G.

Отключение диска

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

~ # /sbin/freestorage

Убедитесь, что диск для хранения данных более не смонтирован:

~ # df -h
Filesystem                Size      Used Available Use% Mounted on
none                    281.3M    324.0K    281.0M   0% /dev
/dev/sda2               392.3M    388.3M         0 100% /offload
/dev/sda3                14.1M    915.0K     12.9M   6% /cf

Редактирование таблицы разделов

Удаление раздела

Для начала удалим существующий раздел. Эта операция НЕ удаляет данные на диске, просто правит таблицу разделов.

Запускаем редактор разделов:

# fdisk /dev/sdb

Система запросит ввести команду, вводим «d» и жмем Enter:

Command (m for help): d

Система запросит выбрать раздел к удалению, он один, вводим номер раздела «1» и жмем Enter:

Selected partition 1

Сохраняем таблицу разделов, вводим команду «w» и жмем Enter:

Command (m for help): w

Добавление большего раздела

Запускаем редактор разделов:

# fdisk /dev/sdb

Система запросит ввести команду, вводим «n» и жмем Enter:

Command (m for help): n

Далее указываем команду «p», раздел будет первичным, жмем Enter:

Command action p

Вводим номер создаваемого раздела «1», жмем Enter:

Partition number (1-4): 1

Далее система запросит ввести номера первого и последнего сектора «First sector» / «Last sector», ждем Enter, ничего не вводим и соглашаемся со значениями «по умолчанию».

Проверка нового раздела

Размер раздела должен соответствовать размеру диска.

~ # fdisk -l 
Disk /dev/sdb: 10 GB, 10737418240 bytes, 20971520 sectors
1305 cylinders, 255 heads, 63 sectors/track
Units: cylinders of 16065 * 512 = 8225280 bytes

Device  Boot StartCHS    EndCHS        StartLBA     EndLBA    Sectors  Size Id Type
/dev/sdb1    0,1,1       1023,254,63         63   20964824   20964762  9.9G 83 Linux

Проверка раздела на ошибки

Запускаем команду проверки:

e2fsck -f /dev/sdb1

Пример результата работы команды:

e2fsck 1.43.4 (31-Jan-2017)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb1: 35/655360 files (11.4% non-contiguous), 63423/2620595 blocks

Размер файловой системы раздела

Запускаем команду:

resize2fs /dev/sdb1

Пример вывода команды:

resize2fs 1.43.4 (31-Jan-2017)
The filesystem is already 2620595 (4k) blocks long.  Nothing to do!

Перезагрузка и монтирование

При загрузке система автоматически смонтирует диск для хранения данных:

~ # df -h
Filesystem                Size      Used Available Use% Mounted on
none                    281.3M    324.0K    281.0M   0% /dev
/dev/sda2               392.3M    384.6M      3.8M  99% /offload
/dev/sda3                14.1M    915.0K     12.9M   6% /cf
/dev/sdb1                 9.8G     73.3M      9.2G   1% /tmp/123

Резервный интернет и перерегистрация провайдеров

Настройка резервного интернета

Если АТС работает за NAT и серый публичный IP адрес изменился, то АТС не сможет получить входящий вызов пока не пройдет регистрация на стороне провайдера, по умолчанию это может занять от 2х до 6 мин.

Создание скрипта проверки IP

  1. Подключитесь к MikoPBX по протоколу SSH (документация о различных способах подключения — здесь)

  2. Создайте новый файл скрипта командой:

cat > /storage/usbdisk1/mikopbx/custom_modules/update_ip.sh

Система запросит ввод с клавиатуры, вставьте содержимое скрипта:

#!/bin/bash
# Файл для хранения предыдущего IP
IP_FILE="/tmp/last_ip.txt"
# Команда для получения текущего IP
CURRENT_IP=$(/usr/bin/curl -s https://checkip.amazonaws.com)
# Проверка, существует ли файл с предыдущим IP
if [ -f "$IP_FILE" ]; then
    LAST_IP=$(cat "$IP_FILE")
else
    LAST_IP=""
fi
# Сравнение текущего IP с предыдущим
if [ "$CURRENT_IP" != "$LAST_IP" ]; then
    /bin/busybox logger -t 'UpdateIP' "IP изменился: $LAST_IP -> $CURRENT_IP";
    echo "$CURRENT_IP" > "$IP_FILE"
    # Выполнение команды Asterisk
    /usr/sbin/asterisk -rx 'pjsip send register *all'
fi
  1. Нажмите CTRL + D для завершения ввода.

  2. Сделайте файл исполняемым:

chmod +x /storage/usbdisk1/mikopbx/custom_modules/update_ip.sh

Планирование сценария перерегистрации

  1. Перейдите в web-интерфейс MikoPBX -> "Система" -> "Кастомизация системных файлов":

Раздел "Кастомизация системных файлов"
  1. Откройте для редактирования файл /var/spool/cron/crontabs/root :

Редактирование файла crontabs/root
  1. Добавьте задачу в конец файла /var/spool/cron/crontabs/root

*/1 * * * * /storage/usbdisk1/mikopbx/custom_modules/update_ip.sh > /dev/null 2> /dev/null

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

Планирование задачи

В системном логе system/messages отобразиться информационное сообщение об изменении IP.

Закончилось место на доп. диске, перенос данных на новый диск

Постановка задачи

MikoPBX установлена на отдельно выделенный сервер по инструкции. В качестве дополнительного диска для хранения записей разговоров (диск storage) подключен 4-ый раздел основного диска (/dev/sda4), где установлена MikoPBX. Свободное место на 4-ом разделе диска закончилось. Необходимо подключить к MikoPBX в качестве диска storage отдельный диск (/dev/sdb) и перенести на него все записи разговоров, которые ранее хранились на 4-ом разделе основного диска.

Решение

  1. Подключитесь к MikoPBX через с помощью SSH по инструкции:

SSH подключение
  1. Перейдите в консоль - для этого выберите: [9] Console (Shell)

  2. Отключите storage диск «sda4»:

/etc/rc/freestorage;
  1. Подключаем новый диск.

php -f /etc/rc/connect.storage;