How to Install and Set Up Mumble Voice Chat Software

A photograph of a group of people in front of their computers talking over VoIP.

Are you on the hunt for a low-latency voice chat and recording software for groups? Mumble is a popular, open-source voice-over-IP (VoIP) solution that you can run and host on almost any machine. In this article, I’m going to walk through the process of using Mumble and running your own Mumble server.

Why Use Mumble Instead of TeamSpeak and Discord?

First and foremost, Mumble is a free and open-source VoIP client and server suite. This means that every bit of code that makes up Mumble is available for anyone to look at and examine. As such, using Mumble as your communications backend gives you the reassurance and confidence that no one is snooping on your calls.

A screenshot showing the Mumble client working properly.

On top of that, Mumble offers great sound quality for little to no cost compared to other popular VoIP software. For instance, an average Discord voice call sits between 64 to 96 kb/s for its overall voice quality. In Mumble, you can easily bump it to 192 kb/s for free without any significant hit on call latency.

A screenshot showing the maximum audio quality available for Mumble.

Lastly, the developers of Mumble also provide a free and open-source server daemon. Unlike TeamSpeak and Discord, it’s very easy to run a self-hosted VoIP service inside your network with your own hardware, allowing you to take control of your communications.

Good to know: learn how to run your own Discord-like service by hosting a Matrix-compatible server on your machine.

Installing and Setting Up Mumble

To connect to a voice server that already exists on the internet, all you need is a Mumble client. For Windows and macOS, you can download the official Mumble client from the developer’s website. On Linux, you can get it through your distro’s package manager.

In Debian and Ubuntu, you can run the following command to install Mumble:

sudo apt install mumble

In Fedora, you can use the DNF to fetch and install Mumble:

sudo dnf install mumble

When first run Mumble, a wizard will walk you through the setup process. First, it prompts you to choose your audio devices. In most cases, you can leave the defaults, but you’ll probably want to change them if you have an external microphone and/or speakers.

A screenshot showing the default audio device selection for Mumble.

The next step shows an animated volume bar. Speak into the microphone and adjust the slider below it to ensure that it reaches the tip of the green bar without dipping into the red zone.

A screenshot showing the audio level tuning process for Mumble.

Adjust the slider to help Mumble differentiate between your speech and any ambient noise in the background. This will allow Mumble to only transmit audio whenever it detects a significant change in your mic’s level.

A screenshot showing the voice detection setup process in Mumble.

Select the overall quality that you want for your Mumble client. For the most part, selecting Balanced should provide you with excellent sound quality and decent latency.

A screenshot showing the different audio quality and delay for Mumble.

Click Next on the positional audio prompt, then select Automatic certificate creation on the next window to ensure that all connections inside Mumble are secure.

A screenshot showing the certificate check for Mumble servers.

With the initial setup done, Mumble will immediately prompt you to connect to a server. By default, Mumble will provide a list of publicly available servers that you can connect to.

A screenshot showing the different public servers currently available in Mumble.

Running Your Own Mumble Server in Linux

While there are plenty of public instances to join right out of the box, it’s also possible to deploy your own private server for friends and family. In this section, I’ll go through the process of deploying a Mumble Server instance using Ubuntu Server 24.04.

To get started, make sure that you have installed Docker and Docker Compose on the machine that you want to install the server on.

Confirm that your Docker instance is working properly by running the following command:

docker --version
A terminal showing that Docker is currently up and running on the server machine.

Create a new folder on your server’s home directory, then navigate inside it:

mkdir ~/mumble-server && cd ~/mumble-server

Use your favorite text editor to create a “docker-compose.yml” file for your Mumble instance:

nano ./docker-compose.yml

Paste the following block of code inside your new file:

