Before we begin our tour into the world of PAM configurations we should take a look at where PAM files are stored.
The PAM-aware applications are linked against the PAM library. This library is typically located in the /lib
directory with the name libpam-X.so.0
where X is the version number. Typically, it is a symbolic link to the real library, which makes it easier to have more than one version installed. If you're an application developer who wishes to use PAM in your application, you will find the relevant header file as the file named pam_modules.h
in the /usr/include/security
directory.
Any PAM implementation consists of a set of modules. The modules are shared objects (.so
files), which can be dynamically loaded as the PAM configuration requests them. The shared objects are typically located in /lib/security
(GNU/Linux), or /usr/lib
(FreeBSD) and have pam as suffix in their names.
The configuration of PAM can be done in two equivalent ways. You can either put everything...