WASPII
WEB Based Announcement Mailing List Software


Admin Notes


What Is WASPII?

Features

System Requirements

Download

Installation

Admin Notes

Sample Config

Sample Screen Shots

Using WASPII

Contact

 

 

1.

The Master Administrator(s):
Lists created by WASPII are managed by designated administrators, which are different than the master WASPII administrator. WASPII master administrator(s) is(are) designated by IP address(es). The authorized master administrator(s) can create new lists assigning the lists' own administrators which are normally different than the master admin(s).

Master admin(s) is(are) the administrator(s) of all lists maintained by WASPII.

Master administrator hosts are listed in the plain text file cgi-root/waspii/.hosts.admin (eg. /home/httpd/cgi-bin/waspii/.hosts.admin), one IP per line. Comments are allowed for each line after a #.

A sample master .hosts.admin file would look like:

139.179.10.46  # Ayfer's PC
139.179.23.123 # Ayfer's SUN wks.

 

2. The List Administrator(s):
List administration privileges are granted either to people (UserID based admin authentication) or to hosts (IP based admin authentication).

The authentication scheme must be specified while creating a list. Although it is possible to change this selection later, we do not recommend it due to potential complications.

Please note that you should either select IP based or UserID based authentication. You cannot do both.

If you select IP based admin authentication, you need to give a list of IP numbers of the hosts on which  you would permit administrative tasks to be done; like adding/deleting subscribers, removing a list, listing the subscribers etc. You can assign any number of admin IPs for a list. Furthermore; you can assign whole IP blocks as admin hosts. I strongly recommend you to designate your own desktop computer's IP as an admin host. This will enable you to solve list problems remotely and easily. Admin hosts are listed in the file /../cgi-root/waspii/listname/admin/.hosts.admin where cgi-root is your web server's cgi-bin directory and listname is the directory name for the list in consideration.

A typical .hosts.admin file will look like:

139.179.10.46     # ayfer, master admin
139.179.24.12     # dick, list admin
139.179.25        # Registrar's office computers (Segment 25)

If you choose to use UserID based authentication, you need to give a list of users and their passwords that you would grant administrative rights; like adding/deleting subscribers, removing a list, listing the subscribers etc. You can assign any number of admin users for a list. I strongly recommend you to designate yourself as an admin host. This will enable you to solve list problems remotely and easily. Admin users are listed in the file /../cgi-root/waspii/listname/admin/.htpasswd where cgi-root is your web server's cgi-bin directory and listname is the directory name for the list in consideration. Please note that .htpasswd file is the native htpasswd of your http server software. For the Apache server, the file name is .htpasswd and this file password protects the directory it placed in. Adding new users to a list's authorized users must be done by adding new entries to this file but you must add entries to this file using the htpasswd command delivered by your http server software. You shouldn't edit this file to add users. You can edit .htpasswd to remove users, though.

A typical .htpasswd file will look like:

ayfer:ZEdJEFMXH3Dqs
dick:YUsdgh3Hg


3. WASPII is a subscription based mailing list service. Under normal operating conditions, users subscribe or unsubscribe voluntarily. WASPII has some additional features to disable/enable web based subscription/unsubscription for the users.

Disabling web based subscription will help you running private lists with compulsory subscription; very handy in educational sites where instructors subscribe their students for course related announcements and subscription/unsubscription is solely controlled by the list owner (the instructor).

 

4. Batch Subscription:
Initiating a list usually requires the administrator to add some subscribers manually. This can be done using the "Batch Subscription" facility in the administration menu. The list admin simply types or pastes the list of email addresses he/she wants to subscribe and choose whether a notification should be sent to the new subscribers that they are subscribed to the list. (see Batch Subscription sample screen shot).

 

5. Offline Subscription:
This is a completely separate PERL script (batchsubs.pl) that can be run at the command line to subscribe/unsubscribe people to lists. This script is intended for users who want to bind WASPII lists to other applications. A good example is new account scripts in edu campuses where each new student account should be automatically subscribed to certain WASPII lists (eg. departmental announcement lists).

