mumble logo

How to Install & Set up Mumble Server (murmur) on CentOS

In this tutorial, I will show you how you can install, set up, and configure your very own mumble server in CentOS Linux within minutes. I have covered this topic before but that was for mumble server on Ubuntu & Debian, the installation process is quite different for CentOS based systems.

On CentOS, there is no mumble-server package in the base repos. You either need to manually unpack the git package of mumble-server (recommended way); Or you need to add a repository to your CentOS install that has the mumble-server package.

Here in this post I am going to show my recommended way of installing murmur (mumble server); That is by using the latest package from official mumble git.

Make sure that your CentOS install is up-to-date by running sudo yum update. It is not necessary but is highly recommended as outdated packages can cause problems and compromise stability and safety of the server.

Installing mumble-server on CentOS (Manual Unpacking & Set up)

As CentOS is a server-oriented Linux distribution, we will be using the terminal to do all the work.

1. First, we will need to fetch the latest murmur (mumble server) package from the git page of mumble. To do so, type the following command in the terminal.

wget https://github.com/mumble-voip/mumble/releases/download/1.3.1/murmur-static_x86-1.3.1.tar.bz2

(Note: Please make sure to check that you are downloading the latest murmur version. I have used the version 1.3.1, you can visit this link to check if any new version is available and adjust the command above accordingly.

2. Install the bzip2 utility to unpack the archive that we just downloaded. Type:

sudo yum install bzip2 -y

(Note: sudo is only needed if you are not running as the root user)

3. Use this command to unpack the archive:

tar -jxf murmur-static_x86-1.3.1.tar.bz2

Verify that the package has successfully extracted by using the ls command.

4. Add a user & usergroup for murmur.

sudo groupadd -r murmur

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

5. We also need to add a directory for murmur to operate in.

sudo mkdir /usr/local/murmur

sudo mkdir /var/log/murmur

6. Change the owner of the new directory to murmur.

sudo chown murmur:murmur /usr/local/murmur

7. Now copy the murmur files to the directory that we created using:

cp -r murmur-static_x86-1.3.1/* /usr/local/murmur/

Also copy the config file using:

cp murmur-static_x86-1.3.1/murmur.ini /etc/murmur.ini

8. Next, we set the log file.

sudo touch /var/log/murmur.ini

sudo chmod 0770 /var/log/murmur.ini

9. In order to launch the mumble server, we need to create an systemd service entry for murmur. In terminal, type:

sudo nano /etc/systemd/system/murmur.service

Paste following text there and save the 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

With this, we are done with the installation of mumble server (murmur), we now need to configure some files.

Configuring the murmur server

First, open terminal and type:

sudo nano /etc/murmur.ini

This will open the configuration file for murmur that we need to configure in order to connect to our server.

Here are some options that you can configure to your liking:

(Note: You will need to uncomment the text to use it, e.g. change #name= to name=)

welcometext=

Custom welcome text that users will see when they enter the server.

port=64738

This is for the port that mumble-server is going to use, you can use the default port or set a custom one (0 to 65535). Make sure that you don’t use a port that another service is using.

users=20

This indicates max numbers of users that can be on server at a given time.

serverpassword=P@ssWorDg0esH3r3

This is the password that users will need to enter in order to join your server.

With this, we are done with setting up the server, now we need to configure the firewall. If you have a firewall setup on your CentOS install, you may not be able to login into your server. Here is how you can fix that.

Setting up firewalld to allow traffic through murmur ports

Firewalld is the default firewall package that comes with CentOS. If you have enabled this service, you will need to allow the port for mumble-server in firewalld.

Here are the commands that you will need. Use sudo in front of the commands if not using the root user and change the port number if you have set a custom one.

firewall-cmd --zone=public --add-port=64738/tcp --permanent
firewall-cmd --zone=public --add-port=64738/udp --permanent

Lets restart the firewall for the changes to take effect.

firewall-cmd --reload

We are now ready to start our mumble server for the very fist time. In terminal, type:

sudo systemctl start murmur.service 

This will start the mumble-server service and you should now be able to connect to it via any mumble client of your choice. After this command, you can also type:

 sudo systemctl enable murmur.service

This will automatically start the mumble server when you boot into your CentOS install.

How to get/assign Admin Privileges in your Mumble Server on CentOS?

In order to promote a user to admin or assign groups to other people, you first need access to the SuperUser account. On CentOS, you can find the password for the superuser in the log file of murmur. Here in our case, we have set the log file to /var/log/murmur.ini. Open this file using nano by using:

nano /var/log/murmur.ini

The superuser password will be there. Copy it and login to your server by using any mumble client. Enter the username as SuperUser and use the password that you copied earlier.

Now right-click on the parent group (root) and select edit. Click on Groups and select the group admin. Now add yourself to this group to become an admin. You can also add other people to the admin group as well.

(Note: You need to be registered the username on the server before adding the username to admin group.)

How to Change the default SuperUser (Admin) Password for Mumble Server?

While you can not use a superuser account to chat in mumble, this user account holds the utmost privilege over your server. You might want to change the superuser password for security reasons.

Type this command in the console:

sudo /usr/local/murmur/murmur.x86 -ini /etc/murmur.ini -supw N3wPassw0rdHere

(Note: sudo only needed with non-root accounts)

Replace N3wPassw0rdHere with password of your choice and you are good to go.

Conclusion

This concludes my post on mumble server installation on CentOS. If you are interested, you can also check this post that I have written on mumble server (murmur) install on Ubuntu/Debian.

Comment down below if you faced any errors during the installation or if you are having any troubles following the tutorial, I will try to reply ASAP. Also, as always, suggestions and corrections are always welcome.

Leave a Reply

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