Ситуация
В сети на сегодняшний день достаточно много описаний по развертыванию IP телефонии и в основном это два варианта:
- Берём готовый дистрибутив в виде установочного образа (Elastix,Trixbox etc...) и в результате получаем рабочий комплекс не имея никаких знаний в Linux
- Устанавливаем комплекс самостоятельно занимаясь при этом компиляцией из исходных кодов и ручной правкой множества конфигурационных файлов.
У каждого варианта имеются как достоинства, так и недостатки. Если первый способ подразумевает практически нулевую подготовку и дает возможность получить результат ничего не поняв, как это работает, то второй напротив требует обширных знаний в linux и очень сложен для начинающих хоть и обеспечивает высокую гибкость и масштабирование.
Предпосылки
В процессе внедрения IP телефонии в одной из компаний с разветвленной структурой филиалов рассматривались оба варианта но оба не устраивало по ряду причин:
- Бюджет на проект не подразумевал затрат на привлечение сторонних компаний для развертывания проекта, весь комплекс телефонии было решено развертывать своими силами.
- Большинство системных администраторов в филиалах были не знакомы с Linux системами и являлись чистыми Winows админами.
- Требовалось заложить высокую гибкость системы под будущие, еще не придуманные задачи.
Перед нами встала дилемма, с одной стороны проще настроить сервера и разослать их в регионы, а с другой весь груз сопровождения такого «черного ящика» ложится на наши плечи, а нас мало. В общем нас самих такая ситуация не устраивала. Вариант заказа внедрения сторонней компании был сразу отметен руководством по финансовым причинам.
Вариант с готовым дистрибутивом тоже отпал, поскольку проект подразумевал необходимость расширения функционала телефонии под нужды компании с учетом особенностей филиалов и это расширение необходимо было выполнять силами местных сотрудников. То есть без обучения nix системам никак.
Решение
Мы решили пойти путем более сложным и трудозатратным для нас, но дешевым для компании. Начали учить системных администраторов азам работы с linux. Концепция обучения состоит в том, чтобы сотрудник мог самостоятельно взяв типовой дистрибутив linux ubutu server 12.04 сумел установить на него Asterisk, Веб управление FreePBX и систему веб-управления факсами hylafax+Avantfax, при этом использую реальные проекты в их текущих состояниях.
Кроме того, для упрощения развертывания, инструкция должна была стать максимально простой и короткой. В итоге всё свелось к простому копи-пасту и установке большинства пакетов из репозиториев. Весь процесс множество раз выверялся повторными установками. Мы постарались обеспечить принцип минимальной достаточности. Всё без чего можно обойтись пропускалось (оставлено для самостоятельного освоения сотрудниками).
Это очень облегчило задачу для Win админов которые не привыкли к консоли и позволило им почувствовать себя более уверенно, особенно когда в результате собственных действий за минимальное число попыток получали рабочую систему. Это очень воодушевляет на первых этапах.
Итак сама инструкция
После установки чистой ubuntu server 12.04 LTS по этой инструкции мы готовы к началу установки.
В первый раз ВСЕ действия выполняем копированием — вставкой ничего не меняя, как есть!
Установка LAMPA
LAMPA — (Linux,Apache,Mysql,Php,Asterisk)
В процессе установки мастер попросит задать пароль для mysql сервера. Задаем например PaSs или свой и запоминаем. Пустым пароль оставлять не надо!
FreePBX
Указываем пароль, который поставили при установке mysql
Загрузка и создание базы
Установка FREEPBX
Запускаем установку (заполняем параметры или оставляем по умолчанию):
Подтверждаем параметры
Подготовка WEB сервера
Изменение конфигурации apache2, для корректной работы с русским языком, а так-же меняем пользователя www-data от имени которого стартует apache2 на пользователя asterisk
Загрузка модулей и обновлений
Загружаем и устанавливаем свежие модули
На этом базовый функционал готов, можно подключиться к серверу по
http://адрес сервера
логин и пароль: adminНекоторые добавления и исправления
Небольшой твик для стабильной работы FOP панели, перезапускает её раз в 10 минут
Исправляем косяки с путями хранения звуков
Русификация голоса
На этом этапе базовая система считается развернутой, дальше уже идет настройка через WEB интерфейс.