PAMを介して認証が完了するたびにスクリプトを呼び出したいのですが、ログインが正常に完了したモジュールはpam_yubico.soです。
e.g: user does sudo:
-> user is not configured for 2FA on sudo
-> user logs in with password
-> callback is not invoked
e.g.2: same user does ssh login:
-> ssh requires 2FA for this user
-> user logs in with password & yubikey
-> user login accepted
-> invoke callback
e.g.3: another user does sudo:
-> user configuration has 2FA required for sudo
-> user types pass and presses yubikey
-> user login accepted
-> invoke callbak
したがって、具体的には、ユーザーが2つの要素を使用して正常に認証するたびにコールバックをトリガーする必要があります。
bash_profileやrcでスクリプトを実行するだけでは私が望むものではありません。 2F(kde、sudo、ssh su ...)を使用するたびにコールバックを呼び出す必要があります。
答え1
正常なモジュールが実行可能になったら、コマンドを実行して pam_exec.so に移動します。success=${num lines to skip}
人8 pam_exec
auth sufficient pam_unix.so
auth [success=1 default=ignore] foo_2fa.so some_other=options
auth requisite pam_deny.so
auth optional pam_exec.so debug /path/to/my/script.sh
上記をテストしていないため、調整して安全であることを確認する必要があります。