我对 OpenLDAP 真的很陌生。我正在尝试查看 cn=config 中的所有设置并尝试更改 olcSizeLimit ( http://www.openldap.org/doc/admin24/slapdconf2.html#cn=config )的值
我尝试了以下命令(在服务器终端中以 root 身份)但它提示它找不到任何东西
root@admin:/home/administrator# ldapsearch -D "cn=admin,dc=domain,dc=com" -b "cn=config" -W >输入 LDAP 密码:
扩展LDIF
具有作用域子树的 LDAPv3 基础
过滤器:(对象类=*)
要求:全部
搜索结果
搜索:2
结果:32 没有这样的对象
数量响应:1
cn=admin,dc=domain,dc=com 是 OpenLDAP 安装期间的默认管理员设置,并且是 olcRootDN
有什么帮助吗?顺便说一句,我在 Ubuntu 14.04.1 上使用 OpenLDAP 2.4 安装
我已经在dba.stackexchange.com 上发布了这个问题,但它被认为是题外话,人们建议我应该在这里发布它,所以我将它发布在这里。
我有一个openldap服务器启动并运行ubuntu 14.10,我已经成功地DIT使用以下方法向其中添加了一个ldif:
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: hdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=example,dc=com
olcRootDN: cn=Manager,dc=example,dc=com
olcRootPW: secret
olcDbIndex: objectClass eq
Run Code Online (Sandbox Code Playgroud)
为了测试多个,DITs我尝试使用另一个添加另一个数据库ldif:
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: hdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=example1,dc=com
olcRootDN: cn=Manager,dc=example1,dc=com
olcRootPW: secret
olcDbIndex: objectClass eq
Run Code Online (Sandbox Code Playgroud)
首先看起来一切顺利,但是当我尝试搜索我的第一个数据库时,我收到一个错误消息:
result: 80 Other (e.g., implementation specific) error
text: internal error
Run Code Online (Sandbox Code Playgroud)
我对这个错误感到困惑,这slapd -d是我得到的:
bdb(dc=example,dc=com): BDB0060 PANIC: fatal region error detected; run …Run Code Online (Sandbox Code Playgroud) 我们已经安装了一个带有 OpenLDAP 模式和一些附加属性的邮件服务器。属性之一控制哪些用户对服务器的日历和公用文件夹功能具有管理权限。如何为 LDAP 数据库中的现有用户设置这些属性?
有一些软件包,很多人使用 OpenLDAP,但我也读到它有很多问题,所以我有点困惑。我有红帽,我想知道 LDAP 的最佳解决方案是什么?
刚刚开始使用 OpenLDAP 跨 Web 应用程序对用户进行身份验证后,我对文档中看到的一种模式很感兴趣:大多数安装/配置指南似乎(隐含地)建议在ldap.whatever.org.
当我在 VPS 上安装 ldap 时,我只是认为通过whatever.org.
这两种方法有什么好处吗?或者只是假设 ldap 软件将在它自己的机器上运行?
我想扩展我的 ApacheDS (OpenLDAP) 服务器的架构以跟踪虚拟机信息(操作系统、内存、磁盘空间、处理器峰值等),但我不知道要使用什么 OID,如果有的话。
你们都用什么计算机/服务器对象?
我想在 OpenLDAP 中添加自定义属性,但我可能不理解这个概念。我所做的是:
我创建了 custom.schema
attributetype ( 1.3.6.1.4.1.4203.666.100.122
NAME ( 'dateOfBirth' )
SUP name
)
attributetype ( 1.3.6.1.4.1.4203.666.100.123
NAME ( 'IPPhone' )
SUP name
)
objectclass ( 1.3.6.1.4.1.4203.666.100.1
NAME 'customAttributes'
DESC 'Custom attributes class'
)
Run Code Online (Sandbox Code Playgroud)
我添加到 slapd.conf
include /usr/local/etc/openldap/schema/custom.schema
Run Code Online (Sandbox Code Playgroud)
现在我想将这个对象类分配给我在当前数据库中的每个 uid。所以我转储了数据库,向一些 uid 添加了对象类属性,并在导入 LDIF 时,ldap 说:
65) invalid structural object class chain (inetOrgPerson/customAttributes)
Run Code Online (Sandbox Code Playgroud)
LDIF 条目是这样的:
dn: dc=sss,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: sss.com
dc: sss
structuralObjectClass: organization
dn: ou=People,dc=sss,dc=com
objectClass: organizationalUnit
ou: People
structuralObjectClass: organizationalUnit
dn: uid=zzz,ou=People,dc=sss,dc=com
objectClass: …Run Code Online (Sandbox Code Playgroud) 由于pbkdf2(Password-Based Key Derivation Function 2)是一个更安全的哈希函数,所以我想知道当前的openldap实现是否支持pbkdf2(例如pbkdf2_sha256)?
我在 google 上找到了一些关于 openldap 中 pbkdf2 支持的信息,但我不确定它适用哪个 openldap 版本,或者我没有以正确的方式做到这一点:
我已经在 ubuntu 12.04 上构建了一个版本为 2.4.28 的 openldap 服务器,并使用 python lib 生成了一个 PBKDF2-SHA256 哈希密码。然后我将这个 PBKDF2-SHA256 密码放入一个新的 ldap 用户的 userPassword 字段中,如下所示:
userPassword: '{PBKDF2-SHA256}10000$LBwTpUPGqxdH$8pDqhAruY94IhhuCZLost471pGImy//wH0pS25LO/YI='
Run Code Online (Sandbox Code Playgroud)
这没有用。ldap 日志没有报错,但是还是不能用原来的明文密码登录。
如果有人能给我一些评论或指导,我将不胜感激!!
我已经成功导入了 sshPublicKey 架构,但该属性未显示在 PHPLDAPADMIN 中。
任何人都有这个问题的经验?
我逐字逐句地做了什么:
sudo nano openssh-lpk.ldif
dn: cn=openssh-lpk,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: openssh-lpk
olcAttributeTypes: ( 1.3.6.1.4.1.24552.500.1.1.1.13 NAME 'sshPublicKey'
DESC 'MANDATORY: OpenSSH Public key'
EQUALITY octetStringMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
olcObjectClasses: ( 1.3.6.1.4.1.24552.500.1.1.2.0 NAME 'ldapPublicKey' SUP top AUXILIARY
DESC 'MANDATORY: OpenSSH LPK objectclass'
MAY ( sshPublicKey $ uid )
)
Run Code Online (Sandbox Code Playgroud)
导入架构,我应该更改 ldapi:// 吗?我尝试使用我的 IP/环回,但它不起作用,但它似乎按原样工作。
ldapadd -Y EXTERNAL -H ldapi:/// -f openssh-lpk.ldif
Run Code Online (Sandbox Code Playgroud)
从这里的指南中得到这个 >> https://blog.shichao.io/2015/04/17/setup_openldap_server_with_openssh_lpk_on_ubuntu.html
通过SF上的这篇文章确认了我应该做的事情。
但是他的指示有点含糊……
“更新 LDAP 以包含 OpenSSH-LPK 架构”
我们首先需要使用架构更新 LDAP,以便为用户添加 sshPublicKey …
是否可以从 Mac LDAP 服务器(这是专有修改的 OpenLDAP)复制所有内容。如果我必须通过复制(我认为这更难)或将数据存储从 Mac 复制到运行 OpenLDAP 的 linux 机器,这并不重要。
谢谢。
我最近遇到了一个网络设计,它大量实现了 VLAN,但没有使用专用的身份和访问管理系统,例如 Active Directory 或 OpenLDAP。还有一种设计计划使用 Active Directory,但对网络使用简单的树状子网划分。我的问题:
进一步的问题:
欢迎任何见解、提示、链接或建议。
正如标题所暗示的那样。我们正在从 OpenLDAP 作为用户身份验证迁移到 Samba 4 AD 域。但是我找不到有关如何将密码和用户传输到 Samba 4 AD 的任何信息。如何将 ou=People,dc=company,dc=com 的所有 LDAP 用户群迁移到 samba 4 AD 域?
我不需要协助转移一切,我只需要转移用户帐户。除了用户/密码之外,我已经完成了所有迁移。可以做到吗?如果是这样,如何?
我需要为我的数据库添加一堆 ACL,但很难为它编写正确的 LDIF。不幸的是,ldapmodify它的无用错误消息不是很有帮助:
modifying entry "olcDatabase={1}mdb,cn=config"
ldap_modify: Other (e.g., implementation specific) error (80)
additional info: <olcAccess> handler exited with 1
Run Code Online (Sandbox Code Playgroud)
我目前对我的 MDB 数据库有以下非常基本的配置(它是由 Debian 包配置器为slapd包创建的,版本 2.4.40):
# {1}mdb, config
dn: olcDatabase={1}mdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcMdbConfig
olcDatabase: {1}mdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=domain,dc=lan
olcAccess: {0}to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by * read
# ... and more
Run Code Online (Sandbox Code Playgroud)
由于我将数据库设置为用作 SAMBA 的身份验证后端,因此数据库架构已更新为包含特定于 SAMBA 的类型和属性,现在我想相应地收紧数据库上的 ACL。
我想要完成的事情可以这样说: …