An extensible MUSH / MUD server written in Java.
Historically, MUSH servers have always used the Telnet protocol. All popular MU* clients support Telnet, and users may also use the basic telnet
command to connect.
Grounds intentionally prefers the Secure Shell (or SSH) protocol, since it encrypts all communications between Grounds and its users. Unfortunately, MU* clients generally do not support SSH.
Out of the box, Grounds only uses SSH, but it can be configured to use Telnet instead, or even to use both at the same time on different ports. Users just need to be informed which protocol to use on which port.
Obviously, you can’t use the same port for both SSH and Telnet. Also, at least one of them must be enabled.
To enable or disable SSH, set “enableSsh” in server.properties to true (default) or false, respectively. Choose a port with the “sshPort” property, default 4768.
Grounds requires a host key for SSH. The path to the file is set by “hostKeyFile” in server.properties. When Grounds starts up with SSH enabled, it generates a new key if the file does not yet exist. Be sure to protect this file, because it can be used to impersonate the server if it’s compromised!
SSH does not support unauthenticated access, so non-guest users must already have an actor established in order to connect at all.
$ ssh -p 4768 wilma@grounds.example.com
Guest users can authenticate as the pre-existing “guest” actor. Grounds creates a new, temporary guest player for each session; the player is destroyed when the user disconnects.
The standard ssh
client is good enough for connecting to Grounds over SSH, although the experience isn’t the same as a decent MU* client. While Windows now ships with an ssh
client, PuTTY is probably nicer.
To enable or disable Telnet, set “enableTelnet” in server.properties to true or false (default), respectively. Choose a port with the “telnetPort” property, default 4769.
After connecting over Telnet, a user is prompted to either connect or exit.
Log in with 'connect <username> <password>'
or use 'exit' to disconnect
>
Non-guest users can authenticate with their actor usernames and passwords.
Guest users can authenticate as the pre-existing “guest” actor. Grounds creates a new, temporary guest player for each session; the player is destroyed when the user disconnects.
There are an abundance of MU* clients that should work with Grounds. Some fine examples:
Grounds does not support Telnet protocol options for MUD, such as GCMP, MSDP, MXP, and the like.