PAM_SMBFS_LOGIN(7) | Standards, Environments, and Macros | PAM_SMBFS_LOGIN(7) |
pam_smbfs_login - PAM user credential authentication module for SMB/CIFS client login
pam_smb_cred.so.1
The pam_smbfs_login module implements pam_sm_setcred(3PAM) to provide functions that act equivalently to the smbutil(1) login command.
This optional functionality is meant to be used only in environments that do not run Active Directory or Kerberos, but which synchronize passwords between clients and their CIFS/SMB servers.
This module permits the login password to be stored as if the
smbutil(1) login command was used to store a password for PAM_USER in
the user or system default domain. The choice of default domain is the first
of the following:
-Domain entry specified in the default section of the $HOME/.nsmbrc
file, if readable.
-Domain entry specified in the default section shown by the sharectl get smbfs
command.
-String WORKGROUP.
Because pam_smbfs_login runs as root during the login process, a $HOME/.nsmbrc file accessed through NFS may only be readable if the file permits reads by others. This conflicts with the requirement that passwords stored in $HOME/.nsmbrc are ignored when permissions are open.
To use this functionality, add the following line to the /etc/pam.conf file:
login auth optional pam_smbfs_login.so.1
Authentication service modules must implement both pam_sm_authenticate(3PAM) and pam_sm_setcred(3PAM). In this module, pam_sm_authenticate(3PAM) always returns PAM_IGNORE.
The pam_sm_setcred(3PAM) function accepts the following flags:
PAM_REFRESH_CRED
PAM_SILENT
PAM_ESTABLISH_CRED
PAM_REINITIALIZE_CRED
PAM_DELETE_CRED
The following options can be passed to the pam_smbfs_login module:
debug
nowarn
$HOME/.nsmbrc
Upon successful completion of pam_sm_setcred(3PAM), PAM_SUCCESS is returned. The following error codes are returned upon error:
PAM_USER_UNKNOWN
PAM_AUTHTOK_ERR
PAM_AUTH_ERR
PAM_SYSTEM_ERR
See attributes(7) for descriptions of the following attribute:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
MT Level | MT-Safe with exceptions |
smbutil(1), syslog(3C), libpam(3LIB), pam(3PAM), pam_setcred(3PAM), pam_sm(3PAM), pam_sm_authenticate(3PAM), pam_sm_setcred(3PAM), smbfs(4FS), pam.conf(5), attributes(7)
The interfaces in libpam(3LIB) are MT-Safe only if each thread within the multi-threaded application uses its own PAM handle.
August 19, 2023 | OmniOS |