Cos'è un Mumble Server?
Mumble è un'applicazione voce su IP (VOIP) open source ampiamente utilizzata nella comunità dei giochi. Mumble è costituito da un'applicazione server (nota anche come Murmur) e un'applicazione client, che viene installata per uso individuale.
Anche se può essere utilizzato per qualsiasi attività VOIP, è stato progettato principalmente pensando ai giocatori in modo che potessero comunicare collegando i loro client allo stesso server Mumble.
Caratteristiche di Mumble Server
Murmur offre un servizio a bassa latenza, una semplice interfaccia di amministrazione e richiede risorse server minime supportando un'ampia gamma di codec audio di alta qualità. Inoltre, Mumble e Murmur sono concessi in licenza BSD e sono completamente gratuiti per l'hosting commerciale.
Gli utenti finali lo adorano per la sua bassa latenza, che lo rende ottimo per l'uso in-game, nonché per le sue funzionalità, come l'audio posizionale e l'overlay in-game.
Crittografia
Il canale di controllo per la trasmissione di messaggi di chat e informazioni non importanti per il momento è completamente crittografato con TLS utilizzando AES-SHA a 256 bit, mentre il canale vocale è crittografato con OCB-AES a 128 bit.
Supporto del sistema operativo
Qualsiasi piattaforma in grado di compilare Qt 4 supporta Murmur. Al momento della stesura di questo articolo, questo include le distribuzioni Linux più popolari, oltre a Windows e MacOS X.
Il client dell'utente finale Mumble è supportato sulla maggior parte, se non su tutti i sistemi operativi più diffusi, e ci sono anche app di terze parti per Android e iOS.
Prerequisiti
- Server CentOS 7 con almeno 512 MB di RAM
- bzip2
- Porta firewall 64738 aperta per la comunicazione con i client Mumble
- SELinux disabilitato (se impedisce a Murmur di funzionare correttamente)
Installa Mumble Server
Scarica il file di installazione di Mumble Server
Mumble non è incluso nel repository ufficiale di CentOS, quindi dovrai scaricare il file di installazione da GitHub o dal sito Web ufficiale del server Mumble.
Per scaricare Mumble utilizzando una GUI, accedere al sito Web del server Mumble e selezionare per scaricare il file di installazione per Server Linux statico .
Per scaricare Mumble usando il terminale, usa il wget
comando:
wget https://github.com/mumble-voip/mumble/releases/download/1.30/murmur-static_x86-1.3.0.tar.bz2
Estrai Mumble Tarball
Ora che hai scaricato l'ultima versione stabile di Murmur, dovrai estrarre i file dal tarball. Innanzitutto, devi passare ai Download cartella. Per farlo, digita:
cd Downloads
Per estrarre il file, esegui il seguente comando:
tar -vxjf ./murmur-static_x86-1.3.0.tar.bz2
L'estrazione del tarball Murmur dovrebbe creare una directory murmur-static_x86-[murmur version].
Se, invece, ricevi un messaggio di errore come mostrato di seguito, dovrai installare il pacchetto bzip2.
tar (child): bzip2: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
Per installare bzip2 pacchetto, eseguire il comando seguente:
sudo yum install bzip2
Una volta installato bzip2, eseguire nuovamente il comando per estrarre il tarball Murmur. Se richiesto, digita Y e premi Invio per procedere.
Crea una directory /usr/local/murmur
Qui è dove copierai i file estratti dal tarball. Per creare la directory:
sudo mkdir /usr/local/murmur
sudo cp ./murmur-static_x86-1.2.19/* /usr/local/murmur/
Il passaggio successivo copierà il file di configurazione su etc/murmur.ini.
sudo cp ./murmur-static_x86-1.2.19/murmur.ini /etc/murmur.ini
Ora lavoreremo sulle regole di proprietà e autorizzazione.
Crea una directory utente e gruppo di Mumble Server, registrazione e dati
Per creare un utente e un gruppo, esegui i seguenti comandi:
sudo groupadd -r murmur
sudo useradd -r -g murmur -m -d /var/lib/murmur -s /sbin/nologin murmur
Per creare una directory di dati e registrazione, esegui i seguenti comandi:
sudo mkdir /var/log/murmur
sudo chown murmur:murmur /var/log/murmur
Per la protezione dei log, modificare i permessi assegnati alla directory dei log:
sudo chmod 0770 /var/log/murmur
Si consiglia vivamente di ruotare i registri in modo che i registri dei mormorii non possano riempire /var/log. Come root, crea un file di configurazione /etc/logrotate.d/murmur e copia e incolla quanto segue:
/var/log/murmur/*log {
su murmur murmur
dateext
rotate 4
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/systemctl reload murmur.service > /dev/null 2>/dev/null || true
endscript
}
Configura e personalizza Mumble Server
Tutte le personalizzazioni vengono eseguite nel /etc/murmur.ini
file. Prima di personalizzare qualsiasi cosa, assicurati che le impostazioni seguenti siano configurate correttamente in /etc/murmur.ini
file.
database=/var/lib/murmur/murmur.sqlite
logfile=/var/log/murmur/murmur.log
pidfile=/var/run/murmur/murmur.pid
# Reminder: When changing the port that murmur will listen to you will also need to update the firewall.
# Update the firewall by editing /etc/firewalld/services/murmur.xml
# Then run "sudo firewall-cmd --reload"
port=64738
# Comment out the following setting since the service will already be executing as the correct user:
# uname=murmur
Per modificare il messaggio di benvenuto , modifica il testo seguendo il welcome text
corda. È supportato il markup HTML di base.
Per modificare il limite utenti , trova e modifica gli utenti=100 corda. Ad esempio, se vuoi ridurre il numero di slot a 50, la stringa dovrebbe leggere users=50 . Se desideri limitare la larghezza di banda in entrata per utente , trova e modifica la larghezza di banda parametro.
Per maggiore sicurezza, decommenta autoban linee.
Crea un servizio Mumble
Crea un file di unità di sistema per gestire il server Mumble con systemd
. Crea un /etc/systemd/system/murmur.service
file con accesso root o con sudo. Una volta creato, copia e incolla quanto segue nel file:
[Unit]
Description=Mumble Server (Murmur)
Requires=network-online.target
After=network-online.target mariadb.service time-sync.target
[Service]
User=murmur
Type=forking
ExecStart=/usr/local/murmur/murmur.x86 -ini /etc/murmur.ini
PIDFile=/var/run/murmur/murmur.pid
ExecReload=/bin/kill -s HUP $MAINPID
[Install]
WantedBy=multi-user.target
I sistemi moderni eliminano /var/run
dopo il riavvio. Crea un /etc/tmpfiles.d/murmur.conf
file di configurazione per riavviare la directory pid per Murmur. Come root, copia e incolla quanto segue:
d /var/run/murmur 775 murmur murmur
Regole firewall
Per impostazione predefinita, il firewall di un server non consente al servizio di ascoltare TCP/UDP. Modifica le istruzioni di seguito di conseguenza se hai personalizzato murmur.ini per ascoltare una porta non predefinita.
Murmur
Mumble Server (Murmur)
<!– Reminder: Update /etc/murmur.ini so that it uses the same ports –>
Aggiungi la regola del firewall e poi ricarica:
sudo firewall-cmd --permanent --add-service=murmur
sudo firewall-cmd –reload
Disabilita SELinux
Alcune versioni di CentOS avranno problemi con l'esecuzione di Murmur senza disabilitare SELinux. Secondo Mumble, SELinux non impedirà a Murmur di funzionare a partire da CentOS 7.2.
Inizialmente, esegui il server Mumble con SELinux in modalità di applicazione. Se SELinux impedisce a Mumble di funzionare correttamente, la soluzione più semplice è disabilitarlo. Per disabilitare temporaneamente SELinux, eseguire il comando seguente:
sudo setenforce 0
SELinux si riavvierà al riavvio.
Per disabilita permanentemente SELinux , modifica il /etc/sysconfig/selinux
archiviare e modificare il SELINUX
linea. Dovrebbe leggere quanto segue:
SELINUX=disabled
Riavvia il server dopo aver disabilitato SELinux.
Avvia il server Mumble
Il seguente comando avvierà temporaneamente il server Mumble e lo manterrà in esecuzione fino al prossimo riavvio:
sudo systemctl start murmur.service
Per interrompere il servizio Mumble Server, esegui il comando seguente:
sudo systemctl stop murmur.service
Per indicare a CentOS di avviare automaticamente il servizio al prossimo riavvio, eseguire il comando seguente:
sudo systemctl enable murmur.service
Se noti un "processo zombi" all'avvio di Murmur, devi installare il redhat-lsb-core pacchetto.