LDAP 服务器搭建和应用

2.1 安装 OpenLDAP:

sudo apt-get install slapd ldap-utils

2.2基本配置:

配置域名称和管理员密码。可以通过重新配置 slapd 来完成此操作:

sudo dpkg-reconfigure slapd

复制默认数据库配置文件至实际工作目录,并调整权限:

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

chown -R ldap:ldap /var/lib/ldap

2.3 添加基础数据结构:

创建一个包含基本组织单元(OU)和条目的 LDIF 文件(例如 base.ldif),然后导入该文件:

ldapadd -x -D cn=admin,dc=example,dc=com -W -f base.ldif

3 进一步配置

根据需求配置更多的 OU、用户账户等信息

https://blog.csdn.net/qq_37733540/article/details/123988481

https://blog.csdn.net/zachz/article/details/138417874

4 测试 LDAP 服务:

使用 ldapsearch 命令检查 LDAP 数据库是否正确设置:

ldapsearch -x -b dc=example,dc=com

package main

import (
	"fmt"
	"github.com/go-ldap/ldap/v3"
	"log"
)

func main() {
   
   
	// 连接到LDAP服务器
	l, err := ldap.DialURL("ldap://IP:389")
	if err != nil {
   
   
		log.Fatal(err)
	}
	defer l.Close()

	// 绑定到LDAP服务器
	err = l.Bind("cn=admin,dc=liu", "lalon2023")
	if err != nil {
   
   
		log.Fatal(err)
	}
	fmt.Println("Successfully connected to LDAP server!")

	// 添加条目
	//addEntry3(l)

	// 查找条目
	searchEntry(l)
	flag, _ := AuthenticateLdap(l, "testuser4", "newpassword", "dc=liu")
	fmt.Println(flag)
	return
	// 修改条目
	modifyEntry(l)

	// 删除条目
	deleteEntry(l)
}

func addEntry2(l *ldap.Conn) {
   
   
	// 创建一个新的条目
	addRequest := ldap.NewAddRequest("cn=testuser2,dc=liu", nil) //一条记录的位置(全局唯一)  域名组件 , 域名的部分
	addRequest.Attribute("objectClass", []string{
   
   "person", "organizationalPerson", "inetOrgPerson"})
	addRequest.Attribute("uid", [
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值