1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
Mud authentication Module. (authlibmud) Version 0.1
This module allows muddleftpd 1.3.4 and above authenticate against player
files on a mud server.
Note: This module is designed to run on a non-root execution of muddleftpd.
It does not provide uid, gid information about a user.
Note: This module does not provide any information other than the success of
authenticating a user. No home or root directory information is passed
on. You will need to configure these things in the config file.
Note: You may need to modify the code to get this to work on your mud. YMMV.
Contact me if you have any difficulties.
DEPENDANCIES:
None. However this module is useless unless you are using muddleftpd 1.3.4
or better.
Without modifing the code, authlibmud assumes:
* People level 21 and above are wizards and can login.
* Passwords in the player files are encrypted using the unix crypt()
call.
* The fields for the level and password in the player file are
labeled "Level" and "Password" in the same order.
BUILDING:
To build, execute the following in the authlibmud source directory:
./configure
make
Or simply build it with the rest of muddleftpd, add --with-authmud to
the configuration options of that configure script.
Then the file libauthmud.so can be copied to the directory you with to
store muddleftpd modules in. This directory must be secure, so users cannot
overwrite the module with a cracked version. By default it is put into
@prefix@/lib from configure, if you dont set prefix this is
/usr/local/lib/muddleftpd.
USAGE:
In the groups that you wish authlibmud to authenticate, you need to use
the following to tell muddleftpd to use the authlibmud module, replacing the
directory with the directory the authentication module is stored in:
(If unsure a locate libauthmud.so may help).
authmethod /usr/local/lib/muddleftpd/libauthmud.so
To configure libauthmud, the following directives have been added. You must
specify these in the group section that is being configured.
playerfile <playerfilename>
This is the path and filename of the user filename. You should
construct this using the %U token, so it changes depending on
who is logging in. For example if player files are stored in
/usr/local/mud/players/<first letter of name>/<name>.passwd then you
would use in the config file:
playerfile /usr/local/mud/players/%(0,0)U/%U.passwd
GROUP EFFECTS:
If the player file is found, and the player has a level greater than 20,
then authlibmud will accept the username and authenticate for it. If the
player file is found, but the player has a level less than or equal to 20,
then authentication is cancelled. If the player file is not found,
authlibmud will pass the username to the next group section.
AUTHORS:
Beau Kuiper (support@muddleftpd.cx)
|