|
Note: You will need root
privileges to go through the installation.
|
1. |
Assuming that you have
saved the downloaded file to /tmp/simplex; untar the downloaded simplex.tar file using the
commands:
# cd /tmp/simplex
# tar xvf simplex.tar
The tar file contains only one PERL script file; namely : listserver.pl
|
2. |
Edit the listserver.pl
file to change the "Program Constants" section according to your needs and
system settings.. The
PERL variables ("Program Constants") you need to change are:
|
3. |
$root_dir:
<$root_dir> is the directory where the listserver related files will be placed. I
recommend /etc/listserver. Please note that this directory must have an access mode of
777. This directory will be used by listserver.pl to store the subscriber database
(actually it is a simple text file) and forbidden email addresses file (also a text file).
(forbidden email addresses file /$root_dir/forbidden will contain email addresses of
people who are banned to send messages to this service. A small tool to avoid
spamming... Yes, I know! It is not possible to stop spammers but this might slow down them
a bit.
e.g: $root_dir="/etc/listserver";
|
4. |
$mailprogram:
<$mailprogram> is the full path to your sendmail or equivalent program. Normally you
wouldn't have to change this. If you are using a program other than standard UNIX
sendmail, please note that we use the "-t" flag of sendmail; and you might have
to modify the lines which mention the $mailprogram accordingly.
e.g: $mailprogram="/usr/lib/sendmail";
|
5. |
$admin_email:
<$admin_email> is the email address for the administrator of this list service.
Currently a notification is sent to this address if someone in the forbidden lists sends a
message to any of the managed lists. Do not forget to escape the @ character by a \ as
required by modern PERL implementations.
e.g: $admin_email="cayfer\@bilkent.edu.tr";
|
6. |
$sub_subj:
<$sub_subj> is the subject you want to be placed in subscription confirmation
messages. Keep it as short as possible.
e.g: $sub_subj = "Your subscription request to a Bilkent Alumni Message
List";
|
7. |
$unsub_subj:
<$unsub_subj> is the subject you want to be placed in unsubscription confirmation
messages. Keep it as short as possible.
e.g: $unsub_subj = "Your unsubscription request";
|
8. |
$already_subj:
<$already_subj> is the subject you want to be placed in messages sent to people who
send a subscription request to a list they have already subscribed to. Keep it as short as
possible.
e.g: $already_subj = "You are already subscribed.";
|
9. |
$subj_prefix:
<$subj_prefix> is the string that we shall prefix to user supplied Subject lines
before distributing a message to subscribers. The purpose of this prefix is to help those
recipients who wish to filter their incoming messages. This variable can have a null
value.
e.g: $subj_prefix="BAML: ";
|
10. |
$xmailer:
<$xmailer> is the X-Mailer description to be used in outgoing messages. Not
important at all; could be any text. Keep it as short as possible.
e.g: $xmailer = "Bilkent Alumni Message Lists";
|
11. |
$mailaddr:
<$mailaddr> is the mail address thru which people will communicate with this list.
Change only the host part of the email addr in the line below. Do not forget to escape the
"@" with a backslash.
e.g: $mailaddr = "$listid\@lists.bilkent.edu.tr";
|
12. |
$list_url:
<$list_url> : I suggest you setup a web page to publish some info on how people
should use the lists of
this service, some sample subs/unsubs messages etc. Once you get this page done, you must
put its full URL into $list_url. if you do not intend to maintain a web page for this
service you should assign a null value to $list_url.
You can see a sample web site for this application
here.
e.g: $list_url="http://lists.bilkent.edu.tr/alumni";
|
13. |
$nburst:
<$nburst> : For highly populated lists, creating too many sendmail processes
could cause significant performance degradation on the server. To avoid this, this program
will sleep for <$sleep_interval> seconds after sending each <$nburst>
messages.
e.g: $nburst = 10;
|
14. |
$sleep_interval:
<$sleep_interval> : see the comment above for <$nburst>.
e.g: $sleep_interval = 10;
|
15. |
Notification
Mails:
The script contains various PERL statements that build and sendout notification mails to
the user and to the list administrator. If you like you can modify these mail messages
too; but I recommend you leave them as they are unless you have some experience with PERL.
e.g:
open(MAIL,
"|$mailprogram -t");
print MAIL "From: $listname <$admin_email>\n";
print MAIL "Subject: $already_subj\n";
print MAIL "X-Mailer: $xmailer \n";
print MAIL "To: $sender\n\n";
print MAIL "You are already subscribed to \"$listid\" : $listname\.\
n\n";
close (MAIL);
|
16. |
Once you
finish editing the "Program Constants"
Copy the edited listserver.pl script file to /usr/local/bin; or whereever you are putting
your local site binaries.Make sure that /usr/local/bin/listserver.pl is owned by root:root.
( chown root:root /usr/local/bin/listserver.pl )
Make sure that the file is world
readable/executable and writable only by the owner.
(chmod 755 /usr/local/bin/listserver.pl )
|
17. |
Creating Lists :
Think of some easy-to-remember "list alias names" for the lists
that you want to start running. "general" could be a good one start with. Please
take care that the list alias names will be used as the recipient name in email addresses;
therefore they must be valid user IDs for your UNIX.Think about some short but explanatory "Full
Names" for these lists.
e.g:
List Alias Name |
Full List Name |
test |
SIMPLEX Test List |
general |
General Bilkent Univ.
Discussions |
alumni |
General Bilkent Alumni
List |
ee-grad |
EE Grad Students List |
cs-grad |
CS Grad Student List |
chess |
Chess Club List |
To create the lists,
you need to put some new aliases in your mail transport agent's (usually
/usr/lib/sendmail) "aliases" file. The name of this
"alias" file is specified in the sendmail configuration file (/etc/sendmail.cf)
and unless somebody has changed it; it is "/etc/aliases".
For every list you want to start, you
must put a line in the mail aliases file and execute the "newaliases" UNIX
command. For the above 5 lists; for example; you would put
# SIMPLEX List Server
Related Aliases
test: "|/usr/local/bin/listserver.pl test
'SIMPLEX Test List'"
general: "|/usr/local/bin/listserver.pl general 'General Bilkent Univ.
Discussions'"
alumni: "|/usr/local/bin/listserver.pl alumni 'General
Bilkent Alumni List'"
ee-grad: "|/usr/local/bin/listserver.pl ee-grad 'EE Grad Students
List'"
cs-grad: "|/usr/local/bin/listserver.pl cs-grad 'CS Grad Students
List'"
chess: "|/usr/local/bin/listserver.pl chess
'Chess Club List'"
Once you edit the
/etc/aliases file; you should run the "newaliases" command. Actually
you need to run this command everytime you make a modification in this file. The changes
you make will not be effective till you run the "newaliases"
command.
|
18. |
Now you are
ready!
Try subscribing yourself to the "test" list by sending an e-mail message to
test@simplexserver.domain with the word "subscribe" as the first and only text
in the subject line. Case is not significant. You should use your real e-mail account
while sending this message.You
should soon receive an email confirmation of your subscription.
Send another subscription request
using the same email account. You should receive a "You are already subscribed"
message.
Subscribe another account that you can
receive mail for and send a test posting to the list. Both of your accounts should receive
this posting.
Try unsubscribing
from the "test" list by sending an e-mail message to test@simplexserver.domain
with the word "unsubscribe" as the first and only text in the subject line. Case
is not significant. You should use your real e-mail account
while sending this message.You should soon receive an unsubscription confirmation.
|
19. |
Enjoy!
|
22. |
I strongly
recommend that you read "Admin Notes" to
make full use of SIMPLEX features. |
|
|