如何配置 squid 以传递客户端 ip 来验证程序?
Posted
技术标签:
【中文标题】如何配置 squid 以传递客户端 ip 来验证程序?【英文标题】:How to configure squid to pass client ip to authenticate program? 【发布时间】:2014-10-28 06:15:01 【问题描述】:我想在 Squid 中使用我自己的身份验证程序,如下所示。
auth_param basic program /usr/bin/python python_script_location
auth_param basic children 20
auth_param basic realm Username and password
auth_param basic credentialsttl 5 hours
但默认情况下,squid 只将用户名和密码传递给 python_script_location(参见此处的示例http://gofedora.com/how-to-write-custom-basic-authentication-plugin-squid-python/)。
是否可以将一些内置值作为额外参数传递? 例如客户端IP,squid服务器的IP(我有多个传出IP地址,我想知道客户端访问的是哪个IP)
【问题讨论】:
【参考方案1】:Squid 3.5 似乎会添加这个新功能:key_extras for auth_param。
http://www.squid-cache.org/Doc/config/auth_param/
http://devel.squid-cache.org/customlog/logformat.html
%la : 接受请求的本地 IP 地址
然后我们可以将“本地 IP 地址”添加到身份验证程序命令行,如下所示: auth_param 摘要 key_extras "%la"
【讨论】:
以上是关于如何配置 squid 以传递客户端 ip 来验证程序?的主要内容,如果未能解决你的问题,请参考以下文章