Sunteți pe pagina 1din 40

Contents

Page

Preface

vii

Related publications

Ordering Cray Research publications


Conventions

Reader comments

vii

vii

viii

viii

Product Overview [1]

How does DynaWeb work?

DynaWeb directory structure

Executable files

Hardware and software platforms supported

Home page

Access and error logs


CGI scripts

Administering a DynaWeb Server [2]


Running DynaWeb

Running DynaWeb as a server

11

11

12

12

13

Running DynaWeb as a CGI script


Procedure 1:

Setting up DynaWeb as a CGI script

Upgrading the document base

SG6104 1.2

11

Cray Research, Inc.

iii

Contents

Online Software Publications Administrators


Guide
Page

Procedure 2:
Example 1:

Upgrade steps
Upgrade example

Converting CrayDoc files


Procedure 3:
Example 2:

14

14

16

17

CrayDoc conversion steps


CrayDoc conversion

Managing access logs

18

19

Security and HTTP Authentication [3]


Authentication configuration parameters
Syntax of DWEB_HOST_ACL
Example 3:

22

23

24

24

24

DWEB_HOST_ACL and list parsing

Enabling HTTP Authentication


Procedure 4:

DWEB_HOST_ACL and wildcards

Parsing of DWEB_HOST_ACL
Example 4:

Enabling authentication

Maintaining access lists

Procedure 5:

Adding users

Procedure 6:

Verifying users

Procedure 7:

Deleting users

Authentication troubleshooting

25

25

26

26

27

27

28

Index

iv

21

29

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Contents

Page

Figures
Figure 1.

DynaWeb directory structure

Tables
Table 1.

SG6104 1.2

Supported platforms and corresponding DynaWeb software files

Cray Research, Inc.

Preface

This document describes administration of the Cray Research Online


Software Publications server (Cray DynaWeb server), release 1.2. The Cray
DynaWeb server provides online access to Cray Research documentation by
using the DynaWeb server from Electronic Book Technologies, Inc. (EBT).

Related publications
The following documents contain additional information that may be helpful:
Online Software Publications Installation Guide, publication SG6105
DynaWeb Client User Guide, an EBT publication, available from the URL
http://dynaweb.ebt.com/ebtdoc/client

Ordering Cray Research publications


The User Publications Catalog, publication CP0099, describes the
availability and content of all Cray Research hardware and software
documents that are available to customers. Cray Research customers who
subscribe to the Cray Inform (CRInform) program can access this
information on the CRInform system.
To order a document, either call the Distribution Center in Mendota Heights,
Minnesota, at +16126835907, or send a facsimile of your request to fax
number +16124520141. Cray Research employees may send electronic
mail to orderdsk (UNIX system users).
Customers who subscribe to the CRInform program can order software
release packages electronically by using the Order Cray Software option.
Customers outside of the United States and Canada should contact their
local service organization for ordering and documentation information.

SG6104 1.2

Cray Research, Inc.

vii

Preface

Online Software Publications Administrators


Guide

Conventions
The following conventions are used throughout this document:
Convention

Meaning

command

This fixed-space font denotes literal items such


as commands, files, routines, path names,
signals, messages, and programming language
structures.

variable

Italic typeface denotes variable entries and


words or concepts being defined.

user input

This bold, fixed-space font denotes literal items


that the user enters in interactive sessions.
Output is shown in nonbold, fixed-space font.

Reader comments
If you have comments about the technical accuracy, content, or organization
of this document, please tell us. You can contact us in any of the following
ways:
Send us electronic mail from any system connected to the Internet, using
the following Internet address:
publications@timbuk.cray.com

Contact your Cray Research representative and ask that a Software


Problem Report (SPR) be filed. Use PUBLICATIONS for the group name,
PUBS for the command, and NO-LICENSE for the release name.
Call our Software Publications Group in Eagan, Minnesota, through the
Customer Service Call Center, using either of the following numbers:
18009502729 (toll free from the United States and Canada)
+16126835600

viii

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Preface

Send a facsimile of your comments to the attention of Software


Publications Group in Eagan, Minnesota, at fax number
+16126835599.
We value your comments and will respond to them promptly.

SG6104 1.2

Cray Research, Inc.

ix

Product Overview [1]

