Go to file
HimbeerserverDE c9e597aafb
Make client packet handler less repetitive + Fix race condition (anon5)
2021-09-13 12:52:37 +02:00
cmd/mt-multiserver-proxy Document exported code (#49) 2021-09-10 12:47:19 +02:00
doc Document server list config 2021-09-11 15:55:10 +02:00
textures Convert default textures into Go code 2021-09-03 20:08:09 +02:00
.gitignore Write log output to file 2021-09-05 17:14:08 +02:00
LICENSE mt credits 2021-09-10 14:51:20 +02:00
README.md Fix heading size 2021-09-10 14:52:19 +02:00
activeobject.go Expose ClientConn to plugins 2021-09-06 11:03:27 +02:00
auth.go Fix panic when calling Banned method 2021-09-11 12:14:08 +02:00
auth_sqlite3.go Ignore port to make ban actually work 2021-09-11 12:25:50 +02:00
chat.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
client_conn.go Make client packet handler less repetitive + Fix race condition (anon5) 2021-09-13 12:52:37 +02:00
config.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
connect.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
content.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
default_textures.go mt credits 2021-09-10 14:51:20 +02:00
formspec.go Use globals for compiled regular expressions (anon5) 2021-09-13 10:42:44 +02:00
gen_textures.go Document exported code (#49) 2021-09-10 12:47:19 +02:00
go.mod mt upgrade + reset minimap modes 2021-09-10 10:42:36 +02:00
go.sum mt upgrade + reset minimap modes 2021-09-10 10:42:36 +02:00
hop.go Fix default minimap modes (#60) 2021-09-10 15:52:21 +02:00
list.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
listen.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
log.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
moderation.go Ignore port to make ban actually work 2021-09-11 12:25:50 +02:00
perms.go All players have the empty string permission 2021-09-11 11:49:38 +02:00
players.go Document exported code (#49) 2021-09-10 12:47:19 +02:00
plugin.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
plugin_chatcmd.go Accept telnet usage strings 2021-09-12 14:46:22 +02:00
process.go Make client packet handler less repetitive + Fix race condition (anon5) 2021-09-13 12:52:37 +02:00
proxy.go Make client packet handler less repetitive + Fix race condition (anon5) 2021-09-13 12:52:37 +02:00
run.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
server_conn.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
telnet.go Smarter logging (anon5) 2021-09-13 12:14:11 +02:00
uptime.go Add server list support 2021-09-11 15:38:45 +02:00

README.md

mt-multiserver-proxy

mt-multiserver-proxy is a reverse proxy designed for linking multiple Minetest servers together. It is the successor to multiserver.

mt

This project was made possible by anon55555's mt module.

Installation

Go 1.17 or higher is required. Run

go install github.com/HimbeerserverDE/mt-multiserver-proxy/cmd/mt-multiserver/proxy@latest

to download and compile the project. A mt-multiserver-proxy executable will be created in your $GOBIN directory. The same command is also used to upgrade to the latest version. You will need to recompile all plugins after upgrading.

Usage

Starting

Run $GOBIN/mt-multiserver-proxy. The configuration file and other required files are created automatically in the directory the executable (or symlink to said executable) is in, so make sure to move the executable to the desired location or use a symlink.

Stopping

mt-multiserver-proxy reacts to SIGINT, SIGTERM and SIGHUP. It stops listening for new connections, kicks all clients, disconnects from all servers and exits. If some clients aren't responding, mt-multiserver-proxy waits until they have timed out.

Configuration

The configuration file name and format are described in doc/config.md All internal servers need to allow empty passwords and must not be reachable from the internet!

Chat commands

The default chat commands can be installed as a plugin.