Difference between revisions of "Running Murmur"

From Mumble Wiki
Jump to: navigation, search
m (Web-Interfaces)
Line 1: Line 1:
 +
'''If you find anything incorrect or missing in this article feel free to add it yourself. After you register, you must wait three days before you can edit a page.'''
 
= Introduction =
 
= Introduction =
'''If you need a step-by-step guide to help you set up a Murmur server, read [[Murmurguide|this]].'''
+
'''For a step-by-step guide to setting up a Murmur server, read [[Murmurguide|this]].'''
  
 
Murmur is the server component for Mumble. This article is meant to give you the necessary information to configure and run your own server.
 
Murmur is the server component for Mumble. This article is meant to give you the necessary information to configure and run your own server.
 
'''If you find anything incorrect or missing in this article feel free to add it yourself.'''
 
  
 
= Distribution-specific Murmur =
 
= Distribution-specific Murmur =
  
By default, murmur is configured to run from a regular user account, and on Windows and OSX this is the only way it works. However, on distributions with prepackaged murmur (Debian/Ubuntu), murmur is configured to run as a sytem service, just like your webserver, mailserver and whatever else you've got running. This "global" installation is a ready, turn-key solution, most of the information here does not apply to you. Most packages also include the 'murmur-user-wrapper' script, which does all of the below for you if you want to run as a regular user (including starting DBus).
+
By default, Murmur is configured to run from a regular user account, and on Windows and OSX this is the only way it works. However, on distributions with prepackaged murmur (Debian/Ubuntu), murmur is configured to run as a sytem service, just like your webserver, mailserver and whatever else you've got running. This "global" installation is a ready, turn-key solution, most of the information here does not apply to you. Most packages also include the 'murmur-user-wrapper' script, which does all of the below for you if you want to run as a regular user (including starting DBus).
  
So, on these systems, you can still run murmur manually, but you will then not benefit from the extensive care that has gone into preparing those packages.
+
So, on these systems, you can still run mMrmur manually, but you will then not benefit from the extensive care that has gone into preparing those packages.
  
If you need to register users or change the settings of a virtual server, read the section on Advanced Configuration.
+
If you need to register users externally, or change the settings of a virtual server, read the section on Advanced Configuration.
  
 
= Basic configuration =
 
= Basic configuration =
  
The default settings for a murmur server are configured in ''murmur.ini''. Here you can configure the welcome text, port number and other settings. However, these are just default settings and can be overwritten via the [[Ice]] RPC without changing the .ini; if you're running multiple virtual servers, each virtual server has it's own configuration, which is maintained internally by Murmur (see below).
+
The default settings for a Murmur server are configured in ''murmur.ini''. Here, you can configure the welcome text, port number and other settings. However, these are just default settings and can be overwritten via the [[Ice]] RPC without changing the .ini; if you're running multiple virtual servers, each virtual server has it's own configuration, which is maintained internally by Murmur (see below).
  
 
The default port for a Murmur server is UDP and TCP 64738. Have a look at [[URLs]] to see how to publish links to your server.
 
The default port for a Murmur server is UDP and TCP 64738. Have a look at [[URLs]] to see how to publish links to your server.
Line 24: Line 23:
 
== Setting the SuperUser password ==
 
== Setting the SuperUser password ==
  
Until you've set a password for the SuperUser, the account will be disabled. You don't need the SuperUser account to run a simple server, but you do need it if you want to give your regular user account any privileges. To set the password on Linux run
+
Until you've set a password for the SuperUser, the account will be disabled. You don't need the SuperUser account to run a simple server, but you do need it if you want to give your regular user account any privileges.  
  murmurd -supw <password>
+
 
This will set the password and return immediately. To run the server remove this parameter. If you are on a debian based system, you may also run
+
To set the password on the Linux static server, run
 +
  murmur.x86 -supw <password>
 +
To set the password on Debian-based systems, run
 
  sudo dpkg-reconfigure mumble-server
 
  sudo dpkg-reconfigure mumble-server
 +
To set the password on Windows systems, run
 +
<path to murmur.exe> -supw <password>
 +
This will set the password and then shut down Murmur. To run the server, remove this parameter.
  
If you're on Windows, then you set the password by running
+
'''Note that on some configurations, the ''-supw'' flag will only work if the server's database already exists i.e. you must have already run the server process once.'''
"C:\Program Files\Mumble\murmur.exe" -supw <password>
 
  
'''Note that this only works if the server's database already exists i.e. you must have already run the server process once.'''
+
== Running as a Daemon ==
  
= Running Murmur as a regular user =
+
To run Murmur,
  
If you are on Win32, you can simply start ''murmur.exe'' from the command line, or even easier just start it from the Start Menu.
+
On a static Linux build, cd to the directory where you extracted the files and do
 +
murmur.x86
 +
On Debian-based,
 +
sudo dpkg-reconfigure mumble-server
 +
On Windows,
 +
<path to murmur.exe> (usually C:\Program Files\Mumble\Murmur.exe)
  
== RPC-Interfaces ==
+
For debugging or real time logging, you might want to add ''-fg -v'' to the command line, which will stop the program from running in the background.
  
For full functionality, murmur requires either a working [[DBus]] daemon or [[Ice]] being enabled. We recommend using the [[Ice]] interface, as [[DBus]] is considered deprecated and while it is not planned to remove it anytime soon it will not receive any new functionality.
+
By default, Murmur opens it's configuration file, database file and logfile in your current directory. The configuration file can be overridden with the ''-ini'' parameter, and the database and logfile can be set from the ini file, using their respective parameters.
  
== Running the daemon ==
+
= Advanced Configuration and Administration=
 +
This section contains different ways of administrating a Murmur Server.
  
To run murmur, simply type
+
'''Note:''' Most of these interfaces are created and maintained by third parties and the Mumble developers have no influence on the stability and/or security of these projects.
murmurd
 
Although, depending on your operating system, this will be different. On Win32, it's
 
C:\Program Files\Mumble\murmur.exe
 
on GNU/Linux, it's usually
 
mumble-server
 
but you should not manually start the server on Debian/Ubuntu. Simply install the mumble-server package and then run
 
sudo dpkg-reconfigure mumble-server
 
If you are running a static build, simply cd to the directory that you extracted the file to, and run
 
./murmur.x86
 
 
 
For debugging, you might want to add ''-fg -v'' to the command line, which will stop the program from running in the background.
 
  
By default murmur opens it's configuration file, database file and logfile in your current directory. The configuration file can be overridden with the ''-ini'' parameter, and the database and logfile can be set form the ini file.
+
== Compatibility With RPC-Interfaces ==
  
= Administration =
+
For full functionality with an RPC interface, Murmur requires either a working [[DBus]] daemon or [[Ice]] installation that is enabled. We recommend using the [[Ice]] interface; [[DBus]] is considered deprecated and although it will not be removed in the near future, it is not receiving any new functionality. Once you have Murmur working with the RPC interface, you can install a compatible web interface; see below for possible options.
This section contains different ways of administrating a murmur Server.
 
 
 
'''Note:''' Most of these interfaces are created and maintained by third parties and the Mumble developers have no influence on the stability and/or security of these projects.
 
  
 
== Web-Interfaces ==
 
== Web-Interfaces ==
Line 117: Line 112:
 
| bgcolor=#ffdddd | No
 
| bgcolor=#ffdddd | No
 
| Multiple Virtual Servers, Registration, Server Status, Forgot Password
 
| Multiple Virtual Servers, Registration, Server Status, Forgot Password
| [http://murmurcp.hiddenservers.org]
+
| [http://Murmurcp.hiddenservers.org]
  
 
|-bgcolor="#f8f8ff"
 
|-bgcolor="#f8f8ff"
Line 185: Line 180:
 
| bgcolor=#ddffdd | Yes
 
| bgcolor=#ddffdd | Yes
 
| Commandline interface written in [http://www.python.org Python]
 
| Commandline interface written in [http://www.python.org Python]
| [http://d0t.dbclan.de/dump/murmurcldist.exe win32 exe] / [http://nodefab.de/git/?p=mumble-scripts.git;a=blob_plain;f=murmurcl.py;hb=HEAD python source]
+
| [http://d0t.dbclan.de/dump/Murmurcldist.exe win32 exe] / [http://nodefab.de/git/?p=mumble-scripts.git;a=blob_plain;f=Murmurcl.py;hb=HEAD python source]
  
 
|-bgcolor="#f8f8ff"
 
|-bgcolor="#f8f8ff"
Line 213: Line 208:
  
 
|-bgcolor="#f8f8ff"
 
|-bgcolor="#f8f8ff"
| [[murmur-manager]]
+
| [[Murmur-manager]]
 
| Ruby
 
| Ruby
 
| bgcolor=#ddffdd | Yes
 
| bgcolor=#ddffdd | Yes
 
| bgcolor=#ddffdd | Yes
 
| bgcolor=#ddffdd | Yes
 
| 1.2.1
 
| 1.2.1
| [http://github.com/cheald/murmur-manager/ GitHub]
+
| [http://github.com/cheald/Murmur-manager/ GitHub]
 
|}
 
|}
  
Line 226: Line 221:
  
 
= Alternative Murmur implementations =
 
= Alternative Murmur implementations =
The Mumble team appreciates and supports the implementation of the Mumble protocol. Unlike other proprietary applications everyone is free to write his own Mumble server software and add it to this list.  
+
The Mumble team appreciates and supports the implementation of the Mumble protocol. Unlike other proprietary applications, everyone is free to their own Mumble server software and add it to this list.
 +
 
== uMurmur ==
 
== uMurmur ==
uMurmur is a minimalistic Murmur implementation without dependency on QT-core. It lacks features of Murmur but aims at working well on embedded devices like routers. It currently supports 1.1.x Mumble clients. Read more at [http://code.google.com/p/umurmur/ the uMurmur project page].
+
uMurmur is a minimalistic Murmur implementation without dependency on QT-core. It lacks features of Murmur but aims at working well on embedded devices like routers. It currently supports 1.1.x Mumble clients, but 1.2.x support is available, if you're willing to compile it from source (it's very easy to do). Read more at [http://code.google.com/p/uMurmur/ the uMurmur project page].
 +
 
 +
== Mumble iPhone ==
 +
There is currently an iPhone version of Mumble in the works; you can see more information about it from the [http://mumble.git.sourceforge.net/git/gitweb.cgi?p=mumble/mumble-iphoneos;a=summary Git repository]. Any help with the project is always appreciated.
 +
 
 
[[Category:Documentation]]
 
[[Category:Documentation]]

Revision as of 04:27, 30 January 2010

If you find anything incorrect or missing in this article feel free to add it yourself. After you register, you must wait three days before you can edit a page.

Introduction

For a step-by-step guide to setting up a Murmur server, read this.

Murmur is the server component for Mumble. This article is meant to give you the necessary information to configure and run your own server.

Distribution-specific Murmur

By default, Murmur is configured to run from a regular user account, and on Windows and OSX this is the only way it works. However, on distributions with prepackaged murmur (Debian/Ubuntu), murmur is configured to run as a sytem service, just like your webserver, mailserver and whatever else you've got running. This "global" installation is a ready, turn-key solution, most of the information here does not apply to you. Most packages also include the 'murmur-user-wrapper' script, which does all of the below for you if you want to run as a regular user (including starting DBus).

So, on these systems, you can still run mMrmur manually, but you will then not benefit from the extensive care that has gone into preparing those packages.

If you need to register users externally, or change the settings of a virtual server, read the section on Advanced Configuration.

Basic configuration

The default settings for a Murmur server are configured in murmur.ini. Here, you can configure the welcome text, port number and other settings. However, these are just default settings and can be overwritten via the Ice RPC without changing the .ini; if you're running multiple virtual servers, each virtual server has it's own configuration, which is maintained internally by Murmur (see below).

The default port for a Murmur server is UDP and TCP 64738. Have a look at URLs to see how to publish links to your server.

Adding an authenticated user can be done through various means. Unless you need automated registration of users or authentication against an external database using the functionality built into the client is the easiest method. If you need more control you can use Ice or DBus.

Setting the SuperUser password

Until you've set a password for the SuperUser, the account will be disabled. You don't need the SuperUser account to run a simple server, but you do need it if you want to give your regular user account any privileges.

To set the password on the Linux static server, run

murmur.x86 -supw <password>

To set the password on Debian-based systems, run

sudo dpkg-reconfigure mumble-server

To set the password on Windows systems, run

<path to murmur.exe> -supw <password>

This will set the password and then shut down Murmur. To run the server, remove this parameter.

Note that on some configurations, the -supw flag will only work if the server's database already exists i.e. you must have already run the server process once.

Running as a Daemon

To run Murmur,

On a static Linux build, cd to the directory where you extracted the files and do

murmur.x86

On Debian-based,

sudo dpkg-reconfigure mumble-server

On Windows,

<path to murmur.exe> (usually C:\Program Files\Mumble\Murmur.exe)

For debugging or real time logging, you might want to add -fg -v to the command line, which will stop the program from running in the background.

By default, Murmur opens it's configuration file, database file and logfile in your current directory. The configuration file can be overridden with the -ini parameter, and the database and logfile can be set from the ini file, using their respective parameters.

Advanced Configuration and Administration

This section contains different ways of administrating a Murmur Server.

Note: Most of these interfaces are created and maintained by third parties and the Mumble developers have no influence on the stability and/or security of these projects.

Compatibility With RPC-Interfaces

For full functionality with an RPC interface, Murmur requires either a working DBus daemon or Ice installation that is enabled. We recommend using the Ice interface; DBus is considered deprecated and although it will not be removed in the near future, it is not receiving any new functionality. Once you have Murmur working with the RPC interface, you can install a compatible web interface; see below for possible options.

Web-Interfaces

There are several browser based interfaces which can be used to administrate the Murmur server. If you need something very basic or want to create your own interface you should take a look at Murmur's script folder which contains some basic web-interface examples which use Ice or DBus. Additionally the following table contains a collection of more elaborate Web-Interfaces:

Name Technology DBus Ice 1.1.8 1.2.0 Comment Weblink
Mumble-Django Python + Django Yes Yes Yes Yes Channel viewer, admin panel, multiserver, registration, textures [1]
MumPI - Mumble PHP Interface PHP No Yes Yes Yes User and Admin functionality [2]
MAP - Mumb1e Admin Plugin PHP Yes Yes Yes planned Webinterface to manage Server User, Plugin User and virtual Servers; request function for Server Users; useful for Server hosting; uses DBUS or Slice or nothing; Channelviewer for own homepage; German, English, Frensh; Template functions and more! [3]
MurmurCP ASP.NET + ICE No Yes Yes No Multiple Virtual Servers, Registration, Server Status, Forgot Password [4]
Simpleregister PHP No Yes Yes No Extended script from the sample folder [5]
Mumble Admin Ice PHP PHP No Yes Yes No Admin functionality [6]
MMO-Mumble Web service No Yes No Yes Manage your server via Glacier2 without installing anything. Just enter your Glacier2 connection in you MMO-Mumble account and you can manage it fully from there. [7]

Note: We recommend using a preferably Ice or at least DBus capable interface.

Standalone applications

Name OS DBus Ice Comment Weblink
Murmur Admin Console Windows Yes No Add, edit and delete players over SSH [8]

Commandline-Interfaces

Name OS DBus Ice Comment Weblink
MurmurCL multi-platform No Yes Commandline interface written in Python win32 exe / python source
mice multi-platform No Yes Helper script written in Python [9]
RegMum Windows Yes No Bat script [10]
mmctl Python Yes No 1.1.8 - Easy to use script for managing servers and adding users locally [11]
Murmur-manager Ruby Yes Yes 1.2.1 GitHub

Manual configuration using DBus

If you are not able to use an additional application for administrating Murmur there is still the possibility of manually communicating with the server using DBus. You can find detailed information on this in our DBus article.

Alternative Murmur implementations

The Mumble team appreciates and supports the implementation of the Mumble protocol. Unlike other proprietary applications, everyone is free to their own Mumble server software and add it to this list.

uMurmur

uMurmur is a minimalistic Murmur implementation without dependency on QT-core. It lacks features of Murmur but aims at working well on embedded devices like routers. It currently supports 1.1.x Mumble clients, but 1.2.x support is available, if you're willing to compile it from source (it's very easy to do). Read more at the uMurmur project page.

Mumble iPhone

There is currently an iPhone version of Mumble in the works; you can see more information about it from the Git repository. Any help with the project is always appreciated.