The child's environment is set to the current PAM environment list, as returned by pam_getenvlist(3) In addition, the following PAM items are exported as environment variables: PAM_RHOST, PAM_RUSER, PAM_SERVICE, PAM_TTY, PAM_USER and PAM_TYPE, which contains one of the module types: account, auth, password, open_session and close_session.
Commands called by pam_exec need to be aware of that the user can have controll over the environment.
All module types (auth, account, password and session) are provided.
Add the following line to /etc/pam.d/passwd to rebuild the NIS database after each local password change:
password optional pam_exec.so seteuid /usr/bin/make -C /var/yp
This will execute the command
make -C /var/yp
with effective user ID.
pam.conf(5), pam.d(5), pam(7)
pam_exec was written by Thorsten Kukuk <firstname.lastname@example.org> and Josh Triplett <email@example.com>.