El archivo pam.conf y los archivos por usuario del PAM utilizan una sintaxis que es diferente de los archivos específicos del servicio en el directorio pam.d.
Las entradas en los archivos /etc/pam.conf y /etc/security/pam_policy se realizan en uno de dos formatos:
service-name module-type control-flag module-path module-options
service-name module-type include path-to-included-PAM-configuration
Las entradas en los archivos service-name en el directorio /etc/pam.d omiten el nombre del servicio. El nombre del archivo proporciona el nombre del servicio.
module-type control-flag module-path module-options
module-type include path-to-included-PAM-configuration
Los elementos de la sintaxis del archivo de configuración del PAM son los siguientes:
El nombre del servicio que no distingue mayúsculas de minúsculas, por ejemplo, login o ssh. Una aplicación puede utilizar distintos nombres para los servicios que la aplicación proporciona. Por ejemplo, busque la palabra PAM en la página del comando man sshd(1M) para los nombres de servicio para los servicios diferentes que el daemon sshd proporciona.
El nombre de servicio predefinido “other” es el nombre del servicio predeterminado si no se proporciona una configuración de servicio específica.
Indica el tipo de servicio, es decir, auth, account, session o password.
Indica el rol del módulo en la determinación del valor de éxito o error del servicio. Los indicadores de control válidos se describen en Apilamiento del PAM.
La ruta de acceso al módulo que implementa el tipo de módulo. Si el nombre de la ruta no es absoluto, se asume que es relativo a la ruta /usr/lib/security/$ISA/. La macro o el token $ISA le indica a la estructura del PAM que busque en el directorio específico de la arquitectura de la ruta del módulo.
Opciones como nowarn y debug que se pueden transferir a los módulos de servicios. Una página del comando man de un módulo describe las opciones de ese módulo.
Especifica la ruta de acceso completa a un archivo de configuración del PAM o un nombre de archivo que es relativo al directorio /usr/lib/security.