АТС на своём сервере, Ubuntu 24.04
Телефония, которая работает на вашем сервере
MonoPbx — SIP-АТС с ядром на Rust, звуком через rtpengine, консолью в браузере и приложениями для iOS, Android и macOS. Ставится одной командой. Записи разговоров, история звонков и настройки остаются у вас на диске.
Мы сделали её, потому что хотели АТС, которую можно поднять за один вечер и через год всё ещё понимать, как она устроена.
7 дней бесплатно, дальше по лицензии.

Что внутри
В каждой установке есть всё. Никаких редакций и платных модулей.
- Звонки
SIP-транки и DID, план набора, который приводит набранный номер к E.164, рабочее время, переадресация, перевод, парковка и перехват. B2BUA свой, на Rust; звук идёт через rtpengine.
SIP 5060 UDP/TCP · TLS 5061 · WSS /sip
Opus · G.722 · G.711 · G.729- Очереди
Очереди и группы вызова, обратный звонок из очереди, табло и инструменты супервизора. Оператор входит в очередь и выходит из неё кодом с любого телефона.
*62 вход · *63 выход
- IVR и сценарии
Голосовые меню с донабором номера и библиотека приветствий: загрузите MP3, WAV или Ogg либо запишите голос прямо в браузере. Если меню мало, нарисуйте сценарий на холсте, прогоните тестовый звонок и опубликуйте новую версию.
- Голосовая почта и запись
Личные и общие ящики, голосовая почта на e-mail. Запись по правилу или по кнопке, с предупреждением о записи, паузой, сроком хранения и юридическим удержанием. Записи на диске зашифрованы.
- Общий inbox
SMS, WhatsApp, Facebook Messenger, Telegram и чат для вашего сайта приходят в один общий ящик. Рядом — внутренний чат команды.
- Настольные телефоны
Автонастройка по MAC-адресу для Yealink, Grandstream, Cisco MPP, Fanvil, Snom, Poly и Htek, с линейными и BLF-кнопками. Один раз пропишите DHCP option 66 — новые телефоны настроятся сами.
https://<ваш сервер>/prov/

- Факс
PDF отправляется из веб-клиента. Входящие факсы приходят на e-mail.
- Отчёты
История звонков и CDR в ClickHouse, отчёты по очередям и операторам, выгрузка в CSV, XLSX и PDF. Журнал аудита и история изменений, из которой можно откатить настройку.
- Несколько компаний
На одной установке можно держать много компаний, у каждой свои пользователи, номера и настройки; в PostgreSQL они разделены построчно.
- API
REST API с документом OpenAPI, подписанные вебхуки, WebSocket с событиями и MCP-сервер для ИИ-инструментов.
- ИИ, если нужен
Выключен, пока компания сама его не включит. Голосовые агенты как шаг сценария, расшифровки, саммари звонков и подсказки оператору прямо во время разговора. Ключ ваш: по умолчанию Anthropic Claude, либо любой API, совместимый с OpenAI.
- Языки
Консоль и приложения работают на английском, испанском (Мексика), португальском (Бразилия), французском, немецком, итальянском, русском, китайском и японском.
Каждый сервисный код — это настройка
Сервисные коды начинаются со * и по умолчанию такие, как ниже. Компания может поменять любой на странице «Коды набора»; изменение действует со следующего звонка. Телефон в браузере берёт настоящие коды компании.
| Набрать | Что произойдёт |
|---|---|
| *00 … *09 | Припарковать звонок на место 0–9 |
| *10 … *19 | Забрать самый давний звонок с этого места |
| *20*102 | Перехватить звонок, который звонит на 102 |
| *61 / *60 | «Не беспокоить»: включить / выключить |
| *86 | Своя голосовая почта |
| *22 | Тестовый звонок: АТС сбросит и перезвонит вам с музыкой |
| *62 / *63 | Войти во все свои очереди / выйти из них |
| *35 / *36 | Принудительно открыть / закрыть своё рабочее время |

