首页 > 系统相关 >Nginx接入LDAP

Nginx接入LDAP

时间:2024-11-06 16:21:02浏览次数:1  
标签:http temp nginx 接入 module Nginx LDAP -- path

一、nginx添加ldap模块

接入ldap,nginx服务需要添加nginx-auth-ldap-master模块,我是用的yum安装的nginx,没有这个模块

1.1 查看nginx现有模块

]# nginx -V
nginx version: nginx/1.24.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'

1.2 下载相同版本的1.24.0的nginx

]# cd /root/soft
]# wget https://nginx.org/download/nginx-1.24.0.tar.gz
## 解压
]# tar -zxvf nginx-1.24.0.tar.gz

1.3 下载模块

]# cd /root/soft/nginx-1.24.0
]# git clone https://github.com/kvspb/nginx-auth-ldap.git

1.4 编译模块

]# ./configure --add-module=/root/soft/nginx-1.24.0/nginx-auth-ldap --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
编译
]# make

1.5 替换原有的nginx服务命令

]# mv /usr/sbin/nginx /usr/sbin/nginx.bak20240123
]# cp -a objs/nginx /usr/sbin/nginx
]# nginx -V
nginx version: nginx/1.24.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --add-module=/root/soft/nginx-1.24.0/nginx-auth-ldap --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'

二、配置ldap

2.1 在nginx的http域下加入ldap的配置

    ldap_server ngldap {
        url ldap://192.168.100.101:389/dc=wyg,dc=com?uid?sub?(objectClass=*);#uid可以换成cn
        binddn "cn=admin,dc=wyg,dc=com";
        binddn_passwd "123456";
        group_attribute memberuid;##与require valid_user一起用
#        group_attribute member;##与require group一起用
        group_attribute_is_dn on;
        require valid_user;  ##不做限制,使用所有"cn=admin,dc=wyg,dc=com"的用户都可以登录,注释掉require group配置项
#        require group "cn=jenkins,ou=Group,dc=wyg,dc=com"; ##限制在ou=jenkins的组织内的members用户
    }

2.2 在server或者localtion中添加ldap_server项

代理http://192.168.100.101:666/的示例

server {
    listen 8666;
    server_name localhost;

    # Web log
    access_log /var/log/nginx/h5ai.log;
    error_log /var/log/nginx/h5ai-error.log;

    # Proxy Settings
    location / {
        auth_ldap "Forbidden";
        auth_ldap_servers ngldap;
        proxy_pass http://192.168.100.101:666/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

默认的示例

server {
    listen 8000;
    server_name localhost;
    location / {
        root html;
        index index.html index.htm;
        auth_ldap "Forbidden";
        auth_ldap_servers ngldap;
    }
}

2.3 检查配置

]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

2.4 重启nginx

]# nginx -s relaod

2.5 验证

如下需要使用ldap用户登录

image-20240517154910998

标签:http,temp,nginx,接入,module,Nginx,LDAP,--,path
From: https://www.cnblogs.com/wangyuanguang/p/18530487

相关文章

  • 摄像机实时接入分析平台视频分析网关越界检测算法:智能安防的精准防控
    在当今的安全防护领域,越界检测技术的重要性日益凸显。作为人工智能视频监控技术的一个关键组成部分,越界检测视频分析网关能够实时、准确地监控,快速识别异常行为并触发警报,保障区域安全,以下是深入解析。一、技术原理与特点视频分析网关越界检测算法基于深度学习和计算机视觉技术......
  • 用nginx来实现搭建Hexo个人博客
    一、配置基础环境1.1关闭防火墙systemctlstopfirewalldsetenforce02.2配置阿里云yum源mkdirshell#创建shell目录cdshell#进入目录vialiyun.sh#创建名字为aliyun的文件名的shell脚本cataliyun.sh#查看,将以下内容填入#!/bin/bashr......
  • 国标GB28181摄像机接入EasyGBS国标GB28181视频平台:GB28181拉流、推流应用场景和特点
    国标GB/T28181作为安防视频领域的重要标准,为国标GB28181视频平台EasyGBS提供了无缝接入平台的统一框架。在这一框架下,国标GB28181摄像机接入EasyGBS国标GB28181视频平台,实现了实时监控、录像管理等多种功能,极大地提升了安防监控的效率和灵活性。以下是具体的应用场景和特点:......
  • Nginx 在Linux中安装、使用、配置详解
    一、官网下载Nginx官网地址:http://nginx.org/en/download.html Linux系统中,使用wget粘贴链接进行下载wgethttps://nginx.org/download/nginx-1.26.1.tar.gz 二、上传到服务器解压1、上传到指定的服务器地址上传的地址自己决定,我上传到/usr/Nginx。2、解压......
  • Pbootcms网站,从Apache切换为Nginx后网站打不开
    打开网站设置登录宝塔面板。选择需要配置的网站,点击“设置”。进入伪静态设置在网站设置页面中,找到并点击“伪静态”选项卡。添加Nginx伪静态规则在伪静态设置中,清空原有规则或选择自定义规则。输入以下Nginx伪静态规则:location/{if(!-e$request_f......
  • Nginx 常用参数详解和举例说明实操指南
    Nginx常用参数详解和举例说明实操指南一、引言1.参数详解的目的和意义Nginx的配置参数是优化性能和提升安全性的关键。通过合理配置这些参数,可以显著提高Nginx的性能,减少资源消耗,增强系统的稳定性和安全性。2.适用人群和场景运维工程师:负责Nginx的日常管理和维护,需......
  • java计算机毕业设计基于nginx负载均衡的慢性病专家系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、研究背景随着互联网技术的飞速发展,医疗行业也在不断寻求数字化转型。在当今社会,慢性病患者数量逐渐增多,对医疗资源的分配和管理提出了更高的要求。传统的......
  • LDAP--Jenkins详解笔记
    一、Ldap的结构1.组织角色所有用户都可以登录,但是只有创建时的admin组角色有增删改的权限,相当于是根目录,千万不能删,删了就全没了注意,admin用户是首个超级登录用户(相当于根),需要用配置文件生成,详见:https://www.cnblogs.com/wangyuanguang/p/18189832##注意修改wyg部分为自己自......
  • 实时金融股票数据API接口websocket接入方法
    一、使用websocket的协议提升传输速度实时金融股票数据对于投资者和交易员来说至关重要。通过使用WebSocket接入方法,可以轻松获取实时金融股票类数据并及时做出决策。WebSocket是一种高效的双向通信协议,它允许数据的实时推送,避免了不断的轮询请求。这种接入方法具有多个优势。......
  • nginx反向代理实现获取用户真实ip
    参考资料:https://www.cnblogs.com/mzhaox/p/11214747.html用户真实ip是223.193.x.x,发送请求,请求经过NginxA->NginxB->最后到达后端服务nginxA的关键配置:http{include/etc/nginx/mime.types;default_typeapplication/octet-stream;log_formatm......