The module provides functionality for only one PAM management group: password changing. In terms of the module-type parameter, this is the ``password '' feature.
The Fn pam_chauthtok service function may ask the user for a new password, and verify that it meets certain minimum standards. If the chosen password is unsatisfactory, the service function returns PAM_AUTHTOK_ERR
The following options may be passed to the module:
N0 is used for passwords consisting of characters from one character class only. The character classes are: digits, lower-case letters, upper-case letters, and other characters. There is also a special class for non- ASCII characters, which could not be classified, but are assumed to be non-digits.
N1 is used for passwords consisting of characters from two character classes that do not meet the requirements for a passphrase.
N2 is used for passphrases. Note that besides meeting this length requirement, a passphrase must also consist of a sufficient number of words (see the passphrase option below).
N3 and N4 are used for passwords consisting of characters from three and four character classes, respectively.
When calculating the number of character classes, upper-case letters used as the first character and digits used as the last character of a password are not counted.
In addition to being sufficiently long, passwords are required to contain enough different characters for the character classes and the minimum length they have been checked against.
It is important that you do set max = 8 if you are using the traditional hashes, or some weak passwords will pass the checks.
The substring search is case-insensitive and is able to detect and remove a common substring spelled backwards.
The only modifier can be used to disallow user-chosen passwords.
The primary use for this option is when ask_oldauthtok = update is also specified, in which case no other module gets a chance to ask for and validate the password. Of course, this will only work with UNIX passwords.