Instalar Murmur (Mumble) no CentOS 7
Mumble é uma aplicação gratuita, muito usada por jogadores, que permite comunicação por voz durante partidas. A arquitetura é cliente-servidor: o cliente Mumble conecta-se ao servidor Murmur. Murmur oferece canais hierárquicos e áudio de baixa latência e alta qualidade. Este guia mostra como instalar o Murmur estático em um servidor CentOS 7 e deixá-lo funcionando com systemd.
Objetivo e variantes de pesquisa
- Instalar Murmur no CentOS 7
- Configurar Mumble server (Murmur)
- Murmur systemd CentOS 7
- Abrir porta 64738 no firewalld
- Instalar murmur-static no Linux
- Solucionar problemas Murmur CentOS
Pré-requisitos rápidos
- Acesso root ou sudo no servidor CentOS 7
- Conexão à Internet para baixar o tarball
- Firewall firewalld ativo (ou entenda como adaptar para iptables)
- Conhecimentos básicos de systemd e edição de arquivos (vi/nano)
1. Configurar o firewalld
O Murmur usa por padrão a porta 64738 (TCP e UDP). Antes de instalar, permita essa porta no firewalld. Se usar outra porta, substitua 64738 pelas portas desejadas.
Abra/crie um serviço para o Murmur no firewalld:
sudo vi /etc/firewalld/services/murmur.xml
Cole o seguinte (atenção às aspas corretas ao colar):
Murmur
Mumble Server
Adicione o serviço e recarregue o firewalld:
sudo firewall-cmd --permanent --add-service=murmur
sudo firewall-cmd --reload
Nota importante: Se preferir abrir diretamente a porta (em vez de criar um serviço), use –add-port=64738/tcp e –add-port=64738/udp.
2. Baixar o tarball do Murmur
Acesse a página oficial do Mumble para obter o link da versão estável do servidor estático: http://wiki.mumble.info/wiki/Main_Page
Baixe usando wget (exemplo com versão 1.2.13):
wget https://github.com/mumble-voip/mumble/releases/download/1.2.13/murmur-static_x86-1.2.13.tar.bz2
Se o comando redirecionar (302) e salvar o arquivo, você verá uma saída semelhante no terminal — confirme que o arquivo .tar.bz2 foi salvo.
3. Extrair o tarball
Extraia o arquivo baixado:
tar -vxjf ./murmur-static_x86-1.2.13.tar.bz2
Erro comum: se ocorrer “bzip2: Cannot exec: No such file or directory”, instale o bzip2 e tente novamente:
sudo yum install bzip2
Após extrair, você deverá ver a listagem dos arquivos extraídos, por exemplo:
murmur-static_x86-1.2.13/
murmur-static_x86-1.2.13/murmur.x86
murmur-static_x86-1.2.13/murmur.ini
... (outros arquivos)
4. Instalar os arquivos em /usr/local/murmur
Crie o diretório e copie os arquivos extraídos:
sudo mkdir /usr/local/murmur
sudo cp -r ./murmur-static_x86-1.2.13/* /usr/local/murmur/
Copie o arquivo de configuração padrão para /etc:
sudo cp ./murmur-static_x86-1.2.13/murmur.ini /etc/murmur.ini
(Se o nome da versão for diferente no seu download, ajuste o caminho.)
5. Corrigir propriedade e permissões
Crie um grupo e usuário dedicados ao Murmur (sem shell de login):
sudo groupadd -r murmur
sudo useradd -r -g murmur -m -d /var/lib/murmur -s /sbin/nologin murmur
Crie o diretório de logs e ajuste dono e permissões:
sudo mkdir /var/log/murmur
sudo chown murmur:murmur /var/log/murmur
sudo chmod 0770 /var/log/murmur
Importante: use permissões restritas para evitar leitura de logs por usuários não autorizados.
6. Configurar /etc/murmur.ini
Edite o arquivo de configuração:
sudo vi /etc/murmur.ini
Altere ou adicione as linhas de PID e logfile para apontarem aos caminhos corretos:
pidfile=/var/run/murmur/murmur.pid
logfile=/var/log/murmur/murmur.log
Salve e feche (no vi: pressione i para inserir, depois :wq para gravar e sair).
Dica: reveja outras opções no murmur.ini (porta, certificados, autenticação) conforme a sua política de uso.
7. Criar a unit do systemd
Crie o arquivo de serviço para que o Murmur seja gerenciado pelo systemd:
sudo vi /etc/systemd/system/murmur.service
Cole a unit abaixo:
[Unit]
Description=Mumble Server (Murmur)
Requires=network-online.target
After=network-online.target mariadb.service time-sync.target
[Service]
User=murmur
Type=forking
PIDFile=/var/run/murmur/murmur.pid
ExecStart=/usr/local/murmur/murmur.x86 -ini /etc/murmur.ini
[Install]
WantedBy=multi-user.target
Observação: ajuste ExecStart se o binário tiver outro nome ou local.
Criar diretório de PID após reboot (tmpfiles):
sudo vi /etc/tmpfiles.d/murmur.conf
Adicione:
d /var/run/murmur 775 murmur murmur
Crie os arquivos temporários e recarregue o systemd:
sudo systemd-tmpfiles --create /etc/tmpfiles.d/murmur.conf
sudo systemctl daemon-reload
sudo systemctl enable murmur.service
8. SELinux: opções e recomendações
Por padrão o SELinux pode bloquear a inicialização do Murmur. Existem duas abordagens:
- Alternativa 1 (recomendada quando possível): manter SELinux ativo e criar políticas permissivas específicas ou usar audit2allow para gerar regras seguras.
- Alternativa 2: modificar /etc/sysconfig/selinux para SELINUX=disabled e reiniciar (isso desativa SELinux permanentemente). Esta abordagem é simples, porém reduz a segurança do sistema.
Exemplo para desativar permanentemente (somente se você entender o impacto):
sudo vi /etc/sysconfig/selinux
# Altere a linha a seguir
SELINUX=disabled
Depois reinicie o servidor.
Nota de segurança: sempre prefira criar regras SELinux específicas em vez de desabilitar totalmente quando estiver operando em ambientes de produção.
9. Iniciar e testar o serviço
Inicie o Murmur e verifique o status:
sudo systemctl start murmur.service
sudo systemctl status murmur.service
Verifique logs:
sudo tail -n 100 /var/log/murmur/murmur.log
Teste a conexão do cliente Mumble apontando para o IP ou domínio do servidor na porta 64738 (padrão).
Solução de problemas comum
- Serviço não inicia: verifique sudo journalctl -u murmur.service e /var/log/murmur/murmur.log.
- Erro de permissões em /var/run/murmur: confirme /etc/tmpfiles.d/murmur.conf e execute systemd-tmpfiles –create.
- Porta bloqueada: verifique firewall-cmd –list-all e iptables -L.
- SELinux impedindo: confira audit logs em /var/log/audit/audit.log e use audit2allow para gerar uma política.
Checklist rápido (Admin)
- Porta 64738 (TCP/UDP) liberada no firewall
- Arquivos copiados para /usr/local/murmur
- /etc/murmur.ini configurado com pidfile e logfile
- Usuário e grupo murmur criados
- Permissões de /var/log/murmur ajustadas
- systemd unit criado e habilitado
- SELinux tratado (política ou desabilitado)
- Teste de cliente realizado
Checklist rápido (Jogador / Cliente)
- Cliente Mumble instalado
- Host/IP + porta configurados (ex.: servidor:64738)
- Microfone configurado e testado
- Conexão estável (latência aceitável)
Mini-metodologia de implantação (3 fases)
- Preparação: abrir portas, reservar caminho (/usr/local/murmur), criar usuário.
- Instalação: baixar tarball, extrair, copiar arquivos, configurar murmur.ini.
- Operação: criar unit systemd, ajustar tmpfiles, habilitar, testar, validar segurança.
Critérios de aceitação
- O serviço murmur.service está ativo e em execução (systemctl status active)
- O arquivo /var/run/murmur/murmur.pid existe após start
- Logs são gravados em /var/log/murmur/murmur.log com permissões 770
- Conexão de um cliente Mumble ao IP/porta configurada é bem-sucedida
Testes / casos de verificação
- Teste 1: start/stop do serviço sem erros (systemctl start/stop)
- Teste 2: reiniciar máquina e confirmar que o serviço sobe automaticamente
- Teste 3: tentativa de conexão de cliente externo (rede) com firewall em produção
- Teste 4: simular negação de permissão nos arquivos para confirmar mensagens de erro no journal
Segurança e privacidade
- Restrinja leitura dos logs (já configurado com 0770). Logs podem conter IPs de usuários — cumpra leis locais de privacidade (por exemplo, GDPR) se armazenar dados pessoais.
- Preferível configurar TLS/criptografia no Murmur quando exposto publicamente.
- Mantenha o binário e o sistema atualizados. Se usar versões estáticas, planeje um processo de atualização controlada.
Atualização e rollback (roteiro rápido)
- Backup: copie /etc/murmur.ini e /usr/local/murmur antes de atualizar.
- Substituição: extraia nova versão para /usr/local/murmur.tmp e teste execução manualmente (./murmur.x86 -ini /etc/murmur.ini) como usuário murmur.
- Rollback: restaure o backup de /usr/local/murmur e reinicie o serviço.
Alternativas e casos em que este método falha
- Se você usa um gerenciador de configuração (Ansible, Puppet), implemente estes passos como playbooks/manifests.
- Em distribuições diferentes (Debian/Ubuntu), pacotes oficiais ou builds nativos podem ser preferíveis ao tarball estático.
- Se SELinux for obrigatório e complexo, considere criar e manter políticas específicas em vez de desabilitar.
Resumo
Seguindo os passos: abrir porta no firewall, baixar e extrair o tarball, criar usuário murmur, ajustar /etc/murmur.ini, criar unit systemd, lidar com SELinux e iniciar o serviço, você terá um servidor Murmur funcional em CentOS 7. Teste com o cliente Mumble e valide logs, permissões e disponibilidade.
Principais arquivos/locais usados:
- Binário: /usr/local/murmur/murmur.x86
- Config: /etc/murmur.ini
- Logs: /var/log/murmur/murmur.log
- PID: /var/run/murmur/murmur.pid
- Systemd unit: /etc/systemd/system/murmur.service
Boas práticas: fazer backup das configurações antes de atualizar, não desabilitar SELinux sem um plano de mitigação e proteger logs por permissões.
Materiais semelhantes

Proteja Chrome contra malware Rust EDDIESTEALER

Falha do self-service do McDonald’s dá 50% de desconto

Corrigir tela preta no League of Legends

Notes — app de anotações simples para Linux
Instalar Murmur (Mumble) no CentOS 7
