AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 805441
Accepted
Reapbooster
Reapbooster
Asked: 2016-09-27 11:00:46 +0800 CST2016-09-27 11:00:46 +0800 CST 2016-09-27 11:00:46 +0800 CST

OpenLDAP 作为 Active Directory 的代理不与来自 slapd.conf 的 bindDN 绑定

  • 772

背景资料:

CentOS 7 3.10.0-327.18.2.el7.x86_64

此服务器将用作 Active Directory 的代理。

目前似乎ldapsearch不关心 /etc/openldap/slapd.conf 并且不会绑定,除非我直接使用 -D 和 -w 传递 bindDN 和密码。

我重新安装了 OpenLDAP 服务器

使用以下内容编辑 slapd.conf:

### Schema includes ###########################################################
include                 /etc/openldap/schema/core.schema
include                 /etc/openldap/schema/cosine.schema
include                 /etc/openldap/schema/inetorgperson.schema
include                 /etc/openldap/schema/misc.schema
include                 /etc/openldap/schema/nis.schema

## Module paths ##############################################################
modulepath              /usr/lib64/openldap/
moduleload              back_ldap
moduleload              rwm

## Support both LDAPv2 and LDAPv3
allow           bind_v2

# Main settings ###############################################################
pidfile                 /var/run/openldap/slapd.pid
argsfile                /var/run/openldap/slapd.args

### Database definition (Proxy to AD) #########################################
database                ldap
readonly                yes
protocol-version        3
rebind-as-user          yes
uri                     "ldap://10.0.0.90:389"
suffix                  "DC=secretdomain,DC=com"
idassert-bind           bindmethod=simple
                        binddn="CN=MropenLDAP,OU=Administration,DC=secretdomain,DC=com"
                        credentials=topsecretpass
                        mode=none
idassert-authzFrom      "*"
overlay                 rwm
rwm-map                 attribute       uid     sAMAccountName
rwm-map                 attribute       mail    proxyAddresses

### Logging ###################################################################
logfile                 /var/log/slapd/slapd.log
loglevel                1

冉:slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/

确保所有权和权限正确,然后重新启动 slapd。

以下不起作用:

ldapsearch -H ldap://10.0.0.90 -x -b "OU=Administration,DC=secretdomain,DC=com" -v -LLL "(samaccountname=someusername)"

ldapsearch -H ldap://10.0.0.90 -x -b "OU=Administration,DC=secretdomain,DC=com" -v -LLL

它给了我这个错误:

ldap_initialize( ldap://10.0.0.90:389/??base )
filter: (objectclass=*)
requesting: All userApplication attributes
Operations error (1)
Additional information: 000004DC: LdapErr: DSID-0C0906E8, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v1db1

但是,当我直接传递绑定帐户 DN 时,它可以工作。我从 /etc/openldap/slapd.conf 文件中检查了这两条信息是否相同:

ldapsearch -H ldap://10.0.0.90 -x -b "OU=Administration,DC=secretdomain,DC=com" -v -LLL -D "CN=MropenLDAP,OU=Administration,DC=secretdomain,DC=com" "(samaccountname=someusername)" -w topsecretpass
active-directory proxy ldap openldap centos7
  • 1 1 个回答
  • 4291 Views

1 个回答

  • Voted
  1. Best Answer
    84104
    2016-09-28T08:33:01+08:002016-09-28T08:33:01+08:00

    ldapsearch不使用slapd.conf它使用ldap.conf(或下面概述的许多其他地方)。Binddn不能在全局 ldap.conf 文件中有效地设置,因为它被认为是用户专用选项,因此如果在那里找到则忽略。


    LDAP.CONF(5)

    名称
    ldap.conf、.ldaprc - LDAP 配置文件/环境变量

    概要
    /etc/openldap/ldap.conf、ldaprc、.ldaprc、$LDAP

    描述
    如果定义了环境变量 LDAPNOINIT,则禁用所有默认设置。

    ldap.conf 配置文件用于设置运行 ldap 客户端时应用的系统范围默认值。

    用户可以在他们的主目录中创建一个可选的配置文件 ldaprc 或 .ldaprc,这将用于覆盖系统范围的默认文件。当前工作目录中的文件 ldaprc 也被使用。

    可以使用 LDAPCONF 和 LDAPRC 环境变量指定其他配置文件。LDAPCONF 可以设置为配置文件的路径。此路径可以是绝对路径,也可以是相对于当前工作目录的路径。LDAPRC(如果已定义)应该是当前工作目录或用户主目录中文件的基本名称。

    环境变量也可用于增加基于文件的默认值。变量的名称是带有 LDAP 前缀的选项名称。例如,要通过环境定义 BASE,请将变量 LDAPBASE 设置为所需的值。

    某些选项仅供用户使用。如果 ldap.conf(或 LDAPCONF 指定的文件)中存在此类选项,则将被忽略。

    因此,按顺序读取以下文件和变量:
    变量 $LDAPNOINIT,如果未设置:
    系统文件 /etc/openldap/ldap.conf、
    用户文件 $HOME/ldaprc、$HOME/.ldaprc、./ldaprc ,
    系统文件 $LDAPCONF,
    用户文件 $HOME/$LDAPRC, $HOME/.$LDAPRC, ./$LDAPRC,
    变量 $LDAP。
    列表后面的设置会覆盖较早的设置。

    BINDDN <dn>
    指定执行 ldap 操作时要使用的默认绑定 DN。绑定 DN 必须指定为 LDAP 格式的专有名称。 This is a user-only option.

    • 0

相关问题

  • 如果以域用户身份远程登录,PC 速度极慢

  • 如何在 Windows 2003 的 ou 级别应用策略

  • 允许用户更改其 Active Directory 密码的 Web 界面

  • MOSS 2007 无法使用 ActiveDirectoryMembershipProvider 配置表单身份验证

  • 通过 VPN 更改 Active Directory 密码

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve