我们有 2 个 freeradius 身份验证服务器,为大约 12000 名用户提供服务。用户经常输入错误的凭据,这会给帮助台带来很大的压力。我想编写一个脚本来监控 radius 日志中的身份验证失败情况(或者 mysql postauth 表),然后在数据库服务器上查找客户的电子邮件地址,以便能够向他们发送一封电子邮件,其中包含指向密码故障排除页面的链接。
问题是如何最好地做到这一点?我的第一个想法是设置 rsyslog 或其他程序,并将日志转发到 web/db 服务器,然后在那里运行一个脚本来跟踪日志。我还想到在每个 radius 服务器上本地运行某个程序来监控日志或 mysql postauth 表。我可以弄清楚如何实现它,但我不确定最佳策略。有什么建议吗?
答案1
您可以尝试在 Post-Auth-Type REJECT 中使用 perl
post-auth {
# Login successful: get an address from the IP pool.
ippool
Post-Auth-Type REJECT {
# Login failed
perl
}
}