Asterisk и FreePBX для небольшого офиса: настройка и подводные камни
Продвинутое3 минРедакция Innovialabs
Коротко
FreePBX на базе Asterisk даёт офису гибкую АТС без абонентской платы за каждого пользователя, но требует администратора, правильной настройки NAT и жёсткой защиты от SIP-взлома; без админа надёжнее облачная АТС.
Коротко: стоит ли ставить свою АТС
Asterisk — движок телефонии с открытым кодом, FreePBX — веб-интерфейс поверх него. Вместе они дают внутренние номера, IVR, очереди, запись разговоров и интеграции без оплаты за каждого пользователя. Цена этой свободы — администрирование: обновления, мониторинг, защита. Если в офисе нет человека, который за этим следит, облачная АТС обычно безопаснее.
Варианты установки
- Официальный дистрибутив или установочный скрипт FreePBX — самый быстрый путь: система, Asterisk и модули ставятся согласованными версиями.
- FreePBX вручную на Linux — больше контроля, но выше риск несовместимости версий.
- Чистый Asterisk с конфигурационными файлами — для опытных: максимальная гибкость, но всё делается в текстовых файлах и диалплане.
- VPS у хостера или локальный сервер — VPS удобен для удалённых сотрудников, локальный сервер нужен, если есть аналоговые линии или жёсткие требования к хранению записей.
Для 10–50 внутренних номеров хватит скромного сервера или виртуальной машины. Больше ресурсов потребуют запись всех разговоров, транскодирование кодеков и конференции.
SIP-транки
Транк — это подключение к оператору, через которое идут внешние звонки. Настраивайте его через PJSIP: старый драйвер chan_sip в современных версиях Asterisk больше не поддерживается.
Что проверить при подключении транка:
- Тип авторизации у оператора: регистрация по логину/паролю или доверие по IP.
- Формат номеров входящих и исходящих (с кодом страны или без).
- Поддерживаемые кодеки — избегайте лишнего транскодирования.
- Настройки NAT: внешний адрес, локальные сети и диапазон RTP-портов на межсетевом экране.
Проблема «звонок есть, а голоса нет» или «слышно только в одну сторону» почти всегда связана с NAT и RTP.
asterisk -rvvv
pjsip show registrations
pjsip show endpoints
Эти команды показывают, зарегистрирован ли транк и какие телефоны в сети.
Внутренние номера, IVR и очереди
- Extensions: заведите схему нумерации заранее (например, отделы по сотням) и используйте длинные случайные пароли для каждого номера.
- IVR: держите меню коротким — 3–4 пункта и выход на оператора. Записывайте приветствия в спокойном темпе.
- Queues и Ring Groups: очередь подходит для отдела продаж или поддержки с ожиданием и статистикой, группа вызова — для простого «звонить всем сразу».
- Time Conditions: разделяйте рабочее и нерабочее время, иначе ночные звонки попадут в пустую очередь.
Запись разговоров
Записи быстро занимают диск. Заранее решите:
- сколько хранить записи и кто имеет к ним доступ;
- куда выгружать старые файлы — NAS, объектное хранилище или CRM;
- как уведомлять клиентов о записи в соответствии с требованиями законодательства.
Настройте автоматическую очистку или архивацию, иначе однажды закончившееся место остановит работу АТС.
Защита от SIP-фрода
Взломанная АТС может за ночь совершить много дорогих международных звонков за ваш счёт. Минимальный набор мер:
- Не открывайте SIP в весь интернет: разрешайте подключения только с IP оператора и через VPN для удалённых сотрудников.
- Сложные пароли для каждого внутреннего номера, без совпадения с номером.
- Fail2ban или встроенный Responsive Firewall FreePBX для блокировки перебора.
- Ограничьте исходящие маршруты: запретите международные направления, если они не нужны, или поставьте на них PIN.
- Лимиты у оператора на баланс и одновременные звонки.
- Регулярные обновления Asterisk, FreePBX и модулей.
Когда облачная АТС разумнее
- В офисе нет администратора и бюджета на сопровождение.
- Сотрудники в основном работают удалённо.
- Нужны гарантии доступности без собственного резервного сервера.
- Номеров немного, и сложная логика маршрутизации не требуется.
Своя АТС выигрывает, когда нужны глубокие интеграции с CRM, нестандартная логика звонков, полный контроль над записями или много пользователей.