CGIWrap - Installation Instructions


Basic Installation

Look at the notes to see if there are any hints for your platform.

Type "./Configure" and answer the questions.

Type "make"

Copy cgiwrap executable to your servers cgi-bin directory

Make cgiwrap owned by root, executable by all, and setuid. (Note: This step must be performed while logged in as "root")

chown root cgiwrap
chmod 4755 cgiwrap

Hardlink or symlink nph-cgiwrap, nph-cgiwrapd, cgiwrapd to cgiwrap in the cgi-bin directory.

ln [-s] cgiwrap cgiwrapd
ln [-s] cgiwrap nph-cgiwrap
ln [-s] cgiwrap nph-cgiwrapd

You can, if you wish, install it with less permissive permissions. (Eg. 4750) But if you do this, make sure that the group of cgiwrap is the same as the group that the server runs as.


Password Protected Installation

The following are pecial additional instructions for installing a copy of cgiwrap that allows users to create access controlled scripts. For this to work, you will need to have a single common password file that will be used by all authenticated scripts.

Re run configure, specify "public_html/auth-cgi-bin" instead of "public_html/cgi-bin" for the cgi directory.

Type make.

Create a new server cgi-bin directory called "auth-cgi-bin", and install this new copy of cgiwrap into that directory the same way you installed it into the cgi-bin directory. (4 copies, and set permissions). You will now be able to use the url: http://server/auth-cgi-bin/cgiwrap...

To enable access control, place a .htaccess or equivalent file in the auth-cgi-bin directory where cgiwrap is located, that requires authentication to get at any file in that directory, but will allow any valid user to get through.

Now, your users can simply check: 1. That their script was executed by them (eg. check the real uid of the script to make sure someone else wasn't running it by hand) 2. That the REMOTE_USER environment variable contains a user name that they want to allow to access the script.


Supplementary Configuration

If you enabled the access file checking, you need to make sure and create the necessary files.

If you enabled the user directory rewriting feature, you need to create the configuration file that you specified in the Configure run.