You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
HimbeerserverDE 970df85bcf
Markdown cleanliness
4 months ago
cmd/mt-multiserver-proxy goimports 7 months ago
doc Markdown cleanliness 4 months ago
textures Convert default textures into Go code 9 months ago
.gitignore Write log output to file 9 months ago
LICENSE mt credits 8 months ago
README.md Add minimal example config 4 months ago
activeobject.go Expose ClientConn to plugins 9 months ago
auth.go Prepare for storing last server 7 months ago
auth_files.go Prepare for storing last server 7 months ago
chat.go Smarter logging (anon5) 8 months ago
client_conn.go Make client packet handler less repetitive + Fix race condition (anon5) 8 months ago
config.go Send user to the last server they were connected to 7 months ago
connect.go Embed textures instead of hardcoding them 8 months ago
content.go Remote media server support 6 months ago
formspec.go Use globals for compiled regular expressions (anon5) 8 months ago
go.mod Switch to new mt API 6 months ago
go.sum Switch to new mt API 6 months ago
hop.go Send user to the last server they were connected to 7 months ago
list.go Smarter logging (anon5) 8 months ago
listen.go Smarter logging (anon5) 8 months ago
log.go Add simple file-based auth system by anon5 8 months ago
mediacache.go Fix media download 8 months ago
moderation.go Switch to new mt API 6 months ago
perms.go All players have the empty string permission 8 months ago
players.go Document exported code (#49) 8 months ago
plugin.go Add simple file-based auth system by anon5 8 months ago
plugin_chatcmd.go Accept telnet usage strings 8 months ago
process.go Remote media server support 6 months ago
proxy.go Document Path function 7 months ago
run.go Fix LastSrv error check 7 months ago
server_conn.go Switch to new mt API 6 months ago
telnet.go Minor telnet changes 8 months ago
uptime.go Add server list support 8 months ago

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 including a minimal example 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.

Telnet interface

Chat commands can also be executed over a telnet connection. See telnet.md for details.