首页 > 其他分享 >LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证

时间:2023-05-07 14:03:04浏览次数:55  
标签:网机 ldif gitlab 用户 zabbix ldap 服务器 LDAP

一,LDAP备份迁移

1,原服务器上导出备份文件

mkdir /opt/ldap
/usr/sbin/slapcat > /opt/ldap/ldapdbak.ldif


2,目标服务器搭建ldap环境

yum install openldap openldap-clients openldap-servers
service slapd start
systemctl enable slapd
slappasswd -h {SSHA} -s xxxxx  #生成管理员密码,下面生成的密码会有用到,保存下
 
 
#配置管理员信息于dc
cat > 01initDB.ldif << EOF
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=10heroes,dc=cn

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=admin,dc=10heroes,dc=cn

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: {SSHA}2prRR5XT1p0Im0J23df+xoOlQOUlB+Ti     #注意,这里的密码替换成你上面生成的密码 
EOF                                                    #注意,属性于属性值之间使用tab键空出来的
 
#执行修改
ldapmodify -Y EXTERNAL  -H ldapi:/// -f 01initDB.ldif
 
#添加 schema
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
 
 
#安装phpadmin
yum install epel-release httpd phpldapadmin -y
#修改phpldapadmin的配置文件,访问控制权限
vim /etc/httpd/conf.d/phpldapadmin.conf,允许谁访问
添加:
Require all granted
Allow from all
 
 
#修改配置文件:vim /etc/phpldapadmin/config.php
//$servers->setValue('login','attr','dn');    这一行的注释去掉
//$servers->setValue('login','attr','uid');  这一行注释掉
 
#重启httpd服务
service httpd restart
systemctl enable httpd


3,目标服务器执行导入

systemctl stop slapd && systemctl status slapd
rm -rf /var/lib/ldap/*
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/*
 
 
#把之前原服务器导出的备份文件来到目标服务器上来执行
slapadd -l /root/ldapdbak.ldif
chown -R ldap:ldap /var/lib/ldap/*
systemctl start slapd


4,验证

访问 http://目标服务器ip/phpldapadmin


二,LDAP主从配置,阿里云服务器上的一套做主,内网上的一套做从

1,配置master

#在naster节点上执行创建一个对所有ldap对象具有读写权限的用户,用作slave访问master
cat > rpuser.ldif <<EOF
dn: uid=rpuser,dc=10heroes,dc=cn
objectClass: simpleSecurityObject
objectclass: account
uid: rpuser
description: Replication User
userPassword: root1234
EOF
 
 
ldapadd -x -w ldap管理员密码 -D "cn=admin,dc=10heroes,dc=cn" -f rpuser.ldif
 
#开启syncprov module
cat >syncprov_mod.ldif <<EOF
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib64/openldap
olcModuleLoad: syncprov.la
EOF
 
 
ldapadd -Y EXTERNAL -H ldapi:/// -f syncprov_mod.ldif
 
 
#为每个目录开启syncprov
cat >syncprov.ldif <<EOF
dn: olcOverlay=syncprov,olcDatabase={2}hdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
olcSpSessionLog: 100
EOF
 
 
ldapadd -Y EXTERNAL -H ldapi:/// -f syncprov.ldif


2,配置负载均衡

首先配置云解析dns添加ldap域名解析记录  ldap.xxx.cn A    负载均衡公网ip

负载均衡开通389监听

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_服务器


3,配置slave

cat >syncrepl.ldif <<EOF
dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl: rid=001
  
provider=ldap://ldap域名:389/
  
bindmethod=simple
  
binddn="uid=rpuser,dc=10heroes,dc=cn"
  
credentials=root1234
  
searchbase="dc=10heroes,dc=cn"
  
scope=sub
  
schemachecking=on
  
type=refreshAndPersist
  
retry="60 +"
interval=00:00:01:00
#每分钟同步一次
EOF
 
ldapmodify -Y EXTERNAL  -H ldapi:/// -f syncrepl.ldif


三,服务接入ldap认证

1,zabbix接入ldap

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_服务器_02

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_git_03

配置参数详解

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_php_04


LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_git_05

那么之后在给zabbix创建用户的时候,先到ldap服务器上创建用户,然后再对zabbix上创建同名用户,zabbix上创建用户的时候不需要填入密码,再登入zabbix的时候直接密码输入的话直接用ldap上的用户密码好了

2,gitlab接入ldap

因为我这里gitlab使用直接yum安装的,所以直接修改配置文件/etc/gitlab/gitlab.rb ,具体可以看下gitlab接入ldap官方文档:Integrate LDAP with GitLab | GitLab

编辑gitlab配置文件

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_服务器_06


gitlab-ctl reconfigure  #重载配置文件

gitlab-rake gitlab:ldap:check 检查是否能正常获取用户信息


关闭gitlab用户注册


LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_服务器_07



LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_git_08



LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_服务器_09


LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_php_10



3,jumpserver接入ldap

LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_php_11


LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_php_12



LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_服务器_13



LDAP备份迁移和LDAP主从配置,阿里云服务器做主,内网机做从,zabbix,gilab,jumpserver接入ldap认证_php_14

选择用户导入,将ldap用户导入到jumpserver里





标签:网机,ldif,gitlab,用户,zabbix,ldap,服务器,LDAP
From: https://blog.51cto.com/u_15703497/6251911

相关文章

  • LDAP中DN、CN、DC和OU指的是什么意思
    这篇文章主要介绍了LDAP中DN、CN、DC和OU指的是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。DN的英文名称是(distinguishedname),直接翻译过来就是专有名称。简单的就可以理解为一个路径就对了。这个路......
  • AD和LDAP的区别
    LDAP是轻量目录访问协议(LightweightDirectoryAccessProtocol)的缩写,LDAP标准实际上是在X.500标准基础上产生的一个简化版本AD是Active Directory的缩写,AD应该是LDAP的一个应用实例,而不应该是LDAP本身。比如:windows域控的用户、权限管理应该是微软公司使用LDAP存储了一些数......
  • docker安装openldap
    项目地址https://github.com/osixia/docker-openldap服务器安装获取相关镜像dockerpullosixia/openldapdockerpullosixia/phpldapadmin部署dockerrun-d-p389:389-p636:636-v/usr/local/ldap:/usr/local/ldap-v/data/openldap/ld......
  • openldap安装指南
    #ldapserver#安装openldapsetenforce0&&systemctlstopfirewalld&&iptables-Fyuminstall-yepel-releaseyuminstall-yopenldapopenldap-clientsopenldap-serverssystemctlstartslapdsystemctlenableslapdsystemctlstatusslapd......
  • 什么是LDAP身份认证?
    轻量级目录访问协议(LDAP)是专为目录服务开发的核心身份认证协议之一。LDAP历来被用作信息数据库,主要存储以下信息:●用户● 关于这些用户的属性● 组成员特权● ……但LDAP认证是什么,它是如何工作的?本文将回答这些问题,并阐述NingDS身份目录云平台是如何将LDAP身份认证作为......
  • python-ldap模块
    文章目录模块作用模块安装代码示例参考文档模块作用python操作ldap的库,可以对ldap的数据进行增删改查,官方文档地址:https://www.python-ldap.org/en/latest/index.html模块安装pipinstallpython-ldap代码示例不断完善中……#!/usr/bin/envpython#-*-coding:utf-8-*-#......
  • gitlab与openldap做权限认证
    1.gitlab开启并配置ldap编辑gitlab.rb配置文件打开编辑gitlab.rb配置文件:vi/etc/gitlab/gitlab.rbgitlab_rails['ldap_enabled']=true#gitlab_rails['prevent_ldap_sign_in']=falsegitlab_rails[‘ldap_servers’]=YAML.load<<-‘EOS’**EOS**为ldap相......
  • spring-boot对接ldap实现crud
    之前查询了很多通过java对接ldap的,很多都说的不太容易理解,现在写一篇文章记录一下对接ldap的过程。1.创建spring-boot项目,pom文件添加依赖<!--LDAP依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spr......
  • ImportError: /usr/1ib64/1ibldap,so,2: undefined symbol: EVP-md2, version OPENSSL_
    问题:升级openssl后,依赖库显示还是使用旧的版本修改ld.so.conf使得库指向最新的版本了,但yum会报错一个函数缺失的错误,像是python没有对应依赖库。   解决:./configsharedenable-ssl3enable-ssl3-methodenable-mdc2enable-md2--prefix=/opt/openssl-1.1.1t重新编译......
  • PentestLab-web安全LDAP测试-EXP2
    我们打开靶机选择“Example2”观察页面尝试匿名登陆报错我们分析靶机源码网上大神分析当然了,如果在不知道用户名为admin的情况下,可以使用上文所说的*来进行模糊匹配。比如a*)(%26))%00&password=xpayload为http://192.168.20.157/ldap/example2.php?name=admin)(%26))%00&password......