MonoPhone — в телефоне, который и так у всех в кармане
Нативные приложения для iOS, Android и macOS. Для остальных — WebRTC-софтфон прямо в веб-клиенте.
Входящий звонок будит телефон через VoIP push на iOS и высокоприоритетное сообщение на Android, так что держать приложение открытым не нужно. Вход — по QR-коду из веб-клиента. SIP-пароли никто не вводит.
Разговор не обрывается, когда телефон переходит с Wi-Fi на мобильный интернет. Удержание, перевод, парковка, запись, второй звонок, голосовая почта, присутствие и чат — всё в приложении. CarPlay и Android Auto тоже поддерживаются.
iOS · Android · macOS · Браузер (WebRTC) · CarPlay · Android Auto
С чем работает
Карточка звонящего, запись звонков и звонок по клику в вашей CRM и хелпдеске. Учётные данные запечатываются ключом компании и больше не показываются.
Уже сейчас: HubSpot, Salesforce, Zoho CRM, Pipedrive, Odoo, Zendesk, Jira, любая CRM с HTTP API, каталоги Microsoft 365 и LDAP / Active Directory, вход через OpenID Connect, Twilio или любой HTTP API для SMS, WhatsApp, Messenger, Telegram, вебхуки, MCP.
В разработке, ещё не выпущено: Microsoft Teams, Kommo, Битрикс24, Zapier, Make, n8n, Freshdesk, ServiceNow, Slack, Shopify, WooCommerce, Mercado Libre, Stripe, Mercado Pago, SCIM, расширение для браузера.
Установка
На чистом сервере с Ubuntu 24.04 и публичным IP выполните:
curl -fsSL https://ilinaya.github.io/monopbx-apt/install.sh | sudo bash
Для сертификата Let’s Encrypt установщик попросит e-mail. Заодно укажите свой домен; без --domain сервер получит имя <ip>.sslip.io:
curl -fsSL https://ilinaya.github.io/monopbx-apt/install.sh | sudo bash -s -- --domain pbx.example.com --email you@example.com
Дальше
- Откройте консоль. В конце установщик печатает адрес консоли и одноразовую ссылку настройки. Потеряли её? sudo monopbx setup-url выдаст новую.
- Создайте аккаунт. E-mail, пароль, затем код из приложения-аутентификатора. Это первый администратор вашей АТС.
- Начинается 7-дневный бесплатный период. Всё уже включено. Добавьте SIP-транк, заведите внутренние номера и войдите в MonoPhone по QR-коду.
curl -fsSL https://ilinaya.github.io/monopbx-apt/install.sh | sudo bash -s -- --domain pbx.example.com --email you@example.com
==> Prerequisites
==> MonoPbx APT repository: https://ilinaya.github.io/monopbx-apt
signing key verified: 320D C78E FDC8 439C 04F5 FCA6 3E87 FE3D 4C71 5372
==> Installing monopbx (with Ubuntu's docker.io and docker-compose-v2 unless Docker is already installed)
monopbx 0.1.0~edge
==> monopbx setup --domain pbx.example.com --email you@example.com
…
==> MonoPbx is ready
console: https://pbx.example.com
web softphone: wss://pbx.example.com/sip
SIP: pbx.example.com port 5060 (UDP/TCP), 5061 (TLS)
first admin: open the single-use setup link printed above (.../setup#token=...)
manage: monopbx status | logs | sudo monopbx backup | upgrade | uninstall
Требования
- Система
- Ubuntu 24.04 LTS, amd64. На других системах установщик останавливается и ничего не меняет.
- Сервер
- 2 CPU, 4 ГБ RAM, 20 ГиБ свободно в /var/lib
- Сеть
- Публичный IP. DNS-имя — по желанию.
Порты
80/tcp | Проверка для сертификата, редирект на HTTPS |
|---|---|
443/tcp | Консоль, API, телефон в браузере (wss://…/sip) |
5060 udp+tcp | SIP |
5061/tcp | SIP поверх TLS |
30000–40000/udp | RTP-звук. Без него звонок соединится, но никто никого не услышит. |
Если включён ufw, установщик сам откроет эти порты. В облачном файрволе откройте те же.
Не Ubuntu? Есть сборка для Docker Compose (в том числе для arm64) и обычные манифесты Kubernetes с Kustomize. Инструкция для Docker Compose · Инструкция для Kubernetes · Полная инструкция по установке
Цена
Вы платите за одновременные звонки, а не за пользователей. В любом тарифе пользователей сколько угодно и есть все функции: ИИ-агенты с вашим ключом, контакт-центр, общий inbox, приложения и интеграции.
| Одновременных звонков | В год (USD) |
|---|---|
| 4 | 199 $ |
| 8 | 249 $ |
| 16 | 499 $ |
| 32 | 899 $ |
| 64 | 1 599 $ |
| 128+ | Напишите нам |
- Звонки между вашими собственными телефонами не считаются.
- Помесячная оплата выходит примерно на 20% дороже.
- Несколько компаний на одной установке: те же тарифы плюс 5 $ за компанию в месяц.
- Любой тариф начинается с 7 бесплатных дней после установки. Лицензия покупается в консоли.
Лицензия по числу одновременных звонков, как у 3CX, и все функции сразу включены.
Где лежат ваши данные
- У вас на диске
- Настройки, записи, голосовая почта, чаты и история звонков хранятся в вашем PostgreSQL, вашем ClickHouse и вашем хранилище. Звонки через нас не ходят.
- Одно исключение: push
- Чтобы разбудить телефон при входящем звонке, ваш сервер отправляет уведомление через push-релей MonoPbx. С флагом --no-relay приложения звонят, только пока открыты.
- Шифрование на диске
- Записи и файлы по умолчанию хранятся зашифрованными. Ключи CRM и провайдеров запечатаны ключом компании.
- Вход
- Двухфакторный вход, SSO через OpenID Connect и список разрешённых IP для администраторов.
- SIP-периметр
- Блокировка по странам, белые и чёрные списки, автоматические баны и STIR/SHAKEN для номера звонящего.
- Резервные копии
- Зашифрованные, по расписанию, восстанавливаются на новый сервер. sudo monopbx backup снимет копию прямо сейчас.
Вопросы
Можно ставить в продакшен?
Пока мы не выпустили первый релиз, в APT-репозитории лежат предварительные сборки (0.1.0~edge). В документации на каждой странице прямо написано, что уже работает, а что только запланировано. Сначала попробуйте на запасном сервере.
Что будет через 7 дней?
Вы покупаете лицензию в консоли — по числу звонков, которые нужны одновременно. Цены — выше, в разделе «Цена».
Нужен ли свой домен?
Нет. Без --domain сервер получает имя на sslip.io по своему IP и всё равно получает настоящий сертификат. Свой домен можно подключить, когда он появится.
Как обновляться?
sudo apt-get upgrade. Пакет сначала делает pg_dump, затем прогоняет миграции и самопроверку, а если что-то пошло не так — сам откатывается на прошлую версию.
Какие настольные телефоны подходят?
Есть шаблоны автонастройки для Yealink, Grandstream, Cisco MPP, Fanvil, Snom, Poly и Htek. Любой стандартный SIP-телефон можно зарегистрировать вручную.
Каких ИИ-провайдеров можно подключить?
По умолчанию Anthropic Claude, либо любой API, совместимый с OpenAI chat completions. Ключ у каждой компании свой. ИИ выключен, пока компания его не включит.