标签: ldap

适用于 <500 个用户、4 个位置的 Active Directory OU 设计

我们希望向我们的 (Win 2003) AD 层次结构添加一些逻辑结构。我们有一个域和大约 500 个用户。当前,所有用户和计算机都组织到一个 OU 中。所有安全组和通讯组都在第二个 OU 中。组成员资格本质上是基于个人用户的,没有组的嵌套。

我的问题:

  1. 对于这种规模的组织,是否值得根据部门、地理和/或对象类(即计算机、用户、组)设计 OU 的层次结构并将用户、计算机和组移动到相关的 OU 中?
  2. 如果是这样,您将如何构建层次结构,例如部门-> 位置-> 对象类?
  3. 我们是否应该在适当的情况下嵌套组,以便更好地映射到企业应用程序角色和 Exchange 地址条目?

active-directory ldap

8
推荐指数
1
解决办法
5326
查看次数

启动 openLDAP

我在一家公司担任系统管理员,我需要部署 openLDAP。我已经阅读了很多材料,但我真的不知道从哪里开始。

先说说公司:

服务:

  1. 电子邮件:每个用户都会获得一个电子邮件帐户,例如 firstname.middlename.anothername.lastname@company.com 和格式为 firstname@company.com 或有时 [First-letter-of-first-name]lastname@ 的电子邮件别名/转发器comant.com
  2. Jabber:每个用户都会获得一个格式为 firstname@jabber.company.com 的 jabber 帐户。在某些情况下,如果名称冲突,这将成为 firstname.lastname。
  3. Trac 和 Redmine:每次使用都会获得通常是他的名字的 trac 和 redmine 帐户。
  4. timetrex 登录为名字或名字。
  5. 一台机器登录,名字。
  6. 邮件列表的成员,例如 all@company.com、management@company.com、accounts@company.com 等。
  7. MediaWiki 帐户,同样与电子邮件别名/转发者的格式相同。
  8. 与电子邮件别名/转发器格式相同的部署服务器之一上的 ssh 帐户。

我认为我应该做的:我应该使用 inetOrgPerson 并为我们的组织创建自定义方案。我不确定的是我如何管理这么多不同的登录,以及如何尊重软件知道使用哪个登录。我编写了一个可以存储以下信息的自定义方案:

  • 全名
  • 电话
  • 细胞
  • 地址
  • 城市
  • 国家
  • 部门
  • 加入

有人会指出我正确的方向吗?我已经浪费了很多时间搜索它,但无法想出任何东西......真的很感谢你花时间阅读这个问题。

linux ubuntu debian openldap ldap

8
推荐指数
1
解决办法
486
查看次数

无法弄清楚 apache LDAP 身份验证失败的原因

突然,昨天,我的一台 apache 服务器无法连接到我的 LDAP (AD) 服务器。我在该服务器上运行了两个站点,当用户登录到任一站点时,这两个站点都使用 LDAP 对我的 AD 服务器进行身份验证。两天前它一直运行良好。由于未知原因,截至昨天,它停止工作。错误日志只说:

