Saturday, June 27, 2015

Install & Configure Mumble Server (Murmur) on Ubuntu

"Mumble is a voice chat application for groups. While it can be used for any kind of activity, it is primarily intended for gaming. It can be compared to programs like Ventrilo or TeamSpeak. People tend to simplify things, so when they talk about Mumble they either talk about "Mumble" the client application or about "Mumble & Murmur" the whole voice chat application suite." [1]

Recently my Raspberry Pi broke down at home that was serving a small Mumble server (this is called Murmur). Since I am away from home I cannot fix it so I have decided to buy a VPS sever and run it off from there. I have found an amazing VPS provider that sells VPS plans starting from 9.99€/year with decent configuration (Affiliate link). This guide is for all those who want to easily set up and configure a server "ready to go" as fast as possible.

Installation

Installing Murmur (mumble server) is straightforward in Ubuntu, it can be done via the pat repository through apt-get commands.
Update your repository and packages that might be out of date
sudo apt-get update
sudo apt-get upgrade
Install and do an initial configuration on mumble-server
sudo apt-get install mumble-server
sudo dpkg-reconfigure mumble-server
The images below show what you will be prompted when running the dpkg-reconfigure command.
Select yes if you want mumble-server to start upon boot. This is a useful feature just in case the server or your OS crashes and otherwise you would forget to start your services.
Generally set this to "yes" as well to increase performance and audio quality of your server.
Finally, set a SuperUser password. This will be only used for logging in with the root account called "SuperUser" and administering channel properties.


The mumble server is now up and running, however it is not fully configured. Next is to set server password, audio quality, port and so on. Proceed to the next step.

Configure your Server

Mumble server has a single configuration file for interest for us located in /etc/mumble-server.ini. This file has to be edited with any kind of text editor of your liking.The configuration file is self-explanatory and there is also a complete documentation on it [2].
sudo nano /etc/mumble-server.ini
There are many settings here that you can tweak, however the  most important ones (for a quick setup at least) are the following.

welcometext

This is the welcome message that will be displayed to clients when joining the server. The mumble client shows this message in the standard message window on the left side of the client.
welcometext="your welcome message comes here"
You can use standard html syntaxin the message to display something more than a plain text. Some examples:
<b>bold</b> - makes enclosed text bold
<i>italic</i>  - makes enclosed text italic
<br /> - inserts a line break

port

The port where users have to connect to the server. If you change the default port, make sure to let your users know.
port=64738

serverpassword

Quite obviously, this is the server password users need to connect. Set it to something strong as the client is able to remember it, so users will not be promoted to enter this on every connection.
serverpassword=superstrongpasswordyeah

bandwidth

This is the audio bandwidth per user. The default is 70'000 bits/s and the higher you set this, the better the audio quality. Setting it higher to 130'000 has no effect, I usually go with 128'000 bits/s.
bandwidth=128000

users

Defines the maximum number of users allowed on the server. If you are running a small server for a handful of people, this probably isn't so important for you, although setting it to 20-50 wouldn't hurt anyway. It becomes important when you are running a larger server and your bandwidth is limited.
users=50

Apply Changes

In order for the changes to take effect you have to restart the mumble server
sudo service mumble-server restart
There are of course a lot more settings, but these initial points are probably the most important. Feel free to play around.

Managing Channels

Once everything has been set up on the server side it is time to log in with a client and start configuring the channels. For starters, there will only be 1 root channel on the server.By default only the SuperUser (the mumble servers "root" user) has the right to add, delete and edit channels. So it is useful to give your account (the one you will personally use on your server) administrator rights. This saves the hassle of logging in all the time with the root account. To do this, follow these steps, which are also nicely explained in the wiki [3].

  1. Open a mumble client, navigate to Configure/Settings and check the "Advanced" checkbox at the bottom left corner.
    Configure/Settings window after enabling Advanced view by checking the checkbox at the bottom left corner of the window.
  2. Pick a username and connect to your server at the server's IP address, with the specified port and server password. 
  3. Click on Self/Register, which will lock your username on the server.
  4. Disconnect from the server.
  5. Reconnect to the server, however use the following username & password,
    username:SuperUser
    password:<the one you set in dpkg-reconfigure mumble-server>

    In case you forgot the SuperUser password, don't worry. Log in to your server and re-run sudo dpkg-reconfigure mumble-server

    At this point you should be logged in as SuperUser and you have the right to create and edit channels. Simply right-click a channel and see what options you have.
  6. To give administrator rights to your user account select the root channel, right-click and select Edit.
  7. Go to the Groups tab and select admin from the dropdown menu. Then at the bottom of the window type your username into the field and click Add. See the image below.
    Root>Edit>Group window showing my user account added to the admin group. Afterwards, I can edit channels with my everyday user account.  
  8. Save changes by clicking OK. Now you can simply log out and log back in with you user account.
Editing channels is simply done by right-click/edit. You can also add new channel and sub-channels by selecting Add from the menu. Configure a server and channel structure of your liking!

But wait! There's more!

If you want to learn more about channel settings, groups and administration I strongly suggest watching the video below (10 minutes and you learn a lot). Groups and permissions are nicely explained and you can configure your server pretty good if you follow what is shown in the video.


If you have any questions, leave a comment below and I'll get back to you as soon as possible.

Sources

[1] - http://wiki.mumble.info/wiki/FAQ
[2] - http://wiki.mumble.info/wiki/Murmur.ini
[3] - http://wiki.mumble.info/wiki/Murmurguide#Becoming_Administrator_and_Registering_a_User

1 comment: