mumble-voip / mumble

Mumble is an open-source, low-latency, high quality voice chat software.
https://www.mumble.info
Other
6.41k stars 1.12k forks source link

Help with disabling ChannelListener option #5746

Closed andrewschott closed 2 years ago

andrewschott commented 2 years ago

The issue

After migrating from packages to the official docker container, I am now at murmur 1.4.xxx, which yields a warning about ChannelListener being enabled on the server -- how can I disable this feature? Scouring through the web docs, I noticed a few options that seemingly have no effect here :

listenersperchannel=0
listenersperuser=0

Any help here is appreciated. Even if the answer is "You cannot." Thanks, Andrew.

Mumble version

1.4.230 (official docker container)

Mumble component

Server

OS

Linux

Additional information

I have in my startup script the following run command, and copy my ssl certs from LetsEncrypt to the cert folder referemced.

podman run \
        --rm -d -ti \
        -p 64738:64738/udp \
        -p 64738:64738/tcp \
        --name mumble \
        -e "MUMBLE_CUSTOM_CONFIG_FILE=/data/murmur.ini" \
        -v /opt/docker/mumble/cert:/cert:Z \
        -v /opt/docker/mumble/data:/data:Z \
        mumblevoip/mumble-server
Krzmbrzl commented 2 years ago

Both of the options that you showed in your question should disable the feature.

That being said, the vest option to get rid of the warning would be to just upgrade the used clients to v1.4 or newer as well.

andrewschott commented 2 years ago

I agree with the upgrade thing, but I have some folks along with myself that have a distribution that does not have updated packages (still.....) and have problems with the implementation of the flatpak (which does not exhibit this behavior). I figured for the time being, disable the feature, as I don't use linking at all in any capacity, and it will shutup the folks who are whining about reverting to the old test container I was using from another provider (which is not gonna happen, official containers where available).

Krzmbrzl commented 2 years ago

Yeah as I said: Either of the options that you showed in your question should disable the feature. Could you perhaps share your entire config file so we can check whether there might be an issue in there that might prevent the settings from taking effect?

andrewschott commented 2 years ago

Sure thing, Ill mark a censored spot where its censored:

# Path to database. If blank, will search for
# murmur.sqlite in default locations or create it if not found.
database=/data/murmur.sqlite

# If you wish to use something other than SQLite, you'll need to set the name
# of the database above, and also uncomment the below.
# Sticking with SQLite is strongly recommended, as it's the most well tested
# and by far the fastest solution.
#
#dbDriver=QMYSQL
#dbUsername=
#dbPassword=
#dbHost=
#dbPort=
#dbPrefix=murmur_
#dbOpts=

# Murmur defaults to not using D-Bus. If you wish to use dbus, which is one of the
# RPC methods available in murmur, please specify so here.
#
dbus=system

# Alternate service name. Only use if you are running distinct
# murmurd processes connected to the same D-Bus daemon.
#dbusservice=net.sourceforge.mumble.murmur

# If you want to use ZeroC Ice to communicate with Murmur, you need
# to specify the endpoint to use. Since there is no authentication
# with ICE, you should only use it if you trust all the users who have
# shell access to your machine.
# Please see the ICE documentation on how to specify endpoints.
ice="tcp -h 127.0.0.1 -p 6502"

# Ice primarily uses local sockets. This means anyone who has a
# user account on your machine can connect to the Ice services.
# You can set a plaintext "secret" on the Ice connection, and
# any script attempting to access must then have this secret
# (as context with name "secret").
# Access is split in read (look only) and write (modify) 
# operations. Write access always includes read access,
# unless read is explicitly denied (see note below).
#
# Note that if this is uncommented and with empty content,
# access will be denied.

#icesecretread=
icesecretwrite=CENSORED
# 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 successfull and unsuccessfull connection attempts.
# Set either Attempts or Timeframe to 0 to disable.
#autobanAttempts = 10
#autobanTimeframe = 120
#autobanTime = 300

# Murmur default to logging to murmur.log. If you leave this blank,
# murmur will log to the console (linux) or through message boxes (win32).
logfile=/data/log/mumble.log

# If set, murmur will write its process ID to this file.
#pidfile=/var/run/murmur/murmur.pid

# The below will be used as defaults for new configured servers.
# If you're just running one server (the default), it's easier to
# configure it here than through D-Bus or Ice.
#
# Welcome message sent to clients when they connect
welcometext="Welcome."

# Port to bind TCP and UDP sockets to
port=64738

# Specific IP or hostname to bind to.
# If this is left blank (default), murmur will bind to all available addresses.
#host=

# Password to join server
#serverpassword=

# Maximum bandwidth (in bits per second) clients are allowed
# to send speech at.
bandwidth=130000

# Maximum number of concurrent clients allowed.
users=999

# Amount of users with Opus support needed to force Opus usage, in percent.
# 0 = Always enable Opus, 100 = enable Opus if it's supported by all clients.
opusthreshold=100

# Regular expression used to validate channel names
# (note that you have to escape backslashes with \ )
channelname=[ \\-=\\w\\#\\[\\]\\{\\}\\(\\)\\@\\|\\ \\.\\'\\/\\•]+

# Regular expression used to validate user names
# (note that you have to escape backslashes with \ )
username=[-=\\w\\[\\]\\{\\}\\(\\)\\@\\|\\ \\-\\.\\/\\•]+

# Maximum length of text messages in characters. 0 for no limit.
textmessagelength=0

# Maximum length of text messages in characters, with image data. 0 for no limit.
imagemessagelength=0

# Allow clients to use HTML in messages, user comments and channel descriptions?
allowhtml=true

# Murmur retains the per-server log entries in an internal database which
# allows it to be accessed over D-Bus/ICE.
# How many days should such entries be kept?
# Set to 0 to keep forever, or -1 to disable logging to the DB
logdays=0

# To enable public server registration, the serverpassword must be blank, and
# this must all be filled out.
# The password here is used to create a registry for the server name; subsequent
# updates will need the same password. Don't lose your password.
# The URL is your own website, and only set the registerHostname for static IP
# addresses.
# Only uncomment the 'registerName' parameter if you wish to give your "Root" channel a custom name.
#
registerName=Schotty.com Mumble Server
registerPassword=
registerUrl=https://www.schotty.com
registerHostname=https://www.schotty.com

# To enable bonjour service discovery uncomment the following line.
# To change the name announced by bonjour adjust the registerName variable.
# See http://developer.apple.com/networking/bonjour/index.html for more information
# about bonjour.
#bonjour=True

# If you have a proper SSL certificate, you can provide the filenames here.
# Otherwise, Murmur will create it's own certificate automatically.
sslCert=/cert/fullchain.pem
sslKey=/cert/privkey.pem
sslCert=/cert/fullchain.pem
sslKey=/cert/privkey.pem

# If murmur is started as root, which user should it switch to?
# This option is ignored if murmur isn't started with root privileges.
uname=mumble

# If this options is enabled, only clients which have a certificate are allowed
# to connect.
#certrequired=False

# If enabled, clients are sent information about the servers version and operating
# system.
sendversion=True

# You can configure any of the configuration options for Ice here. We recommend
# leave the defaults as they are.
# Please note that this section has to be last in the configuration file.
#
[Ice]
Ice.Warn.UnknownProperties=1
Ice.MessageSizeMax=65536

listenersperchannel=0
listenersperuser=0
Krzmbrzl commented 2 years ago

Ah okay, I think I see the problem. You added the options under the [Ice] category. However, they don't have anything to do with Ice. Please try moving these options before the Ice category.

As a rule of thumb: The Ice section should always be the last thing in the config file.

andrewschott commented 2 years ago

That twas it! TY! Even in my comments it said not to do it, totally on me being in a rush apparently.