pamtester - test pluggable authentication modules (PAM) facility
Copyright (c) 2004-2005 Moriyoshi Koizumi. All right reserved.

1. What is pamtester?

pamtester is a tiny program to test the pluggable authentication modules (PAM)
facility, which is a defacto mechanism for authentication management in many
unices and similar OSes including Solaris, HP-UX, *BSD, MacOSX and Linux.

While specifically designed to help PAM module authors to test their modules,
that might also be useful for system administrators interested in building a
centralised authentication system using common standards such as NIS, SASL and
LDAP.

2. Installation

Just run configure and do the ordinary "make install".  Differences between
platforms will automatically be handled by the configure script.  Let me know
if it's not.

3. Using pamtester

pamtester requires at least three arguments to operate.  The first argument
is "service", which provides the name of the service.  The second one is
"user", which provides the name of the user to handle with PAM.  The last one
is "operation", which specifies the operation for PAM to perform.

Operation may be specified more than once. In that case the operations are done
in the order of occurrence.

Any operation may also be followed by the option flags that are provided
between the pair of parenthesis. Flags are all named and combinable or
inversible with bitwise operators; "|" (OR), "&" (AND), "^" (XOR) and "~" (NOT)
are accepted.

The list of allowed options is shown below:

  - PAM_SILENT

  - PAM_DISALLOW_NULL_AUTHTOK

  - PAM_ESTABLISH_CRED

  - PAM_REINITIALIZE_CRED

  - PAM_REFRESH_CRED

  - PAM_CHANGE_EXPIRED_AUTHTOK

Additional authentication information such as the name of the remote user,
the remote host and the tty can be supplied via -I (--item) option.

The following types of information are supported:

  - service

  - user

  - prompt

  - tty

  - ruser

  - rhost

3. Reporting bugs

Drop me a line if you find a bug or have any helpful suggession.