The Cray Research Online Software Publications server (Cray DynaWeb


server) makes Cray Research documents available to World Wide Web
(WWW) browsers.
The Cray DynaWeb server is based on DynaWeb software produced by
Electronic Book Technologies, Inc. (EBT). DynaWeb is a commercial-grade
Web server that serves documents marked up in a standard generalized
mark-up language (SGML) implementation to Web browsers for rapid
navigation and searching. The Cray DynaWeb server provides the following
benefits to Cray users:
Serves Cray Research electronic documents to Web browsers such as
Netscape Navigator
Provides access to documents from the Cray Research WWW home page
(http://www.cray.com) or from a local installation on your network
Accommodates searching across document groupings
Integrates with other WWW servers
The DynaWeb server transforms the SGML source files to hypertext mark-up
language (HTML), delivering documents to your Web browser. To enable
browsing of large manuals, the server automatically separates large
documents into smaller units and generates a table of contents (TOC) for the
documents. Users can navigate through the TOC hierarchy, selecting
information managed by the Web browser. If you choose to run the server
within your network, you can add new Cray Research documents and
updates to documents as needed.
The Cray DynaWeb server provides a user interface called the Online
Library, which provides access to the documents in the DynaWeb directories.

SG6104 1.2

Cray Research, Inc.

Product Overview [1]

Online Software Publications Administrators


Guide

Note: Throughout this chapter, references are made to the DynaWeb


directory structure. The directories above the DynaWeb server root
directory (servroot) can be whatever you want. This manual uses the
path name /path/servroot to define the path to the DynaWeb server
root directory.

1.1 How does DynaWeb work?


Documents in DynaWeb are stored in SGML and converted to HTML when a
Web browser requests the document.
Like any Web server, a DynaWeb server listens for hypertext transfer
protocol (HTTP) requests from browsers. Each request contains a uniform
resource locator (URL) that identifies the server and a particular block of
data such as a home page, a section of text, or an image.
Online Library documents (mostly manuals) are binary files that contain
SGML-tagged text and graphics. The SGML-to-HTML converter transforms
each request for all or part of an online document into an HTML-tagged text
stream. If a large block of text is requested, the converter dynamically builds
a table of contents for the text.
By default, the Cray DynaWeb server listens for incoming requests on port
8080, which does not require super user (root) privileges.

Caution: As noted above, DynaWeb uses a port number greater than


1024 (8080, by default) so that root privileges are not required to run
the DynaWeb daemon. However, if you have an Internet connection,
ports over 1024 are accessible to users external to your site. This is a
security risk for your site, and a violation of copyright and licensing
restrictions under which Cray Research and its customers must
operate. Consequently, you must disable external access to port 8080 on
the DynaWeb server or employ other access control measures for port
8080 on that machine.
The server can handle up to 256 simultaneous requests. The connections are
short-lived, lasting only long enough for the server to process the requested

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Product Overview [1]

data and send it to the browser. After sending the requested information, the
server terminates its connection.
As an alternative to running DynaWeb as a server, another HTTP server can
serve Online Library documents. In this case, the HTTP server runs the
DynaWeb SGML-to-HTML converter as a common gateway interface (CGI)
script. For information on running DynaWeb as a CGI script, see Section
2.1.2, page 12.1
Note: The Cray DynaWeb server has been tested using Netscape
Navigator 2.02. The server is also accessible using the Mosaic and Lynx
browsers; however, tables are not fully supported. Other browsers may
work but are not explicitly supported by the server.

1.2 DynaWeb directory structure


The following shows the DynaWeb directory structure:

Deferred implementation.

SG6104 1.2

Cray Research, Inc.

Product Overview [1]

Online Software Publications Administrators


Guide

path

binplatform

cgi-bin

data

logs

config

servroot

styles

security

docs

icons

images

library

alt

help

summary
a10528

Figure 1. DynaWeb directory structure

Directories below path are created by the installation process.


The DynaWeb directories and their contents are as follows:

Directory

Description

bin

Executable files.

cgi-bin

Sample CGI scripts.

data/config

Configuration files for DynaWeb.

data/security

Licensing file.

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Product Overview [1]

data/styles

Style sheet templates for SGML-to-HTML


conversion.

logs

Log files produced by DynaWeb.

servroot

The DynaWeb root directory. All information


below this directory is publicly accessible.

servroot/C

Error message pages and HTTP error codes.

servroot/docs

HTML files that provide the interface for the


Online Library, including the home page. This
directory has two subdirectories:

servroot/icons

help

HTML files that provide help for


the Online Library interface.

summary

HTML files that provide summary


pages for documents in the Online
Library.

Icon files for the control buttons used by


DynaWeb. This directory has one subdirectory:
alt

Alternative icons for some


DynaWeb buttons.

servroot/images

Image (graphics) files used by DynaWeb and the


Online Library.

servroot/library

Online Library subdirectories, which contain


the Online Library documents.

1.3 Executable files


The DynaWeb installation procedure places executable files (programs) in
the DynaWeb /path/binplatform directory. You will not use these files
unless you want to implement additional security measures as described in
Chapter 3, page 21.

SG6104 1.2

Cray Research, Inc.

Product Overview [1]

Online Software Publications Administrators


Guide

The installation also places the start.stop.dynaweb.sh and


system.startup.dynaweb.sh scripts in the /path directory. You can use
the start.stop.dynaweb.sh script to start the server manually. The
system.startup.dynaweb.sh script is provided to include in normal
startup procedures called in the event of a system shutdown.
The programs in the binplatform directory are as follows:

Program

Description

dynaweb

The dynaweb program is the DynaWeb server.


Using the dynaweb program is described in
Section 2.1.1, page 11.

dwpasswd

If the DynaWeb server is using HTTP


authentication to limit access to the server, the
dwpasswd program is used to add users and
their passwords to a password file that it
creates. It also verifies users. For more
information, see Chapter 3, page 21.

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

dwsgml2html

Product Overview [1]

The dwsgml2html program converts SGML to


HTML for transmission over the Internet and
interpretation by Web browsers. This program
is used internally by the DynaWeb server. The
program can also be run as a CGI script, as
described in Section 2.1.2, page 12.2

1.4 Home page


The Online Library home page is /path/servroot/docs/homepage.html.
All links to Online Library documents are provided through this home page
and the pages that are linked to it.

Caution: While it is possible to add links to or change references on


the home page, it is not recommended. The Online Library accesses
documents by using symbolic links that should not be altered.

1.5 Access and error logs


DynaWeb supports an access log file and an error log file. By default, the
server logs information to both files.
The log files are fully compatible with the HTTPD protocol, which allows you
to use any of the available filtering tools for NCSA or CERN servers. You
can use scripts to extract useful statistics, such as the total number of
accesses, the number of requests, and the type of information requested. For
more information and some sample filtering tools, see the following URL:
http://www.w3.org/hypertext/WWW/Tools/Overview.html

The log files can grow large and should be cleaned up as part of your regular
maintenance procedures. If you prefer, you may deactivate logging of
accesses by changing the value of DWEB_ACCESSLOG to OFF in the DynaWeb

Deferred implementation.

SG6104 1.2

Cray Research, Inc.

Product Overview [1]

Online Software Publications Administrators


Guide

/path/data/config/dynaweb.cfg configuration file. For information on


making these changes, see Section 2.4, page 19.

1.6 CGI scripts


DynaWeb supports CGI scripts.3 CGI defines an interface that lets your
server run scripts. You can use an HTML form as an interface to an external
CGI script that replaces parameters with the value a user specifies in the
form. Sample CGI scripts can be found in the path/cgi-bin directory.
For additional information, including a complete description of CGI, see the
following URL:
http://hoohoo.ncsa.uiuc.edu/cgi/

1.7 Hardware and software platforms supported


Hardware platform support for the Cray DynaWeb server is dictated by
EBTs support for DynaWeb. The following lists the hardware and software
supported.

Table 1. Supported platforms and corresponding DynaWeb software files

Vendor

Hardware

OS and levels

Software file

DEC

Alpha series

OSF/1 3.x

dynaweb10_decosf.tar

Hewlett-Packard

HP 9000 series

HP-UX 9.x

dynaweb10_hp.tar

IBM

RS 6000

AIX 3.2+ (not 4.x)

dynaweb10_ibm.tar

Deferred implementation.

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Product Overview [1]

Vendor

Hardware

OS and levels

Software file

Silicon Graphics

IRIX 5.x

dynaweb10_sgi5.tar

Sun Microsystems

SPARC series

Solaris 2.x

dynaweb10_sun5.tar

SG6104 1.2

Cray Research, Inc.

Administering a DynaWeb Server [2]

This chapter describes procedures for performing DynaWeb server


administration tasks.
Note: Throughout this chapter, references are made to the DynaWeb
directory structure. The directories above the DynaWeb server root
directory (servroot) can be whatever you want. This manual uses the
path name /path/servroot to define the path to the DynaWeb server
root directory.

2.1 Running DynaWeb


DynaWeb can run either as a server or as a CGI script. Because the
DynaWeb server currently supports only non-secure basic HTTP
authentication, a security-conscious administrator may wish to run
DynaWeb as a CGI script piggybacked on another server, using the
SGML-to-HTML conversion and the organizational capabilities of the
product while retaining the extra security provided by the front-end server.
This section describes the default method of running DynaWeb as a server
and explains how to piggyback DynaWeb on another Web server.
2.1.1 Running DynaWeb as a server
The dynaweb program starts the DynaWeb server as a process. It usually is
not started from the command line. Instead, it is started automatically from
the installation script or when the system boots, if you have included the
system.startup.dynaweb.sh script in your system startup procedures.
By default, the DynaWeb server uses port number 8080, which does not
require super user (root) privileges.

SG6104 1.2

Cray Research, Inc.

11

Administering a DynaWeb Server [2]

Online Software Publications Administrators


Guide

You may need to restart the DynaWeb server manually. If you do, enter the
following commands:
# cd /path
# ./start.stop.dynaweb.sh

If the DynaWeb server is already running, the /start.stop.dynaweb.sh


script will stop it. If it is not running, it will be started.
2.1.2 Running DynaWeb as a CGI script
The procedure for running DynaWeb as a CGI script under another server
(for example, the Mindshare Out Box Web Server from Silicon Graphics or
the Netscape Communications Server) is described in this section.1 It
assumes that dynaweb is not already running as a process.

Procedure 1: Setting up DynaWeb as a CGI script


Perform the following steps as super user:
1. Start the DynaWeb server by issuing the following commands:
# cd /path
# ./start.stop.dynaweb.sh

Starting the DynaWeb server links Online Library collections to the


DynaWeb root directory.
2. Create a link named nph-dynaweb to the dwsgml2html program:
# cd cgibindir
# ln -s /path/bin/dwsgml2html nph-dynaweb

cgibindir is the cgi-bin directory of the server that receives requests,


not the DynaWeb cgi-bin directory. Normally it is /var/www/
cgi-bin.

12

Deferred implementation.

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Administering a DynaWeb Server [2]

3. Create data and data/config directories, as follows:


# cd ..
# mkdir data data/config

4. Create a link to the /path/data/config/dynaweb.cfg configuration


file, as follows:
# cd data/config
# ln -s /path/data/config/dynaweb.cfg .

5. Check to see whether the icons and images directories already exist,
as follows:
# cd ../..
# ls -d icons images

If you get an error message for either directory, it does not exist.
6. For each directory that already exists, copy the contents of the
corresponding DynaWeb directory, as follows:
# cp - r /path/servroot/icons/* icons
# cp /path/servroot/images/* images

7. For each directory that does not exist, create links to the /path/
servroot/icons and /path/servroot/images directories:
# ln -s /path/servroot/icons .
# ln -s /path/servroot/images .

The alternative server can now serve Online Library documents.

2.2 Upgrading the document base


When you receive a new DynaWeb CD-ROM, you upgrade your existing
server by running the installation script as you do for an initial installation.
Ensure that you specify the directory in which the existing DynaWeb server
resides. The installation procedure will detect the existing server and ask

SG6104 1.2

Cray Research, Inc.

13

Administering a DynaWeb Server [2]

Online Software Publications Administrators


Guide

you whether you want to upgrade the server or destroy the existing server
and replace it with the software and documents from the new CD-ROM.

Procedure 2: Upgrade steps


To upgrade the document database, perform the following steps:
1. Ensure that the login you are using has full read and write permissions
to all the DynaWeb files and directories. If possible, it should be the
same login used to initially install DynaWeb.
2. Place the CD-ROM in the caddy and insert it into the drive.
3. Mount the CD-ROM by using the mount(1 or 1M) command. Specific
mount commands vary by software platforms. For example, on Solaris
systems you do not specify a mount point; the software is automatically
mounted to /cdrom. On other systems you must specify a mount point.
Check your local man pages for the syntax you need.
4. Change directories to your mount point, as follows:
# cd mount_point

5. Execute the install script, as follows:


./install

6. When you are prompted, specify the full path name to the DynaWeb
server. This is the /path directory under which the DynaWeb
servroot directory exists.

Example 1: Upgrade example


The following is an example of upgrading an existing server.
In this example, the following are true:
The server resides in the directory /var/tmp/dynaweb.
The documentation that is being added is from the SWS-ION release 2.0
and resides in the sws_200.dwebdocs.tar file.

14

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Administering a DynaWeb Server [2]

% ./install
Checking for system utilities the installation scripts need:
cat
cp
cut
fgrep
grep
ls
mkdir
mv
rm
sed
sh
sort
tar
uname
uncompress
Type the full path of the base DynaWeb directory
(RETURN quits): /var/tmp/dynaweb
It appears that DynaWeb is already installed in /var/tmp/dynaweb/
Do you want to upgrade that servers document base with the documents from
this CD, or destroy that existing DynaWeb server and documentation,
(*everything* under "/var/tmp/dynaweb"),replacing it all with the
software and documents from this CD?
U = Upgrade
(the default)
D = Destroy
u
Proceeding with upgrade
Install dynaweb_11 documents (1MB)? (y/n) [y] n
Install sws_200 documents (4 Mb)? (y/n) [y] y
First remove old sws 110 documents? (y/n) [y]
Unpackaging tar file... done
Updating local script paths... done
Updating and indexing DynaWeb collections...

SG6104 1.2

Cray Research, Inc.

15

Administering a DynaWeb Server [2]

Online Software Publications Administrators


Guide

CRAY T3E systems


System administrator/operator
SWS-ION
UNICOS/mk
Complete list
Updating alphabetical titles list... done
Updating configuration files... done
% exit

2.3 Converting CrayDoc files


If you have used the CrayDoc online documentation utility at your site, you
can convert the documents to run under the Cray DynaWeb server as part of
the installation procedure. It is highly recommended that you convert these
documents as part of the installation procedure. If that is not possible, you
can run the craydoc2dynaweb.pl program as a separate procedure.
Note: Not all CrayDoc graphics will display in DynaWeb, as some of
these files are in formats other than gif, and DynaWeb accommodates
only gif files.
A known bug also exists with CrayDoc books that causes the
appearance of a spurious button between the Collapse TOC button
and the Clear Search button when they are visible. On color
monitors, it is blue; on grayscale monitors, it is gray. You can ignore the
button, although it will cause no damage if you use it.
The CrayDoc files must be local to the DynaWeb server machine or on an
NFS cross-mounted file system.
To convert the documents, you must have write permission to the following
directories and files:
Each CrayDoc collection directory
Each CrayDoc book directory (.../collection/books/book_number)

16

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Administering a DynaWeb Server [2]

Each CrayDoc books style directory (.../collection/books/


book_number/styles)
The DynaWeb library directory (/path/servroot/library)
The DynaWeb all collection (/path/servroot/library/all/books)
The DynaWeb all book list (/path/servroot/library/all/
booklist.txt)
The DynaWeb all index (/path/servroot/library/all/libidx)
The DynaWeb Topics page (/path/servroot/docs/topics.html)
The craydoc2dynaweb.pl program has two required arguments:
base_dweb_dir (the /path directory into which the DynaWeb software is
installed)
dweb_hardware_bin_dir (the name of the directory containing the
DynaWeb software files specific to your hardware platform, as in
binsun5)
The program will prompt you for the full path of the CrayDoc master
.ebtrc file.

Procedure 3: CrayDoc conversion steps


To convert your CrayDoc files by using craydoc2dynaweb.pl, perform the
following steps:
1. Ensure that you have the correct permissions, that the CrayDoc files
are accessible, and that you know the location of necessary files and
directories.
2. Change directories to the /path directory:
# cd /path

3. Execute the craydoc2dynaweb.pl program:


# ./craydoc2dynaweb.pl

SG6104 1.2

base_dweb_dir

Cray Research, Inc.

dweb_hardware_bin_dir

17

Administering a DynaWeb Server [2]

Online Software Publications Administrators


Guide

Example 2: CrayDoc conversion


The following is a sample run of the craydoc2dynaweb.pl program. The
base DynaWeb directory is /opt/dynaweb, the DynaWeb software directory
is binsun5, and the path to the master .ebtrc file is /var/tmp/cdoc/
.ebtrc.
# cd /opt/dynaweb
#./craydoc2dynaweb.pl /opt/dynaweb binsun5
Do you have CrayDoc installed at your site?

[n]

Do you want your CrayDoc files available under DynaWeb?

[n]

The Craydoc files must be on a file system that is either mounted on the
machine running DynaWeb or cross-mounted so as to be accessible to it.
Is this the case? [n] y
You will need write permission to:
* Each Craydoc collection directory
* Each Craydoc book directory (.../{collection}/books/{book_number})
* Each Craydoc books style directory (
^--> /styles)
* The DynaWeb library directory (.../servroot/library)
* The DynaWeb all collection (.../servroot/library/all/books)
* The DynaWeb all book list (.../servroot/library/all/booklist.txt)
* The DynaWeb all index (.../servroot/library/all/libidx)
* The DynaWeb topics page (.../servroot/docs/topics.html)
This script checks for these permissions, but if you dont have them it
must quit in mid-conversion. Consequently, its best to be sure,
before starting, that you have these permissions. Do you? [n] y
Enter the full path name to the Craydoc installations master .ebtrc file:
/var/tmp/cdoc/.ebtrc
Processing "UNICOS Features 9.0.2" ...
Processing "Basic Admin & Operations 9.0.2" ...

18

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Administering a DynaWeb Server [2]

Processing "UNICOS Programming Support 9.0.2" ...


Processing "UNICOS Introductory Information 9.0.2" ...
Updating topics list and titles list ...
Re-indexing DynaWebs master document search file ...
Cray Research DynaWeb installation complete

2.4 Managing access logs


The access and error logs that the DynaWeb server keeps can get very large
very quickly. You will probably want to clean them out every week or month,
depending on how much usage your server has. The files are as follows:
/path/logs/access_log
/path/logs/error_log
By default, the server logs every access (that is, every mouse click) in the
access log file. If this behavior is more detailed than you need, you may
deactivate the servers logging of accesses by changing the setting of the
DWEB_ACCESSLOG parameter to OFF in the DynaWeb configuration file,
/path/data/config/dynaweb.cfg.

SG6104 1.2

Cray Research, Inc.

19

Security and HTTP Authentication [3]

The DynaWeb server provides the ability to authenticate any requests it


receives from a client against a password file. Authentication is achieved
through the HTTP protocol, which includes the user name and password in
the request for information. The user name and password are checked
against a master list of approved users.

Caution: Use the procedures described in this chapter only if Netscape


is the browser that will be used at your site. DynaWeb 1.0 does not
send the WWW-Authenticate headers that Lynx and Mosaic require in
order to designate a security realm; this will be corrected in a future
EBT DynaWeb release.
This chapter describes the authentication configuration parameters and
administrative procedures for authentication.
Throughout this chapter, references are made to the DynaWeb directory
structure. The directories above the DynaWeb server root directory
(servroot) can be whatever you want. This manual uses the path name /
path/servroot to define the path to the DynaWeb server root directory.
Note: DynaWeb uses a port number greater than 1024 (8080, by
default) so that root privileges are not required to run the DynaWeb
daemon. However, if you have an Internet connection, ports over 1024
are accessible to users external to your site. This is a security risk for
your site, and a violation of copyright and licensing restrictions under
which Cray Research and its customers must operate.
Consequently, you must disable external access to port 8080 on the
DynaWeb server or employ other access control measures for port 8080
on that machine.

SG6104 1.2

Cray Research, Inc.

21

Security and HTTP Authentication [3]

Online Software Publications Administrators


Guide

3.1 Authentication configuration parameters


The HTTP authentication process used by DynaWeb is controlled through
the use of two parameters located in the configuration file /path/data/
config/dynaweb.cfg. These two parameters are DWEB_PASSWD_FILE and
DWEB_HOST_ACL. When the DynaWeb server is first installed, these
parameters are commented out in the configuration file. A description of the
parameters follows:
Parameter

Function

DWEB_PASSWD_FILE

Points to the location of the password file that


the DynaWeb server checks when it receives a
request for authentication. The location and
name of the password file can be anything you
desire, as long as you specify an absolute path
name to the password file, as in the following
example:
DWEB_PASSWORD_FILE = \ /path/passwdfile

Note: Ensure that you place your password file


above the servroot directory in the DynaWeb
directory structure. If it is below the servroot
directory, browsers will be able to access it.
DWEB_HOST_ACL

22

Acts as an access control list for the DynaWeb


server. It has the value *, which allows
everyone access. To change the default, list in
the configuration file the hosts that are allowed
or denied access to the information served by
the DynaWeb server. Whenever the server
receives a request for information and
DWEB_HOST_ACL is present, the server checks to
see that the host name of the requestor matches
one of the values in DWEB_HOST_ACL. If either
the name of the client cannot be found in the
list or the name is found, but marked for
non-access, the request is denied. If the name is

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Security and HTTP Authentication [3]

found as a value of DWEB_HOST_ACL, the server


fulfills the request.
The next two sections provide more information about DWEB_HOST_ACL.

3.1.1 Syntax of DWEB_HOST_ACL


The value of DWEB_HOST_ACL in the /path/data/config/dynaweb.cfg
configuration file is a list of individual host names and regular expressions
that make up a complete list of the clients that are able to access the server.
Each value is separated from the next by a blank space and can contain both
regular expressions and the boolean "not" expression, signified by the
exclamation point (!). The following modifiers are used in DWEB_HOST_ACL:
Modifier

Meaning

Matches any character or set of characters until a space is


encountered.

Matches any single character.

Host names with the exclamation point (!) in front of them are
not allowed to access the server.

Because the wildcard * (asterisk) is equal to all host names, using it means
that all hosts are allowed access. This is necessary if you wish to allow full
access to your server from the Internet, because you have no way to
determine ahead of time who will request access. To deny access to all hosts
but the ones you specify, remove the * and replace it with the names of the
hosts you want. Wildcards can be combined with partial host names to allow
or disallow groups of clients. For example, the line DWEB_HOST_ACL =
*.company.com allows any user from company.com to access your server.
You can also use the exclamation point (!) to name a specific host or group of
hosts you do not want to access the server. If you add the ! to the example
above, (DWEB_HOST_AUTH = !*.company.com), no one from company.com
can browse the server.
The following example shows the effect of various uses of the parameter:

SG6104 1.2

Cray Research, Inc.

23

Security and HTTP Authentication [3]

Online Software Publications Administrators


Guide

Example 3: DWEB_HOST_ACL and wildcards


To allow anyone to access the server, use the following syntax:
DWEB_HOST_ACL = *

To allow access only by clients from first.com or second.com, use the


following syntax:
DWEB_HOST_ACL = *.first.com *.second.com

To allow everyone but the hosts at first.com to access the server, use the
following syntax:
DWEB_HOST_ACL = !*.first.com *

Ensure that you list exclusions first, as described in Example 4, page 24.

3.1.2 Parsing of DWEB_HOST_ACL


When DynaWeb checks the DWEB_HOST_ACL list for authentication, it starts
at the front and parses the list until it finds a match. It then stops checking
and grants or denies access. This means that, if you deny a group access and
later decide to grant access to one member of that group, you need to specify
that this user has access before you deny access to the group. When listing
values, work from the most specific to the most general.
The following example demonstrates how DynaWeb parses DWEB_HOST_ACL.

Example 4: DWEB_HOST_ACL and list parsing


If you currently allow everyone to access your server, the configuration file
reads DWEB_HOST_ACL = *.
Suppose you wish to deny a competitor access to your server, so you add the
competitors domain to the control list and use the exclamation point to deny
access, as follows:
DWEB_HOST_ACL = * !*.competitor.com

24

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Security and HTTP Authentication [3]

Unfortunately, this syntax does not deny the competitor access. Because the
parser checks the list from left to right, the first thing it encounters is the
asterisk, which matches any host name by definition. Because the parser has
found an entry that it can match to the host requesting access, it stops
looking and accepts the request. The parser never encounters the qualifying
statement !*.competitor.com, which would have denied access to this
particular requestor.
A good rule of thumb when dealing with the DWEB_HOST_ACL parameter is
to start with the specific and end with the general. To deny the competitor
access, use the following syntax:
DWEB_HOST_ACL = !*competitor.com *

3.2 Enabling HTTP Authentication


When the DynaWeb server is installed, authentication is inactive. The
following procedure enables HTTP authentication.

Procedure 4: Enabling authentication


To enable user name and password checking, perform the following steps as
super user:
1. Use any text editor to open the /path/data/config/dynaweb.cfg
configuration file.
2. Uncomment the line that starts DWEB_PASSWD_FILE = by removing
the pound sign (#) from the beginning of the line.
3. Determine the path name of the file that will contain the password
information. Add the absolute path name of the file as the value of
DWEB_PASSWD_FILE.
Note: To prevent other browsers from accessing the password file,
create it above the servroot directory.

SG6104 1.2

Cray Research, Inc.

25

Security and HTTP Authentication [3]

Online Software Publications Administrators


Guide

4. Edit the password file as described in Section 3.3, page 26. The
password file is an NCSA-style password file.
5. Restart the DynaWeb server, as follows:
# cd /path
# ./start.stop.dynaweb.sh

3.3 Maintaining access lists


The following procedures describe how to maintain access lists for HTTP
authentication.

Procedure 5: Adding users


To add a user to the access list by using the dwpasswd program, perform the
following steps as super user.

Caution: Due to a known bug in the DynaWeb 1.0 software, currently


dwpasswd will add only one user; if you attempt to use this utility to
add more users, it causes a segmentation fault. Consequently, you will
need to add users after the first by using a text editor to manually edit
the access list. The format of access list entries is as shown in the
following example. Fields in each entry are separated by colons (:); only
the user and password fields (the first two fields) are required:
usera:foobar:::John Doe::

1. Issue the following command:


# cd /path/binplatform
# ./dwpasswd passwdfile -a [user [passwd [real name]]]

passwdfile is the name of the password file you specified in Step 3 of


Procedure 4, page 25.
2. Alternatively, you can omit the information after the -a option. The
dwpasswd program prompts you to enter it. When entering the real

26

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

Security and HTTP Authentication [3]

name of the user at the prompt, you do not need to enter quotation
marks. You do need quotation marks if you use the -a option.
3. After you have entered all of the information, the dwpasswd program
prompts you to repeat the process. This repetition ensures accuracy of
the information.
4. To exit the program, press ENTER without typing a user name.

Procedure 6: Verifying users


To verify that a user has access to the DynaWeb server, perform the
following steps as super user:
1. Issue the following command:
# cd /path/binplatform
# ./dwpasswd passwdfile -v [user [passwd]]

passwdfile is the name of the password file you specified in Step 3 of


Procedure 4, page 25.
2. Alternatively, you can omit the information after the -v option. The
dwpasswd program prompts you to enter it.
3. After you have entered the password, the dwpasswd program prompts
you to enter the password again. The program then reports that the
name and password are valid.
4. To exit the program, press ENTER without typing a user name.

Procedure 7: Deleting users


To delete a user from the password file, perform the following steps as super
user:
1. Open the password file for editing. The location of the password file is
specified by the DWEB_PASSWD_FILE parameter in the /path/data/
config/dynaweb.cfg configuration file.
2. Remove the line containing the users information.

SG6104 1.2

Cray Research, Inc.

27

Security and HTTP Authentication [3]

Online Software Publications Administrators


Guide

3. Write the file and exit the editor. That user no longer has access to the
server.

3.4 Authentication troubleshooting


It might be true that, after users supply an ID and password and they have
been validated by the server, they are again prompted for their information
when they switch from one page to another.
The server authenticates users for each URL that contains a different host
name. Ensure that all URLs match the DWEB_HOST parameter. For example,
mycomputer:8080 does not match mycomputer.mycompany.com:8080.

28

Cray Research, Inc.

SG6104 1.2

Index

A
Access lists
adding users to . . . . . . .
deleting users from . . . . .
maintaining for HTTP
authentication . . . . . .
verifying users in . . . . . .
Access logs . . . . . . . . . .
maintaining . . . . . . . .
Adding documents to server . . .
alt subdirectory
contents . . . . . . . . . .
Authentication
HTTP
adding users to access lists .
deleting users in access lists
enabling . . . . . . . . .
maintaining access lists for .
troubleshooting . . . . . .
verifying users in access lists

. 26
. 27
.
.
.
.
.

26
27
. 8
19
13

. . 5

.
.
.
.
.
.

26
27
25
26
28
27

. 14
. 12
3, 8
. 12
. . 4
3, 8
. 12
. . 4
.
.
.
.

18
16
18
16

. 18
. 18

bin directory
contents . . . . . . . . . . . . 4
Book Summary pages
location in directory structure . . . 5
Browsers supported . . . . . . . . 3

SG6104 1.2

CD-ROM
mounting . . . . . . . . . .
CGI . . . . . . . . . . . . .
CGI scripts . . . . . . . . . .
running DynaWeb as . . . .
cgi-bin directory
contents . . . . . . . . . .
Common gateway interface (CGI)
scripts . . . . . . . . . .
running DynaWeb as . . . .
config subdirectory
contents . . . . . . . . . .
Converting CrayDoc files
example . . . . . . . . . .
CrayDoc file conversion . . . . .
example . . . . . . . . . .
CrayDoc graphics . . . . . . .
craydoc2dynaweb.pl program
example . . . . . . . . . .
running . . . . . . . . . .

data directory
config subdirectory . . . .
security subdirectory . . .
styles subdirectory . . . .
Directory contents
DynaWeb server . . . . . .

Cray Research, Inc.

. . . 4
. . . 5
. . . 5
. . . 4

29

Index

Online Software Publications Administrators


Guide

Directory structure
DynaWeb server . . . . . . . . . 4
Document base
upgrading . . . . . . . . . . 13
DWEB_ACCESSLOG parameter
dynaweb.cfg file . . . . . . . . 21
DWEB_HOST_ACL parameter
dynaweb.cfg file
description . . . . . . . . . 22
parsing . . . . . . . . . . 24
syntax . . . . . . . . . . . 23
using wildcards . . . . . . . 24
DWEB_PASSWD_FILE parameter
dynaweb.cfg file . . . . . . . . 22
enabling HTTP authentication 25
dwpasswd program . . . . . . . . 6
dwsgml2html program . . . . . . . 7
dynaweb program . . . . . . . . . 6
starting . . . . . . . . . . . 11
DynaWeb software files
for supported hardware . . . . . 8
dynaweb.cfg file
creating links to
to run DynaWeb as CGI script 13
DWEB_HOST_ACL parameter
description . . . . . . . . . 22
parsing . . . . . . . . . . 24
syntax . . . . . . . . . . . 23
using wildcards . . . . . . . 24
DWEB_PASSWD_FILE parameter
22, 25
enabling HTTP authentication in 25
setting DWEB_ACCESSLOG
parameter . . . . . . . . 21

30

E
Error codes
servroot/C directory
Error logs . . . . .
maintaining . . .
Executable files . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

. 5
. 8
19
. 6

H
Hardware platforms supported . . . 8
help subdirectory
contents . . . . . . . . . . . . 5
Home page
changing/adding links
caution against . . . . . . . . 7
Online Library . . . . . . . . . 7
HTTP authentication
adding users to access lists . . . 26
deleting users from access lists . 27
enabling . . . . . . . . . . . 25
maintaining access lists for . . . 26
troubleshooting . . . . . . . . 28
verifying users in access lists . . 27
Hypertext mark-up language (HTML) 1

I
icons subdirectory
contents . . . . . . . . . . . . 5
images subdirectory
contents . . . . . . . . . . . . 5
creating links to
to run DynaWeb as CGI script 13
install script

Cray Research, Inc.

SG6104 1.2

Online Software Publications Administrators


Guide

running for upgrades

Index

. . . . . 14

L
library subdirectory
contents . . . . . . . . . . .
Links
changing/adding on home page
caution against . . . . . . .
creating to dynaweb.cfg file
to run DynaWeb as CGI script
creating to images subdirectory
to run DynaWeb as CGI script
Logs
access and error . . . . . . . .
maintaining . . . . . . . .
logs directory
contents . . . . . . . . . . .
Lynx support . . . . . . . . . .

. 5

Online Library
home page . . . . . . . . .
interface . . . . . . . . . .
location in directory structure .
Operating system levels supported
Overview of server . . . . . . .

.
.
.
.
.

.
.
.
.
.

7
2
5
8
1

. 7
P
13
13
. 8
19
. 5
. 3

M
Mosaic support . . . . . . . . . . 3
Mounting the CD-ROM . . . . . . 14

N
Netscape Navigator support . . . . . 3
Network connections
establishing on server . . . . . . 3

SG6104 1.2

Port number
server . . . . . . . . . . . . . 2

S
security subdirectory
contents . . . . . . . .
Server
connections . . . . . . .
features . . . . . . . .
overview . . . . . . . .
port number . . . . . .
root directory . . . . . .
upgrading document base
servroot directory
C subdirectory . . . . .
contents . . . . . . . .
docs subdirectory . . . .
help subdirectory . . .
summary subdirectory .
icons subdirectory . . . .
alt subdirectory . . . .
images subdirectory . . .
library subdirectory . . .

Cray Research, Inc.

. . . . 5
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

. 3
. 1
. 1
. 2
. 5
13

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

5
5
5
5
5
5
5
5
5

31

Index

SGML
definition . . . . . . . . . .
SGML-to-HTML conversion . . .
Standard generalized mark-up
language (SGML) . . . . .
start.stop.dynaweb.sh script
enabling HTTP authentication
location . . . . . . . . . .
running . . . . . . . . . .
styles subdirectory
contents . . . . . . . . . .
summary subdirectory
contents . . . . . . . . . .
system.startup.dynaweb.sh script

32

Online Software Publications Administrators


Guide

location

. . . . . . . . . . . . 6

. . 1
1, 2
U
. . 1
. 26
. . 6
. 12
. . 5
. . 5
. 11

Uniform resource locator (URL)


definition . . . . . . . . . . . . 2
Upgrading document base . . . . 13

W
Web browsers supported . . . . . . 3

Cray Research, Inc.

SG6104 1.2

S-ar putea să vă placă și