Authentication 特定网络的nginx ldap身份验证旁路
我正在debian jessie 8.5上运行nginx v1.6.3,编译了以下模块: 从不同的子网连接到站点时,我需要以下行为: 子网A:需要通过ldap进行身份验证 子网B:没有身份验证 我尝试了geo模块,仅当子网A匹配时才启用ldap_auth,但它仍然需要auth 我的部分配置 geo$val{ 默认为0; 10.0.0.0/24 1; } error.log: 2016/06/23 23:48:50[emerg]3307#0:/etc/nginx/sites enabled/proxy:32中不允许使用“auth_ldap”指令Authentication 特定网络的nginx ldap身份验证旁路,authentication,networking,nginx,ldap,debian,Authentication,Networking,Nginx,Ldap,Debian,我正在debian jessie 8.5上运行nginx v1.6.3,编译了以下模块: 从不同的子网连接到站点时,我需要以下行为: 子网A:需要通过ldap进行身份验证 子网B:没有身份验证 我尝试了geo模块,仅当子网A匹配时才启用ldap_auth,但它仍然需要auth 我的部分配置 geo$val{ 默认为0; 10.0.0.0/24 1; } error.log: 2016/06/23 23:48:50[emerg]3307#0:/etc/nginx/sites enabled/pro
我曾考虑过在ldap_auth nginx模块中添加一个switch auth_ldap_旁路,但我不喜欢nginx的编程模块。也许有一个解决方案。我找到了一个临时解决办法:复制nginx站点配置。让它在不同的端口上侦听。使用iptables将流量从特定子网重定向到nginx站点(有或没有身份验证)。
server {
...
location / {
if ($val) {
ldap_auth ....
}
}