Menu

Tree [c0f02d] master 0.4 /
 History

HTTPS access


File Date Author Commit
 diffs 2006-04-13 Felix A. Croes Felix A. Croes [96be4f] Include asn1_utils.c in the list of exception p...
 doc 2004-02-26 Felix A. Croes Felix A. Croes [115f1e] Clarified language for the connection procedure.
 include 2010-03-05 Felix A. Croes Felix A. Croes [c0f02d] Make debugging less spammy, and bump version to...
 keys 2004-02-25 Erwin Harte Erwin Harte [6e82a6] Initial checkin.
 lib 2008-08-25 Felix A. Croes Felix A. Croes [c33ab3] hash_sha1(...) => hash_string("SHA1", ...)
 obj 2010-03-05 Felix A. Croes Felix A. Croes [9ed234] Get things to work with kernel library 1.3.
 sys 2008-08-02 Felix A. Croes Felix A. Croes [d4b530] Allow non-standard user directory.
 README.ssh 2010-03-05 Felix A. Croes Felix A. Croes [c0f02d] Make debugging less spammy, and bump version to...
 initd.c 2004-02-25 Erwin Harte Erwin Harte [cd5a31] - Merged Erwin's changes for publickey support.

Read Me

SSH login for DGD, version 0.4
Version 0.1 written by Felix A. Croes  <felix@dworkin.nl>
Released into the public domain.

DGD 1.2.105 or later is required, and either the kernel library or Melville.


KERNEL LIBRARY INSTALLATION:

 - Move these files to /usr/System of your mudlib.
 - If you already have a file /usr/System/initd.c, add the following line
   to its create function:

	compile_object("~/sys/kernel_sshd");

   Otherwise, just rename the supplied file initd.ssh to initd.c.
 - By default, sshd will listen on the first binary port.  To change this,
   edit the line in sys/kernel_sshd.c that looks like this:

	userd->set_binary_manager(0, this_object());

   and change the 0 to a indicate a different port.
 - The sshd object will set the ticks limit to 3,000,000 for System.  This is
   about the mininum required to perform the public key crypto functions.
   If you already have a higher tick limit for your mudlib, remove from
   sys/sshd.c the line that looks like this:

	rsrc::rsrc_set_limit("System", "ticks", 3000000);

 - Run the command 'ssh-keygen -t dsa' and save the files in the directory
   'keys'.  The created files should be named 'id_dsa' and 'id_dsa.pub'.  If
   you skip this step, default cryptographic keys included with this release
   will be used.
 - In your DGD configuration file, make sure that the array_size limit is at
   least 4000.
 - Start DGD, and login using the following command:

	ssh -T -p 6048 <hostname>

   -T means not to use a pseudo-tty, -p 6048 connects to the binary port which
   is 6048 by default (this can be changed by editing the mud.dgd configuration
   file) and <hostname> is the name of the host to connect to.  If you're
   running ssh on the same host as DGD, just use 'localhost'.
 - Though users without programming rights in the kernel library do not have
   a password, ssh will still prompt them for one -- just hit the return key.
 - You won't see anything while logging in (that includes the room you login
   to and the players in it).
 - The file ~username/.ssh/authorized_keys (within the mudlib) is used for
   authentication, if it exists.


MELVILLE INSTALLATION:

 - Make a subdirectory ssh in the mudlib /system directory, and move these
   files into it.
 - in the file include/ssh.h, change '# define KERNEL_GLUE' into
   '# define MELVILLE_GLUE'.
 - Apply the diffs in diffs/melville.
 - As with the kernel library, it only works well for pre-existing users and
   you won't see anything when you login.