Mumble Server 1.2.4 kompilieren und installieren

Für ein Podcastprojekt, von dem ihr in nächster Zeit bestimmt noch mehr hören werdet, habe ich einen mumble-Server in der Version 1.2.4 eingerichtet. Das Vorgehen möchte ich hier kurz erläutern.

Was ist Mumble?

Mumble ist eine Alternative zu Teamspeak bzw. Skype. Man kann in verschiedenen Kanälen mit verschiedenen Personen sprechen. Es ist quelloffen, und läuft auf den meisten Betriebssystemen.

Die Voraussetzungen

Als Voraussetzung müssen wir ein wenig Software installieren, damit wir den Mumbleserver vom Source kompilieren können.

 sudo apt-get install git build-essential qt4-dev-tools libqt4-dev libspeex1 libspeex-dev \
                libboost-dev libasound2-dev libssl-dev g++ libspeechd-dev \
                libzeroc-ice-dev ice-slice libpulse-dev slice2cpp libcap-dev \
                libspeexdsp-dev libprotobuf-dev protobuf-compiler libogg-dev \
                libavahi-compat-libdnssd-dev libsndfile1-dev libg15daemon-client-dev libxi-dev qconf qt4-qmake

Nachdem die Installation der Software abgeschlossen ist, kann man ohne größere Probleme die nächsten Schritte abarbeiten.

Ich habe für den Mumble einen neuen Benutzer angelegt, damit man es nicht mit root-Rechten ausführt ;)

sudo adduser -m -s /bin/false mumble

Wir vergeben diesem Benutzer keine Bash, da er diese nicht benötigt. Für die späteren Logins werden wir die temporär setzen. Wir loggen uns nun also als mumble-User ein.

sudo su -s /bin/bash mumble

Mumbleserver kompilieren

Zum Kompilieren brauchen wir natürlich den Sourcecode, welchen wir uns über git herunterladen und in den neuen Ordner wechseln werden.

git clone git://github.com/mumble-voip/mumble.git mumble
cd mumble

Als nächstes müssen wir dann noch die Submodule einrichten:

git submodule init
git submodule update

Als nächstes rufen wir qmake gefolgt von make auf:

qmake -recursive main.pro CONFIG+=no-client
make

Der ganze Prozess dauert einige Minuten. Danach sollte sich die Binary im release Ordner befinden. Ich habe mir zur Übersicht einen symbolischen Link ins Homeverzeichnis gepackt.

 cd ~
 ln -s mumble/release/murmurd murmurd

Mumbleserver konfigurieren

Nachdem wir alles kompiliert haben, müssen wir den Server nur noch konfigurieren. Wir kopieren uns dazu die Beispielkonfiguration ins Homeverzeichnis.

 cp mumble/scrips/murmur.ini ~/

Diese könnt ihr dann mit einem Editor eurer Wahl bearbeiten. Folgende Einträge empfehle ich zu bearbeiten:

database=murmurdb.sqlite
dbus=session
ice="tcp -h 127.0.0.1 -p 6602"
icesecretread=[PW]
icesecretwrite=[PW]
logfile=murmur.log
pidfile=murmur.pid
port=64738
host=0.0.0.0
serverpassword=[SPW]
bandwith=72000
users=100
textmessagelength=5000
allowhtml=false
registerName=[ROOT-Channel Name]
uname=mumble

Als nächstes müssen wir das Superuserpasswort setzen. Dazu führen wir einmal murmurd mit dem entsprechenden Parameter auf:

./murmurd -supw [PW]

Mit dem Superuserpasswort könnt ihr euch später einloggen, um als Admin alle Einstellungen zu bearbeiten. murmurd sollte sich nach dieser Aktion wieder beenden.

Mumbleserver starten/stoppen

Wenn die Konfiguration nach den eigenen Wünschen abgeschlossen ist, dann können wir den Server nun starten.

 ./murmurd -ini ./murmur.ini

Ein Blick in die murmur.log bzw. ein Blick in die Prozessliste sollte dann zeigen, ob der Server erfolgreich läuft.

ps aux | grep murmur

Möchten wir den Server wieder beenden, dann lesen wir einfach die pid aus der entsprechenden Datei aus und übergeben dies als Argument für den kill Befehl.

 kill $(cat murmur.pid)

Mumbleserver Webinterface

Möchten wir zur besseren Konfiguration noch ein Webinterface installieren, so führen wir folgende Schritte aus.

Wir installieren das Mumble-Django Paket (Achtung: Apache2 wird mitinstalliert)

 sudo apt-get install mumble-django

Da ich den Apache nicht wirklich leiden kann, habe ich dessen Port in der /etc/apache2/ports.conf auf 88 statt 80 gesetzt. Dies ist nicht notwendig, falls kein anderer Webserver läuft.

Als nächstes führen wir eine Konfiguration des Paketes aus:

 sudo mumble-django-configure

Die Fragen könnt ihr so ähnlich beantworten:

  1. 1
  2. 1
  3. Ice-secret aus der Konfiguration oben eingeben [PW]
  4. 1

Ihr findet das Webinterface dann unter der angegeben Domain unter der folgenden URL:

 http://[DOMAIN]:[PORT]/mumble-django/

Ihr könnt euch dort mit dem Superuser anmelden, um zur Administration zu gelangen.

Fazit

Ich hoffe ihr könnt die Anleitung ohne weitere Probleme nachvollziehen, und habt viel Spaß beim Rummumblen ;)

~ Sebastian