MAATRIX GAMES / Блог / Как поднять сервер Mumble: пошаговая инструкция

Как поднять сервер Mumble: пошаговая инструкция

MAATRIX GAMES

Дискорд падает в самый разгар рейда, у половины клана лагает голос, а платный TeamSpeak жрёт память, которую жалко отдавать под что-то кроме игрового сервера. Mumble — это открытый войс-чат, который создавался специально для игроков: минимальная задержка, шёпот по позиционному аудио и сервер (Murmur), который спокойно живёт на 256 МБ RAM. Дальше — как поднять его на VPS с нуля, без магии и без платных лицензий.

Что такое Mumble и когда он лучше Discord/TeamSpeak

Mumble — это open-source клиент-серверный войс-чат, который развивают с 2005 года, изначально для World of Warcraft, где важна была минимальная задержка звука. Серверная часть называется Murmur (иногда её же зовут просто mumbled или mumble-server — зависит от дистрибутива), и это не Steam-приложение, а обычный демон, который вы ставите на свой VPS.

Чем Mumble отличается от привычных вариантов:

  • Discord — бесплатный и удобный, но это чужая инфраструктура: сервер может лагать в часы пик, а вы не контролируете ни задержку, ни то, что происходит с логами.
  • TeamSpeak 3 — по духу ближе всего к Mumble, но лицензия сервера платная при коммерческом использовании и от определённого числа слотов.
  • Mumble — полностью бесплатный, исходный код открыт, сервер настолько лёгкий, что в каталоге games.maatrix.io это самый нетребовательный к памяти голосовой сервер вообще.

Минус один: клиент Mumble менее «модный», интерфейс выглядит как из 2010-х, и новичков придётся полминуты поводить по настройкам. Зато задержка звука ощутимо ниже, чем у большинства альтернатив, а это критично в PvP на серверах вроде Rust или ARK: Survival Evolved, где секунда лишнего инпут-лага в войсе решает исход стычки.

Системные требования и выбор VPS

Murmur — один из самых лёгких серверов в принципе, ему не нужен даже отдельный GPU или мощный CPU: вся нагрузка — это кодирование/декодирование Opus-потоков и рассылка пакетов между клиентами.

Одновременных пользователейRAMvCPUДиск
до 20256 МБ1 vCPU5 ГБ
20–100512 МБ – 1 ГБ1–2 vCPU5–10 ГБ
100+ (несколько кланов/сообщество)2 ГБ+2+ vCPU10+ ГБ

Цифры ориентировочные — точная нагрузка зависит от битрейта, который вы разрешите в конфиге, и от того, сколько людей говорят одновременно. Для среднего клана на 15–30 человек хватает младшего тарифа с запасом: даже пиковая нагрузка редко превышает пару процентов CPU.

Если у вас уже есть VPS под игровой сервер (например, под Valheim), Mumble можно спокойно поднять рядом на том же инстансе — он почти не заметит соседства. Единственное, за чем стоит следить, — чтобы порты не пересекались с уже занятыми игровым сервером.

Поднять сервер Mumble за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Установка mumble-server (Murmur)

На Debian/Ubuntu пакет ставится в одну команду:

sudo apt update
sudo apt install mumble-server -y

Сразу после установки на Debian/Ubuntu пакет спросит через debconf, запускать ли сервис автоматически и настроить ли базовые параметры — можно смело соглашаться, тонкую настройку сделаем руками в конфиге. Проверить, что сервис поднялся:

sudo systemctl status mumble-server

На CentOS/AlmaLinux пакет может называться иначе или отсутствовать в стандартных репозиториях — тогда проще собрать из исходников или использовать готовый Docker-образ (mumblevoip/mumble-server в Docker Hub — официальный образ проекта).

Установка из исходников

Если нужна свежая версия или пакета нет в репозитории вашего дистрибутива:

sudo apt install build-essential cmake libboost-all-dev libssl-dev \
  libprotobuf-dev protobuf-compiler qtbase5-dev git -y
git clone https://github.com/mumble-voip/mumble.git
cd mumble
git submodule update --init --recursive
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -Dserver=ON -Dclient=OFF ..
cmake --build . --parallel $(nproc)

Это долгий путь (сборка займёт несколько минут даже на быстром CPU), и для 9 из 10 сценариев хватает обычного apt install mumble-server. Собирать из исходников имеет смысл, только если вам нужен билд с патчами или самая свежая версия раньше, чем она попадёт в репозиторий дистрибутива.

Настройка mumble-server.ini

Основной конфиг лежит в /etc/mumble-server.ini (в старых версиях пакета — /etc/murmur.ini). Откройте его редактором:

sudo nano /etc/mumble-server.ini

Ключевые параметры, которые стоит проверить и поправить:

# Порт сервера (TCP и UDP)
port=64738

# Пароль для входа на сервер (пусто = без пароля)
serverpassword=

# Максимум пользователей одновременно
users=100

# Приветственный текст при подключении
welcometext="Добро пожаловать на войс клана!"

# Битрейт по умолчанию (в бит/с на пользователя)
bandwidth=72000

# Логирование
logfile=/var/log/mumble-server/mumble-server.log

# Не пускать сервер в публичный список серверов Mumble
allowping=true
registerName=

По умолчанию Murmur использует базу SQLite (файл mumble-server.sqlite), чего с головой хватает для клана или небольшого сообщества — MySQL/PostgreSQL имеет смысл подключать только при сотнях каналов и десятках тысяч регистраций пользователей.