auth_ldap authenticate: user foo authentication failed; URI /FrontPage [LDAP: ldap_simple_bind_s() failed][Can't contact LDAP server], referer: http://mysite.com/
Run Code Online (Sandbox Code Playgroud)

我想也许我的自签名 SSL 证书已经过期,所以我为 mysite.com 创建了一个新证书,但不是为服务器主机名本身创建的,问题仍然存在。我启用了调试级别的日志记录。它显示了与 LDAP 服务器的完整 SSL 事务,直到最后我收到“无法联系 LDAP 服务器”消息时,它似乎都没有错误地完成。我可以在这台服务器上从命令行运行 ldapsearch,我可以登录它,它也使用 LDAP,所以我知道服务器可以连接和查询 LDAP/AD 服务器。只有apache无法连接。

谷歌搜索没有结果,所以我在这里问。任何人都可以提供有关此问题的见解吗?

这是 apache 配置中的 LDAP 部分:

<Directory "/web/wiki/">
    Order allow,deny
    Allow from all
    AuthType Basic
    AuthName "Login"
    AuthBasicProvider ldap
    AuthzLDAPAuthoritative off
    #AuthBasicAuthoritative off
    AuthLDAPUrl ldaps://domain.server.ip/dc=full,dc=context,dc=server,dc=name?sAMAccountName?sub
    AuthLDAPBindDN cn=ldapbinduser,cn=Users,dc=full,dc=context,dc=server,dc=name
    AuthLDAPBindPassword password
    require valid-user
</Directory>
Run Code Online (Sandbox Code Playgroud)

linux ldap authentication apache-2.2

8
推荐指数
2
解决办法
4万
查看次数

没有从 OpenLDAP 返回根 DSE

我正在尝试在使用 slapd 2.4.18 版的 ubuntu 9.10 上设置 OpenLDAP 服务器。

初始化并填充新的 hdb 数据库后,一切似乎都正常,但我无法让服务器返回根 DSE。跑步

ldapsearch -x -W -D 'cn=manager,dc=example,dc=org' \
    -b '' -s base '(objectclass=*)' +
Run Code Online (Sandbox Code Playgroud)

刚回来

# extended LDIF
#
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: +
#

# search result
search: 2
result: 0 Success

# numResponses: 1
Run Code Online (Sandbox Code Playgroud)

我的 hdb 数据库 ACL 设置如下:

olcAccess: to attrs=userPassword,shadowLastChange
  by self write
  by anonymous auth
  by dn.base="cn=manager,dc=example,dc=org" write
  by * none
olcAccess: to dn.base=""
  by …
Run Code Online (Sandbox Code Playgroud)

openldap ldap

8
推荐指数
1
解决办法
1万
查看次数

将 ActiveDirectory (Win 2k8R2) 加入 OpenDirectory(Snow Leopard)

有关 Active 和 Open 目录互操作性的绝大多数问题都涉及让 Mac 客户端查看 AD 并对其进行身份验证。

我们想要做的是让 Windows 7 工作站完全针对 Open Directory 进行身份验证。我们尝试将其设置为 NT4 类型的 PDC,但效果不佳。

我们尝试使用 pGina 和 LDAP 后端,它允许身份验证,但不支持授权,因此,如果我们挂载 NFS 共享,用户有权做任何他们该死的事情。不适合安全(实际上完全不可接受)。

我们尝试使用 Samba 服务器(比 Open Directory Server 更新的版本)作为中间件,以便它知道 OD 服务器上的 LDAP 服务器,但使用 Samba 4 而不是 v3。那也没有用。我们可以登录,但不能挂载,如果登录,我们就拥有与 pGina 相同的权限。如果我们在 Windows 中右键单击已安装的驱动器,并查看 NFS UID,它将返回 -2,而不是正确的(映射的)UID。

所以我的最终计划是在 Windows 2008R2 虚拟机中使用 Active Directory。我想要实现的是让 Active Directory 同步它来自 OpenDirectory 的用户数据(只读就可以)。这样,我们就能够将 Windows 7 客户端连接到一个“虚拟域”,该域实际上只是从 OD 的 LDAP 中获取信息。

我找到的所有信息都是关于如何走另一条路的。

有谁知道我们如何做到这一点?

active-directory ldap authentication opendirectory authorization

8
推荐指数
1
解决办法
390
查看次数

是否可以将 FreeNAS 作为身份验证服务器(SMB 或 LDAP)、文件服务器和 Ubuntu 作为“客户端”(Kerberos auth-pam)?

我想将我的 FreeNAS 服务器配置为身份验证服务器(用户 FreeNAS 本地用户的身份验证到 ubuntu 客户端)和 NAS 服务器,当然。我有 Ubuntu 作为客户端,它们通过 DHCP/PXE 启动,所以我可以快速配置它们。

我将发布上面的进程列表,[OK] 表示正在工作,而 [TODO],你知道......

结构工艺:

  • [OK] 客户请求 IP 报价...
  • [OK] 我的防火墙用文件名“pxelinuz.0”和我的 FreeNAS 的 IP 来回答,它为 TFTP、NFS 和 SMB 提供服务。
  • [OK] 客户端加载vmlinuzinitrd.lz,然后它开始根据需要从 NFS 加载 squashfs...
  • [待办事项] 我的 FreeNAS 应该为 LDAP 或 Active Directory DC(通过 SMB)提供服务,但我不知道 FreeNAS 是否可行(我的问题之一)...
  • [待办事项] 客户端必须从 FreeNAS 通过 NFS 或 SMB 挂载 /home。
  • [ TODO ] 客户端应该连接到 FreeNAS 并获取用户列表,以便他们可以登录。

我的目标是创建一个网络,我可以在其中插入不同的计算机,并让用户在需要时使用他们的个人计算机登录,访问他们的“家庭”文件,始终无需更改硬盘驱动器上的操作系统。

PS:我可以轻松编辑squashfs,我已经为此制作了一个脚本。

ubuntu ldap server-message-block cifs freenas

8
推荐指数
1
解决办法
1万
查看次数

无法删除权限:用户缺少 UID(请参阅 mail_uid 设置)

我希望我可以使用一些帮助。

我正在配置 dovecot_ldap,但似乎无法让 dovecot 对 ldap 用户进行身份验证。

以下是我的配置和日志信息:

hosts = 192.168.128.45:3268
dn = cn=Administrator,cn=Users,dc=company,dc=example,dc=com
dnpass = "passwd"
auth_bind = yes
ldap_version = 3
base = dc=company, dc=example, dc=com
user_attrs = sAMAccountName=home=/var/vmail/example.com/%$,uid=1001,gid=1001
user_filter = (&(sAMAccountName=%Ln))
pass_filter = (&(ObjectClass=person)(sAMAccountName=%u))
Run Code Online (Sandbox Code Playgroud)

配置文件

# 2.0.19: /etc/dovecot/dovecot.conf
# OS: Linux 3.2.0-33-generic x86_64 Ubuntu 12.04 LTS
auth_mechanisms = plain login
auth_realms = example.com
auth_verbose = yes
disable_plaintext_auth = no
mail_access_groups = mail
mail_location = mbox:~/mail:INBOX=/var/mail/%u
mail_privileged_group = mail
passdb {
  driver = pam
}
passdb {
  driver …
Run Code Online (Sandbox Code Playgroud)

email ldap dovecot

8
推荐指数
1
解决办法
1万
查看次数

LDAP/ActiveDirectory BindDN 语法

我正在对客户端的基于 linux 的硬件防火墙进行故障排除。此硬件防火墙连接到 ActiveDirectory 以进行单点登录身份验证。

据我所知,ActiveDirectory 只是 LDAP 的一个变态版本,并使用相同的 BindDN 语法——如果我错了,请纠正我。

客户端已将其配置为他们的 BindDN —— 出于隐私原因替换了实际字符串,但保留了特殊字符和空格。“somerandomplace\fubar fubaz”

这对我来说似乎不是有效的 BindDN 语法,我以前使用过 LDAP,但是当我们点击测试按钮来测试这个 BindDN 时,测试成功了。当我只更改 BindDN 中的一个字符并再次运行测试时,测试失败。

我试图弄清楚这里的问题是什么:

A) 我不完全理解 BindND 和相关语法的细微差别

或者

B) 设备未能正确验证输入并且错误地将测试识别为成功

