在验证期间使用PAM运行脚本

问题描述

我有一台服务器,该服务器是对用户进行身份验证的freeradius客户端。 我必须在身份验证过程中向用户发送带有身份验证令牌的电子邮件,但似乎只能在登录服务器后才能运行它(使用google身份验证器获取密码) 这可能吗?

#%PAM-1.0
auth       requisite    pam_exec.so /etc/raddb/mailshot.sh
account    requisite     pam_nologin.so
auth       requisite     pam_google_authenticator.so
account    include      password-auth
session    include      password-auth

脚本

#!/bin/bash

# Output PAM authentication directly into var/log/messages
set | grep PAM | xargs logger

key=`google-authenticator-key`
token=`oathtool --totp -b $key`
subj="${PAM_USER} is trying to connect"
echo "Here's your PIN+Token number: $token | mail -s "$subj" ${PAM_USER}@domain.example

不完全确定我是否缺少某些内容,或者只是在PAM中存在限制

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)