---
version
: "3.8"
services
:
mumble-server
:
image
: mumblevoip/mumble-server:latest
container_name
: mumble-server
hostname
: mumble-server
restart
: on-failure
ports
:
- 64738:64738
- 64738:64738/udp
environment
:
MUMBLE_SUPERUSER_PASSWORD
: "YOUR-SECURE-PASSWORD-HERE"
MUMBLE_CONFIG_SERVERPASSWORD
: "YOUR-PUBLIC-PASSWORD-HERE"
MUMBLE_CONFIG_WELCOMETEXT
: "Hello, MakeTechEasier!"

Replace the value of MUMBLE_SUPERUSER_PASSWORD with a random string of characters. As the name suggests, this will serve as your server’s root password, allowing you to configure your Mumble instance.

Set the value of MUMBLE_CONFIG_SERVERPASSWORD with an easy to remember passphrase. This will serve as your server’s common password that you can share with other users.

A terminal highlighting the general server password and the admin's superuser password.

Save your compose file, then run the following command to fetch and run the Mumble server on your machine:

sudo docker compose up -d

On a side note: looking to learn more about Docker? Check out our guide to using Docker Containers today.

Connecting to Your Mumble Server

At this point, you now have your Mumble server up and running. In order to access it, open the Mumble client on your desktop, then click Add New on the Server Connect window.

A screenshot highlighting the "Add New..." button on the server selection window.

Provide the IP address of your Mumble server in the Address field, then set the Username field to “superuser.”

Type the value of the MUMBLE_SUPERUSER_PASSWORD variable in the Password field, then click OK to add the server to your client.

A screenshot highlighting the password field for the server's superuser.

Note: it’s good practice to only use the SuperUser account for administrative tasks. To create a non-privileged user, just provide any name other than “superuser” on the Username field.

Select your server under the Favorites list, then click Connect.

Mumble will send a warning that the server uses a self-signed certificate, click Yes and you’ll be on the server.

A screenshot showing the superuser account logged in to the new Mumble server.

To create a new channel, right-click on the Root, then select Add… This will bring up a small window asking you for the details of your new channel.

A screenshot showing the prompt for creating a new channel.

Click OK to create your new Mumble channel, then double-click its entry to join it.

A screenshot showing the superuser moving to the newly created voice channel.

Sharing Your Mumble Server using Tailscale

The last thing to do is to make your Mumble server accessible to your outside network. You can do this either by forwarding port 64738 on your router or create a VPN that links clients from different networks.

In this section, I’ll connect my Mumble server to Tailscale to share it outside my network. The advantage of doing this over port forwarding is it provides security for your server and allows you to host even under CGNAT.

First, install Tailscale on your server. Make sure that you’ve linked it to your account by running sudo tailscale up.

Confirm that your server is running Tailscale by checking its current status:

sudo tailscale status
A terminal showing that Tailscale is properly running by listing all the available clients in the Tailnet.

Go to your Tailscale admin page, then find your server on the list of hosts connected to the VPN.

Click the three dots icon beside your server entry, then select Share….

A screenshot highlighting the "Share..." option on the Mumble server's Tailscale entry.

Provide the email address of the user you’re inviting, then click Share.

A screenshot showing the prompt for inviting new users to a Tailscale node.

On the client’s side, click Accept device invite on the invite email and go through the onboarding process for Tailscale. Once done, login to the client machine’s Tailscale admin page and copy the IP address of the Mumble server.

A screenshot highlighting the Tailscale IP address for the Mumble server.

Open Mumble, click Add New…, then paste the Tailscale IP address on the Address field.

Fill in the username field, then click OK to save it to the client’s Favorites list.

A screenshot showing the remote Mumble client using the Tailscale IP address to log in to the Mumble server.

Lastly, connect to the remote Mumble server by double-clicking the server entry in the selection screen.

A screenshot showing Mumble working properly over Tailscale.

Learning how to install Mumble, deploy its backend with Docker, and create a private Mumble network are just some of what you can do when you’re running your own services. Take a deep dive into the wonderful and diverse world of self-hosting by checking out the best home server OSes today.

Image credit: ELLA DON via Unsplash. All alterations and screenshots by Ramces Red.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Ramces Red Avatar