Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Authentication 特定网络的nginx ldap身份验证旁路_Authentication_Networking_Nginx_Ldap_Debian - Fatal编程技术网

Authentication 特定网络的nginx 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

我正在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”指令


我曾考虑过在ldap_auth nginx模块中添加一个switch auth_ldap_旁路,但我不喜欢nginx的编程模块。也许有一个解决方案。

我找到了一个临时解决办法:复制nginx站点配置。让它在不同的端口上侦听。使用iptables将流量从特定子网重定向到nginx站点(有或没有身份验证)。
server {
...
location / {
    if ($val) {
        ldap_auth ....
    }
}