DaxAuth is a project that provides facial authentication for Linux systems using PAM (Pluggable Authentication Modules). This project is currently under development and may have some security risks, such as the potential to unlock with photos, also actually tested for some months it seems to have problems working in dark spaces
DaxAuth can be integrated in any system that uses PAM as authentication
Automatic instalation for: Debian-based systems, Red Hat-based systems and Arch-based systems
git clone https://github.com/daxrpm/dax-auth.gitcd dax-auth && ./install.shThe installation has been tested on Fedora 41-42, Debian, Ubuntu 24.04 - 24.10, and Arch Linux.
sudo apt-get install -y cmake make gcc g++ python3 python3-dev python3-pip python3-venv libpam0g-devsudo dnf install -y cmake make gcc gcc-c++ python3 python3-devel python3-pip pam-develsudo pacman -S --noconfirm cmake make gcc python python-pip python-virtualenv pamsudo mkdir -p /opt/daxauth
sudo mkdir -p /var/lib/daxauth/datasudo python3 -m venv /opt/daxauth/.venv
source /opt/daxauth/.venv/bin/activatesudo /opt/daxauth/.venv/bin/pip install -r requirements.txtsudo cp -r src /opt/daxauth
sudo cp -r config /opt/daxauthsudo cp src/daxauth /usr/local/bin/daxauth
sudo chmod +x /usr/local/bin/daxauthcd /opt/daxauth/src/pam
sudo makeThe directory may change based on your distro
sudo cp pam_face_auth.so /lib/securitysudo cp /etc/pam.d/sudo /etc/pam.d/sudo.bakYou can add it too all the modules you want to work with
sudo grep -qF "auth sufficient pam_face_auth.so" /etc/pam.d/sudo || sudo sed -i '1a auth sufficient pam_face_auth.so' /etc/pam.d/sudoTo register a new face, use the add command. This command requires superuser privileges.
sudo daxauth addThis will prompt you to provide the necessary images for face registration.
To clear all face encodings and registered images, use the clear command. This command also requires superuser privileges.
sudo daxauth clearThis will delete all stored face encodings and registered images.
To verify a face against the registered faces, use the verify command.
daxauth verifyThis will compare the provided face image with the registered faces and return the verification result.
If you would like to contribute to this project, please fork the repository and submit a pull request.
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for more details.
For any questions or issues, you can contact me to this mail: dax@dax-ec.ru