batchsubs.pl usage:

    cd /.../cgi-root/waspii/list_folder
    ./batchsubs.pl -[n m] list_folder email_address

The script can add one email address at a time. For multiple  offline subscriptions, you must run the script for each user. If you use the -n flag, the email address is subscribed silently; no notification mail is sent to the new subscriber. If you use the -m flag, a notification mail is sent to the new subscriber.

Offline subscription subscribes the designated user immediately; no subscription confirmation is required.

 

6. Hidden Lists:
When a user visits the www.xxxx.yyy/listname/lists.htm page, (actually the main.cgi page) a listing off all WASPII managed lists appear on the web page. (see sample WASPII main page)  This is to help users select a list to their taste. If you want to run an announcement list without its name appearing in this listing; you should assign a directory name starting with "_" (the underscore char). Lists with directory names starting with a "_" will not appear in the main WASPII page when accessed by non-admin users. Please note that this technique will not render your list completely invisible. The list's name will appear in administrative pages and pages viewed by administrators  This feature is just a visual aid to simplify the main WASPII page.

 

7. WASPII Directory Structure
If you have root privileges to your host, you can create/modify WASPII lists manually. This requires some PERL and UNIX experience though. I do not recommend to create/edit lists manually but it will be handy to know some WASPII internals.

When the main.cgi runs, it first reads the config.pl script to get the system parameters.

main.cgi then parses the waspii directory to find directories which contain a file called config.pl. Directories without this file are assumed to be not related to WASPII lists and ignored. Directories which contain a config.pl file are assumed to be "WASPII list" directories and listed on the main web page.

If the main page is requested by a master administrator, the "Create a New List" link is displayed.

The following diagram will give an idea of the directory structure under cgi-bin/waspii.

/
  |
  |__ home
        |__ httpd
               |__ htdocs
               |     |__ (old_stuff)
               |     |__ waspii
               |            |__ creating2.htm
               |            |__ images
               |                  |__ add.gif
               |                  |__ bluearr.gif
               |                  |__ etc.
               |            |__ lists.htm
               |            |__ weblogo2.gif
               |__ cgi-bin
                     |__ (old-stuff)
                     |__ waspii
                           |__ .hosts.admin
                           |__ TEMPLATE
                                  |__ add2db.cgi
                                  |__ admin
                                  |__ etc.
                           |__ admin.cgi
                           |__ batchsubs.pl
                           |__ etc.
                           |__ list_one
                                 |__ config.pl
                                 |__ *.pl
                                 |__ admin
                                       |__ .htaccess
                               |__ .hosts.admin
                                       |__ *.pl
                                       |__ *.cgi
                                 |__ data
                                       |__ *.db
                           |__ list_two
                                 |__ config.pl
                                 |__ *.pl
                                 |__ admin
                                       |__ .htaccess
                               |__ .hosts.admin
                                       |__ *.pl
                                       |__ *.cgi
                                 |__ data
                                       |__ *.db
There is no critical directory structure under http_root/waspii.

 

8. Modifying List Parameters Manually
Although not recommended, it is possible to alter the way a list behaves by editing its config.pl file. Please be very careful; especially with single and double quotes in the configuration file (config.pl); which in fact is a PERL script. The config.pl script has descriptive and hopefully comprehensive comments.

 

9. Security and File/Directory Ownerships
Most WASPII problems are due to improper access rights to WASPII files and directories. All WASPII files and directories must be owned by the same user with your httpd daemon user. httpd daemons usually run as "nobody" who is a member of the "nobody" group. If your httpd userID is "nobody", all your WASPII directories/files must be owned by nobody:nobody.

All files with extension "pl" and "cgi" must be world executable (mode 755). All files in the admin/data directory  must be mode 700. All other subdirectories must be mode 755.