我想记录身份验证请求,并想在日志中包含属性Framed-IP-Address。 这是我在radiusd.conf中的配置:
msg_goodpass = "wifi: %{Virtual-Server}, auth-type: %{control:Auth-Type}, client IP: %{Framed-IP-Address}, device: %{NAS-Identifier} (%{NAS-IP-Address}), authentication result: %{Module-Return-Code}"
msg_badpass = "wifi: %{Virtual-Server}, auth-type:%{control:Auth-Type}, client IP: %{Framed-IP-Address}, device: %{NAS-Identifier} (%{NAS-IP-Address}), authentication result: %{Module-Return-Code}"
除Framed-IP-Address外,所有属性及其值在我的日志服务器上都是可见的。此配置有问题吗?
答案 0 :(得分:0)
有多个与请求关联的属性列表。通常Framed-IP-Address
在reply
列表中,尽管在极少数情况下,它可以包含在访问请求和记帐请求中。
您可能还试图获取发送RADIUS数据包的设备的IP地址。
所以这里的问题是您实际上要访问的内容:
如果您尝试访问要分配给无线客户端的IP地址,请使用%{reply:Framed-IP-address}
如果您尝试从RADIUS数据包访问src IP,请使用%{Packet-Src-IP-Address}
。
如果您希望无线客户端的IP地址包含在访问请求中,这就是您使用%{Framed-IP-Address}
的原因,那么请与NAS供应商联系以了解为什么没有使用它。包含在访问请求数据包中。尽管我通常不希望Framed-IP-Address可用,除非这是对诸如强制门户之类的身份验证,DHCP在无线客户端身份验证之前运行。
或者您可能会误解msg_goodpass和msg_badpass配置项目的用途。
仅当处理Access-Request数据包,发送Access-Accept或Access-Reject时,才评估msg_goodpass和msg_badpass。处理计费请求数据包时,不会评估msg_goodpass和msg_badpass,这些数据包在您的情况下似乎包含Framed-IP-Address值。
您可以使用linelog模块使用与msg_goodpass和msg_badpass相同的扩展语法从Accounting-Requests中生成自定义syslog消息。
有两个示例here。只需配置一个linelog实例,然后在您的虚拟服务器的“会计”部分中调用它即可,即
accounting {
linelog
}