INSTALL 2.11 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13
Milliways III installation notes
--------------------------------

    Milliways has a peer-to-peer design.  Each user runs their own Milliways
    process, which communicate through FIFOs in the mesgs directory. The usual
    way to make this work is to have the mw executable run setuid to some
    unprivileged user and change ownership of the Milliways resource
    directory to this user.  We suggest calling this user `mw', but DO NOT use
    `bbs' as this is used for logins by people without a normal user account
    (e.g. by anonymous telnet/ssh) and as such, the -new, -since and -who
    switches are disabled as they are unlikely to give useful information.

    To install somewhere other than /usr/local/lib and /usr/local/bin, change
14
    the libdir and bindir variables in Makefile as appropriate. `make install'
15 16
    will create a subdirectory of libdir called `mw' under which it will place
    all the files needed by Milliways to run (apart from users.bb which is
17 18
    created when mw is first run. It will also put a copy of the mw executable
    under bindir.
19 20 21

    To build, cd to the src subdirectory and type `make'.

22
    To install, cd to the src subdirectory and type `make install'.
23 24 25 26 27 28 29 30 31

    Now pick a user to run mw as. If you want to create a new user `mw' for this
    purpose, here is how (as root):

	useradd -c "mw system" -s /bin/nologin -r -d libdir/mw mw
	chown -R mw.mw libdir/mw
	chown mw.mw bindir/mw
	chmod u+s bindir/mw

32 33 34
    (where libdir and bindir are whatever they were defined as in Makefile.) Note
    that the -r switch to useradd is a Red Hat extension, so just leave it out if
    it doesn't work.
35 36 37 38 39 40 41 42 43 44

Anonymous access via the bbs user
---------------------------------

    If you want to provide anonymous access through the bbs user, just create it
    as above but with the mw executable as its login shell (use `-s bindir/mw'),
    and without a home directory (use `-d ""').  Alternatively, create a home
    directory containing scripts which anonymous users can use. As always when
    providing anonymous access, make sure the user has very limited privileges
    and publish the password along with the username.