Mumble is an open source VoIP system popular with gamers. As an alternative to Teamspeak that autoadjusts your volume and normalizes audio so there is no super loud or really quiet in chat sessions. On the Banana Pi, you can create your own private Mumble server to share with friends, family or gaming crew. A common complaint of hosting your own Mumble server is that your IP changes periodically. Then you have to find out your new public IP address and tell your friends to use the new IP. With this guide and free dynamic DNS that headache will be gone. You simply get a free dynamic DNS address like htpcguides.crabdance.com which is linked to your IP at home. The Banana Pi will update the dynamic DNS address every 10 minutes. Then you simply share the dynamic DNS address with your friends and they use that instead of the IP address. On top of this added convenience I show you how to protect your Mumble server with a password and brute force protection to ward off gaming trolls. This mumble server tutorial was tested on Debian Wheezy and Jessie, should work on Ubuntu as well.
I recommend using Igor's armbian images if you use a LeMaker Banana Pi model. For other Banana Pi models use Bananian or whatever you are comfortable with. You can manage the Banana Pi Mumble server using your SuperUser account from your Windows or Mac computer running a Mumble client.
Pi Unit | ||||||||
---|---|---|---|---|---|---|---|---|
Raspberry Pi 3 | Quad Core | |||||||
Raspberry Pi 2 | Quad Core | |||||||
Raspberry Pi | Single Core | |||||||
Banana Pi | Dual Core | |||||||
Banana Pi Pro | Dual Core |
Install + Configure Mumble Server Banana Pi + DDNS
Install Mumble Server on Banana Pi
Update and upgrade your packages
sudo apt-get update && sudo apt-get upgrade -y
Install the Mumble server package from the repository
sudo apt-get install mumble-server -y
Do some initial configurations for the Mumble server
sudo dpkg-reconfigure mumble-server
Say Yes to starting Mumble on boot and press Enter
Allow the Mumble server to have higher priority to reduce likelihood of lag latency
Set the SuperUser password, this is the account and password you can use to manage your Mumble users from your Mumble client
Configure Mumble Server on Banana Pi
First back up the Mumble configuration file.
sudo cp /etc/mumble-server.ini /etc/mumble-server.bak
Now edit the Mumble configuration file
sudo nano /etc/mumble-server.ini
Uncomment these lines by deleting the preceding # character so it looks like below.
autobanAttempts will ban an IP address after 7 failed attempts inside the autobanTimeframe (120 seconds or 2 minutes).
They will be banned for the length of autobanTime (600 seconds or 10 minutes)
# How many login attempts do we tolerate from one IP
# inside a given timeframe before we ban the connection?
# Note that this is global (shared between all virtual servers), and that
# it counts both successful and unsuccessful connection attempts.
# Set either Attempts or Timeframe to 0 to disable.
autobanAttempts = 7
autobanTimeframe = 120
autobanTime = 600
If you want a custom welcome message you can adjust the test here
# Welcome message sent to clients when they connect
welcometext="<br />Welcome to the HTPCGuides Banana Pi Mumble server running <b>Murmur</b>.<br />
If you are interested in having a more secure Mumble server you should consider changing the default port. Trolls may scan and attempt to automatically connect to Mumble servers on the default port which could ruin your gaming experience. You will have to tell your users the correct port if you do change this – it can be any number between 1 and 65535, but avoid using standard port numbers for other services like 21, 22, 80 and 8080.
# Port to bind TCP and UDP sockets to
port=64738
For additional security you set a Mumble server password, your friends will need this password when connecting to the Mumble server.
# Password to join server
serverpassword=htpcguides.com
Maximum users is how many users can be connected to your Mumble server simultaneously.
# Maximum number of concurrent clients allowed.
users=10
This is the bit rate used by the Mumble server. The higher the bits per second the more CPU required to convert voice to data and back again. If the sound lags then lower this value, if you want better quality you can try raising this value.
# Maximum bandwidth (in bits per second) clients are allowed
# to send speech at.
bandwidth=72000
Ctrl+X, Y and Enter to save the Mumble configuration
sudo service mumble-server restart
Time to use a Mumble Client and connect to your Banana Pi Mumble Server locally on your home network
Get your Banana Pi IP address with this command
ip address
Find your eth0 or wlan0 section, your local IP is the address after inet shown highlighted in red below.
You should consider using static DHCP or setting a static IP address for the Banana Pi in /etc/network/interfaces
as it will make port forwarding much easier.
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether b8:27:eb:f4:41:05 brd ff:ff:ff:ff:ff:ff
inet 192.168.40.101/24 brd 192.168.40.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::ba27:ebff:fef4:4105/64 scope link
valid_lft forever preferred_lft forever
Now connect using the standard port or the custom port you set using a Mumble client.
http://ip.address:64738
Now make it easier for your friends to find your server without memorizing your IP address by telling your Banana Pi to update your free Dynamic DNS address with your IP address as it changes.
Remember to open the Mumble port on your router and forward it to your Banana Pi.
You can administer your users with the SuperUser account and the password you set earlier.