Порт 64738 — это дефолт, который Murmur слушает и по TCP (управление, аутентификация), и по UDP (сам голосовой трафик). Менять его не обязательно, но если на VPS уже занят этот порт другой службой — впишите свой, например 64000, и не забудьте поменять его же при подключении клиентом и в правилах файрвола.

После правок конфига перезапустите сервис:

sudo systemctl restart mumble-server

SuperUser-пароль и права администратора

Учётной записи SuperUser в Mumble нет «из коробки» — либо debconf спросил пароль при установке, либо нужно задать его вручную:

sudo systemctl stop mumble-server
sudo murmurd -ini /etc/mumble-server.ini -supw НОВЫЙ_ПАРОЛЬ
sudo systemctl start mumble-server

SuperUser — это не обычный игрок в списке пользователей, а суперадминистратор сервера уровня конфигурации: с этой учёткой можно менять ACL (Access Control Lists) — права на каналы, регистрацию пользователей, кик/бан прямо из клиента, без правки конфигов.

Чтобы зайти как SuperUser, в клиенте Mumble при подключении укажите имя пользователя SuperUser и пароль, который задали командой выше. После входа: правый клик по корневому каналу → Edit → вкладка Groups/ACL — там раздаются права обычным зарегистрированным пользователям (например, группа admin, которой можно доверить модерацию, не отдавая полный SuperUser-доступ).

Отдельный нюанс: SuperUser не должен быть вашим повседневным аккаунтом — заведите себе обычную учётку, зарегистрируйте её через клиент (Server → Register), а SuperUser-пароль используйте только для административных задач и храните отдельно.

Порты, файрвол и автозапуск

Mumble слушает порт 64738 одновременно по TCP и UDP — это не опечатка, оба протокола нужны: TCP — для управления и текстового чата, UDP — для самого голоса (у него ниже задержка на потерю пакетов).

На VPS с публичным IP «проброс портов» в классическом понимании (как на домашнем роутере за NAT) не нужен — достаточно открыть порт в файрволе ОС и, если у хостинга есть отдельный облачный файрвол/security group, продублировать правило там же:

sudo ufw allow 64738/tcp
sudo ufw allow 64738/udp
sudo ufw reload

Если вы поднимаете Mumble дома за роутером (а не на VPS) — тогда действительно нужен классический port forwarding: в панели роутера пробросьте TCP+UDP 64738 на локальный IP машины с сервером.

Автозапуск после установки пакета обычно включается сам, но стоит проверить явно:

sudo systemctl enable mumble-server
sudo systemctl is-enabled mumble-server

Это гарантирует, что после перезагрузки VPS (плановой или после апдейта хостинга) сервер поднимется сам, а не оставит клан без войса до вашего ближайшего логина по SSH.

Подключение клиентом

Официальный клиент скачивается с mumble.info для Windows/macOS/Linux, есть и мобильные клиенты (Mumla для Android, Mumble для iOS). Первый запуск:

  1. Установить и запустить клиент Mumble.
  2. Server → Connect → Add New...
  3. Указать: Label (любое имя для себя), Address (IP или домен вашего VPS), Port64738, Username.
  4. Если задан serverpassword — ввести его в поле Password.
  5. При первом подключении клиент спросит подтвердить самоподписанный SSL-сертификат сервера — это нормально, Mumble по умолчанию шифрует весь трафик TLS-сертификатом, который сгенерировал сам при первом запуске.

Если хотите заменить самоподписанный сертификат на «настоящий» (например, от Let's Encrypt, чтобы не было предупреждения при первом коннекте), пропишите пути в конфиге:

sslCert=/etc/letsencrypt/live/ваш-домен/fullchain.pem
sslKey=/etc/letsencrypt/live/ваш-домен/privkey.pem

и перезапустите сервис. Для игрового войса это опционально — предупреждение о самоподписанном сертификате клиент показывает один раз и запоминает отпечаток (fingerprint) сервера навсегда.

Поднять сервер Mumble за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Частые вопросы

Mumble — это то же самое, что и приложение Mumble в Steam?

Нет, путаница возникает из-за похожего названия. Официальный Mumble — независимый open-source проект, качается с mumble.info, при чём тут вообще Steam — не связано никак.

Нужен ли отдельный VPS под Mumble, если уже есть игровой сервер?

Необязательно. Murmur настолько лёгкий (от 256 МБ RAM), что спокойно живёт рядом с игровым сервером на одном инстансе — просто следите, чтобы не пересекались порты.

Как забрать бэкап базы пользователей и каналов?

Скопируйте файл mumble-server.sqlite (обычно в /var/lib/mumble-server/) вместе с конфигом mumble-server.ini и сертификатами — этого достаточно для полного восстановления сервера на новом хосте.

Почему в клиенте звук есть, а меня никто не слышит (или наоборот)?

В 9 случаях из 10 проблема в файрволе: открыт TCP, но забыт UDP (или наоборот). Голос идёт по UDP — если он заблокирован, вы увидите себя в списке канала, но звук не пройдёт в обе стороны.

Сколько людей выдержит младший тариф?

Для клана в 10–20 человек с обычной болтовнёй в войсе за игрой хватает конфигурации от 256 МБ RAM — узкое место у Mumble почти никогда не CPU и не RAM, а полоса канала при большом количестве говорящих одновременно с высоким битрейтом.