From 7df97b80d08d0cdb7e3b7dd610a64c4cd38dc87e Mon Sep 17 00:00:00 2001
From: Art Cancro
Citadel/UX is an advanced, multiuser, client/server, room-based BBS program. - It is designed to handle the needs of both small dialup systems and -large-scale Internet-connected systems. It was originally developed on -an Altos system running Xenix, and has been installed and tested on various -Unix and Unix-like platforms. The author's current development environment -(and BBS) is an ordinary Linux system. The current distribution includes: +
Citadel/UX is an advanced, multiuser, client/server messaging system +suitable for BBS, e-mail, and groupware applications. +It is designed to handle the needs of both small dialup systems and +large-scale Internet-connected systems. It was originally developed on +an Altos system running Xenix, and has been installed and tested on various +Unix and Unix-like platforms. The current development environment +(and public BBS) is an ordinary Linux system. The current distribution +includes:
As with many Unix programs, Citadel wants to run under its own user ID. - Unlike other programs, however, this user ID will do double-duty as a -public login for your system if you are running a BBS. This account is -typically called "bbs" or "citadel" or something to that effect. You will -tell Citadel what the user-id of that account is, and when someone logs -in under that account, Citadel will prompt for a user name.
+Unlike other programs, however, this user ID will do double-duty as a +public login for your system if you are running a BBS. This account is +typically called "bbs" or "citadel" or something to that effect. You will +tell Citadel what the user-id of that account is, and when someone logs +in under that account, Citadel will prompt for a user name.The Citadel user should have a unique uid. The home directory should be - the one your Citadel installation resides in (in this example we will -use /usr/local/citadel) and the shell should be either "citadel" in that -directory, or a script that will start up citadel (you may wish to set -up an external text editor; see below). Example:
+the one your Citadel installation resides in (in this example we will +use /usr/local/citadel) and the shell should be either "citadel" in +that directory, or a script that will start up citadel (you may wish to set +up an external text editor; see below). Example: -bbs::100:1:BBS Login:/usr/local/citadel:/usr/local/citadel/citadel+
bbs::100:1:Citadel Login:/usr/local/citadel:/usr/local/citadel/citadel-
When you run setup later, you will be required to tell it what the Citadel - user's numeric user ID is, so it knows what user to run as. If you create - an account called bbs, guest, or citadel, the - setup program will automatically pick up the user ID by default.
+When you run setup later, you will be required to tell it the username or +user ID of the account you created is, +so it knows what user to run as. If you create +an account called bbs, guest, or citadel, the +setup program will automatically pick up the user ID by default.
For all other users in /etc/passwd, Citadel will automatically set up an account using the full name (or 'gecos' in Unixspeak) of the user. It'll - also ignore any password you supply, because it uses the user's password - on the host system. This allows a 'single sign on' type of environment. - Note that this does have to be enabled at compile time -- it's the configure - option called --enable-autologin. Keep in mind that these users - can use *either* their Citadel login name or their login name on the host - computer, and their password on the host computer.
+also ignore any password you supply, because it uses the user's password +on the host system. This allows a 'single sign on' type of environment. +Note that this does have to be enabled at compile time -- it's the configure +option called --enable-autologin. Keep in mind that these users +can use *either* their Citadel login name or their login name on the host +computer, and their password on the host computer.If you normally log in to your host system using some method other than - telnet (such as ssh), you might want the telnet service to go straight - to the Citadel BBS, instead of displaying the login: prompt first. - You can do this by having telnetd start citadel directly instead of -/bin/login. This is actually very simple to implement; all you +telnet (such as ssh), you might want the telnet service to go straight +into Citadel, instead of displaying the login: prompt first. +You can do this by having telnetd start citadel directly instead of +/bin/login. This is actually very simple to implement; all you need to do is make a simple change to your inetd or xinetd configuration. Here are some configuration examples.
@@ -724,13 +727,13 @@ configuration. Here are some configuration examples.Please make sure you know what you're doing before you install this! If you are going to put Citadel somewhere other than /usr/local/citadel - then change the directory name accordingly. If you know of any other +then change the directory name accordingly. If you know of any other local peculiarities which need to be observed, edit the above configuration accordingly as well. And, of course, if you're working remotely, make sure you can successfully log in using SSH before you start changing your -telnet configuration, otherwise you could lock yourself out of your system -(ask any networking specialist about the dangers of "working inline" -- -then pull up a chair and get a fresh cup of coffee, because you're going +telnet configuration, otherwise you could lock yourself out of your system +(ask any networking specialist about the dangers of "working inband" -- +then pull up a chair and get a fresh cup of coffee, because you're going to hear some war stories).
The 'configure' script will generate a Makefile from the Makefile.in, and it will also write the file "sysdep.h" to your Citadel directory. Please - do not edit sysdep.h or Makefile.in yourself. The configure script will - figure out your system dependencies and set everything correctly.
+do not edit sysdep.h or Makefile.in yourself. The configure script will +figure out your system dependencies and set everything correctly. -Mac OS X 10.1 and later are now supported. (Sorry, 10.0 cannot be supported, - now or in the future.) You need to install the Developer Tools CD, which - you can purchase or download for free from http://developer.apple.com. Then run - configure like this:
+Mac OS X 10.1 and later are now supported. (Sorry, 10.0 cannot be +supported, +now or in the future.) You need to install the Developer Tools CD, which +you can purchase or download for free from +http://developer.apple.com. Then run +configure like this:
env CC=/usr/bin/cc ./configure (options - see below)@@ -770,7 +774,7 @@ back to GDBM if it has to. shell users peeking into the binaries to do things like reading others' mail, finding private rooms, etc. The Citadel server needs to be started as root in order to bind to privileged ports, but as soon as its initialization - is finished, it changes its user ID to your BBS user ID in order to avoid + is finished, it changes its user ID to your Citadel user in order to avoid security holes.
The text-based client included with Citadel is suitable for BBS applications. - Much of its command set and other behavior is configurable through a Run - Control (RC) file. The standard client looks for this file in the following - locations:
+The text-based client included with Citadel is suitable for BBS +applications. +Much of its command set and other behavior is configurable through a Run +Control (RC) file. The standard client looks for this file in the following +locations:
printcmd="nl|pr|lpr -Plocal"
...that would add line numbers, then paginate, then print on the printer - named "local". There's tons of stuff you can do with this feature. For - example, you could use a command like cat <<$HOME/archive - to save copies of important messages in a textfile. Again, this is probably - something you don't want to configure for a public BBS host -- most system - administrators don't want remote users sending arbitrary things to local - printers.
+named "local". There's tons of stuff you can do with this feature. For +example, you could use a command like cat <<$HOME/archive +to save copies of important messages in a textfile. Again, this is probably +something you don't want to configure for a public BBS host -- most system +administrators don't want remote users sending arbitrary things to local +printers.The options are as follows:
--hHomeDir - the directory your BBS data files live in. This should, +
-hHomeDir - the directory your Citadel data files live in. +This should, of course, be a directory that you've run the setup program against to set up some data files. If a directory is not specified, the directory name which was specified in the Makefile will be used.
@@ -1033,7 +1039,9 @@ utilized less and less every day. helpThat's just about all the information you need to install the system. -But if you get stuck, you can visit UNCENSORED! BBS and report a problem or +But if you get stuck, you can visit +UNCENSORED! BBS +and report a problem or ask for help. But if you intend to report a problem getting the Citadel server to run, please double-check the following things first:
@@ -1045,10 +1053,12 @@ to run, please double-check the following things first:To report a problem, you can log on to UNCENSORED! or any other BBS on - the Citadel network which carries the Citadel/UX> room. Please - DO NOT e-mail the developers directly. Post a request for help on the -BBS, with all of the following information:
+To report a problem, you can log on to +UNCENSORED! +or any other BBS on +the Citadel network which carries the Citadel/UX> room. Please +DO NOT e-mail the developers directly. Post a request for help on the +BBS, with all of the following information:
Directory name [mydirname]:
...the name of the subdirectory to put this room's files in. The name - of the directory created will be <your BBS directory>/files/<room - dir name>.
+of the directory created +will be <your Citadel directory>/files/<room +dir name>.Uploading allowed [Yes]? Yes@@ -1516,7 +1527,7 @@ setting.
There are several strings that you can put in help files that will be automatically substituted with other strings. They are:
-+
^nodename = The node name of your system on a Citadel/UX network
^humannode = Human-readable node name (also your node name on C86Net)
^fqdn = Your system's fully-qualified domain name
^username = The name of the user reading the help file
^usernum = The user number of the user reading the help file
^sysadm = The name of the system administraor (i.e., you)
^variantname = The name of the BBS software you're running
^bbsdir = The directory on the host system in which you have
installed the Citadel system.
^nodename = The node name of your system on a Citadel/UX network
^humannode = Human-readable node name (also your node name on C86Net)
^fqdn = Your system's fully-qualified domain name
^username = The name of the user reading the help file
^usernum = The user number of the user reading the help file
^sysadm = The name of the system administraor (i.e., you)
^variantname = The name of the software you're running
^bbsdir = The directory on the host system in which you have
installed the Citadel system.
So, for example, you could create a help file which looked like:
@@ -1613,14 +1624,14 @@ in at all -- all accounts must be created by an Aide.The tool is called citmail and it is, quite simply, a local MDA - (Mail Delivery Agent) which you can configure into your MTA for final delivery - of incoming messages to Citadel users. A full discussion of the finer -points of complex Sendmail configurations is beyond the scope of this document; - however, you might want to visit Pixel BBS where some useful - HOWTO documents are provided.
+(Mail Delivery Agent) which you can configure into your MTA for final delivery +of incoming messages to Citadel users. A full discussion of the finer +points of complex Sendmail configurations is beyond the scope of +this document; +however, you might want to visit Pixel BBS where some useful +HOWTO documents are provided. -For outbound mail, you can either allow Citadel to perform deliveries directly +
For outbound mail, you can either allow Citadel to perform +deliveries directly (this won't affect your other mail system because outbound mail doesn't tie up port 25) or enter 127.0.0.1 as your smart-host, which will tell Citadel to forward all of its outbound mail to your other mail system.
-Citadel has built in mailing list service (known in the 'net vernacular as "listserv") functionality. You can turn any room into a mailing @@ -2064,23 +2077,24 @@ in your e-mail software) and the confirmation is automatically completed.
If you are running Citadel as a BBS or other forum type of application, - one way to 'keep the conversation going' is to share rooms with other Citadel - systems. In a shared room, a message posted to the room is automatically - propagated to every system on the network. It's kind of like a UseNet newsgroup, - but without the spam.
+one way to 'keep the conversation going' is to share rooms with other Citadel +systems. In a shared room, a message posted to the room is automatically +propagated to every system on the network. It's kind of like +a UseNet newsgroup, +but without the spam.If you are using Citadel as the e-mail and groupware platform for a large - organization, you can use its networking features to build a large network - of Citadel servers which share content (think of rooms as public folders), - redistribute e-mail throughout the organization, and integrate the global - address book. It might make sense, for example, in a large corporation - to give each department or location its own Citadel server. Thanks - to Citadel's global address book features, you could still have all of the - users share a single e-mail domain.
+organization, you can use its networking features to build a large network +of Citadel servers which share content (think of rooms as public folders), +redistribute e-mail throughout the organization, and integrate the global +address book. It might make sense, for example, in a large corporation +to give each department or location its own Citadel server. Thanks +to Citadel's global address book features, you could still have all of the +users share a single e-mail domain.Obviously, the first thing you have to do is find another Citadel to share - rooms with, and make arrangements with them. The following Citadels are - a good place to start:
+rooms with, and make arrangements with them. The following Citadels are +a good place to start: