how to install mumble server in linux

How to Install Mumble Server in Linux

Mumble is an open source VOIP (Voice over IP) used mainly by gamers to communicate with each other over a low latency server. It consists of a server application called Murmur and individual client applications, for individual use. Here are the steps to install Mumble server in Linux.


How to Install Mumble Server in Linux

Here are the steps to install Mumble server in Linux. Mumble server is known as Murmur and we will be using the two terms interchangeably in the following steps.


1. Download Mumble Server

Open terminal and run the following command to download Mumble server’s tarball file. Replace 1.3.0 with the server version of your requirement.

$ sudo wget https://github.com/mumble-voip/mumble/releases/download/1.30/murmur-static_x86-1.3.0.tar.bz2 


2. Extract Tarball

You will need bzip2 on your system to be able to extract the downloaded file. You can install it with the following command.

$ sudo yum install bzip2

Run the following command to extract the downloaded tar.bz2 file.

$ sudo tar -vxjf ./murmur-static_x86-1.3.0.tar.bz2


3. Create /usr/local/murmur folder

Next, create folder /usr/local/murmur to store the extracted files.

$ sudo mkdir /usr/local/murmur
$ sudo cp ./murmur-static_x86-1.3.0/* /usr/local/murmur/

Next, copy Murmur configuration file to /etc/murmur.ini

$ sudo cp ./murmur-static_x86-1.3.0/murmur.ini /etc/murmur.ini


4. Create User, Group and Folders for Mumble

Run the following command to create user and group.

$ sudo groupadd -r murmur
$ sudo useradd -r -g murmur -m -d /var/lib/murmur -s /sbin/nologin murmur

Create Data and Logging Directory with the following commands.

$ sudo mkdir /var/log/murmur
$ sudo chown murmur:murmur /var/log/murmur

Run the following command to protect logs.

$ sudo chmod 0770 /var/log/murmur

Next, we need to configure log rotation for murmur server so that it does not fill up /var/log. So create a file /etc/logrotate.d/murmur file

$ sudo vi /etc/logrotate.d/murmur

Add the following lines to it.

/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
}

Save and close the file.


5. Customize Mumble Server

All configurations of your Mumble server are located in /etc/murmur.ini file. You can change its parameters to customize your server.

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
...

Here are some common customizations,

  • welcome text – change welcome message by changing the string that follows welcome text
  • users – user limit
  • bandwidth – per user incoming bandwidth


6. Create Mumble Service

Create a file /etc/systemd/system/murmur.service to manage mumble server as a service.

$ sudo vi /etc/systemd/system/murmur.service

Once you have created it, copy-paste the following lines to it.

[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

Save and close the file.


7. Update Firewall Rules

If you have not configured firewall to listen to murmur’s port numbers, then run the following command to do so.

$ sudo firewall-cmd --permanent --add-service=murmur
$ sudo firewall-cmd –reload

Sometimes you may also need to disable SELinux to avoid conflict with mumble (murmur).


8. Start Mumble Service

Here are the systemctl commands to start/stop/enable murmur service.

Start Mumble Server

$ sudo systemctl start murmur.service

Stop Mumble Service

$ sudo systemctl stop murmur.service

Please note the above command will only start Mumble service till system reboot. If you want to autostart Mumble service on system reboot then, run the following command.

$ sudo systemctl enable murmur.service

In this article, we have learnt how to install & configure Mumble server in Linux.

Also read:

How to Reboot Linux Server from Putty
How to Disable/Stop Firewalld in CentOS, Redhat
How to Export PostgreSQL Table to CSV
How to Add Minutes to Datetime in Python
How to Disable Iptables in Ubuntu

Leave a Reply

Your email address will not be published. Required fields are marked *