active-directory ldap

8
推荐指数
2
解决办法
2万
查看次数

Active Directory 身份验证负载平衡和故障转移

对于针对 Active Directory DC 进行身份验证的应用程序,显然最好将它们指向主域 DNS 记录而不是特定的 DC 以进行故障转移、负载平衡等。

对于那些迫使您对 DC 的 IP 进行硬编码的应用程序,最佳实践是什么?我们可以对负载均衡器的 IP 地址进行硬编码,这样即使一个 DC 出现故障,该应用程序仍然能够进行身份验证。有没有更好的选择?

active-directory ldap authentication load-balancing

8
推荐指数
1
解决办法
3万
查看次数

组更新后未更新 OpenLDAP memberOf 属性

我在 Debian 7.1 (OpenLDAP 2.4.31) 上有一个 OpenLDAP 设置,我正在尝试设置 memberof 覆盖。我的配置就像我在互联网上的许多站点上阅读过的一样,但是,它仍然对我不起作用。

问题是实体的 memberOf 属性仅在我创建组时更新,而在我修改或删除组时不会更新。实际上,之前曾在这里问过同样的问题:How do I configure Reverse Group Membership Maintenance on an openldap server? (memberOf),但即使将其检查为已回答,我也无法在答案中找到任何可用信息。(根据评论,即使是原始海报也无法对答案做任何事情......)

我的配置是这样的:cn=config/cn=module{0}.ldif

dn: cn=module{0}
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}memberof
structuralObjectClass: olcModuleList
Run Code Online (Sandbox Code Playgroud)

对于模块:cn=config/olcDatabase={1}hdb/olcOverlay={0}memberof.ldif

dn: olcOverlay={0}memberof
objectClass: olcMemberOf
objectClass: olcOverlayConfig
olcOverlay: {0}memberof
structuralObjectClass: olcMemberOf
olcMemberOfGroupOC: groupOfNames
olcMemberOfMemberAD: member
olcMemberOfMemberOfAD: memberOf
olcMemberOfRefInt: TRUE
Run Code Online (Sandbox Code Playgroud)

我添加的组:

dn: cn=test,ou=services,dc=x,dc=y
cn: test
objectClass: groupOfNames
objectClass: top
description: test group
member: cn=Almafa Teszt,ou=users,dc=x,dc=y
Run Code Online (Sandbox Code Playgroud)

我运行的查询:

$ ldapsearch -LLL …
Run Code Online (Sandbox Code Playgroud)

openldap ldap

8
推荐指数
1
解决办法
7683
查看次数