A simple PAM module to authenticate users on Linux-based Operating Systems,
via /etc/shadow.
The module also supports user banning.
Auth Management Group:
- implement parser for
/etc/shadowto extract information such as: username, hash algo, salt, etc. (using<shadow.h>) - implement shadow file hashing algorithms w.r.t salt
- implement
pam_sm_authenticate(using the above necessities)
Account Management Group:
- get path to banned users file from PAM config file and check for existence of
username(hence banned) - check if password is expired according to
/etc/shadow
Make the following packages are installed on your machine:
$ sudo apt install libpam-dev
$ sudo apt install libssl-dev
...