[Unit] Description=AuthForge MFA daemon Documentation=https://github.com/dangerousthings/authforge After=dbus.service Requires=dbus.service [Service] Type=dbus BusName=io.dangerousthings.AuthForge ExecStart=/usr/sbin/authforged Restart=on-failure RestartSec=2 # Hardening — daemon needs to read /etc/authforge and /var/lib/authforge, # write to /etc/pam.d via pam-auth-update, and call libfido2 (USB hid). NoNewPrivileges=yes ProtectSystem=full ProtectHome=read-only PrivateTmp=yes ProtectKernelTunables=yes ProtectKernelModules=yes ProtectControlGroups=yes ReadWritePaths=/etc/authforge /var/lib/authforge /etc/pam.d /usr/share/pam-configs /etc/u2f_mappings [Install] WantedBy=multi-user.target