56tvmao: How-to instructions you can trust. Linux How to Install and Set Up Mumble Voice Chat Software

How to Install and Set Up Mumble Voice Chat Software

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.

Content

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.

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.

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.

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.

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.

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.

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.

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.

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

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.

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.

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.

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.

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.

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

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

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

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

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.

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.

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

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.


Ramces Red
Staff Writer

Ramces is a technology writer that lived with computers all his life. A prolific reader and a student of Anthropology, he is an eccentric character that writes articles about Linux and anything *nix.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Sign up for all newsletters.
By signing up, you agree to our Privacy Policy and European users agree to the data transfer policy. We will not share your data and you can unsubscribe at any time. Subscribe

Related Post