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 / 问题 / 750422
Accepted
umläute
umläute
Asked: 2016-01-21 01:24:02 +0800 CST2016-01-21 01:24:02 +0800 CST 2016-01-21 01:24:02 +0800 CST

具有固定默认属性的 ldap-overlay

  • 772

我有一个较大的用户群(>>1000),应该能够共同使用一些共享服务。

用户群在缓慢但不断地变化。

尤其是 我们对权限分离不感兴趣(所有用户都是平等的),因此他们可以从权限 pov 共享一个帐户。但是,出于安全原因,我们不能使用共享凭据。幸运的是,所有用户都可以通过 LDAP 获得自己的用户名/密码。

所以我们实现了一个登录服务器(Debian 上的 ssh),人们通过 PAM 和 OpenLDAP 进行身份验证。

现在 LDAP 服务器没有提供太多信息,只提供用户名和身份验证功能。esp,它缺少 aobjectClass: posixAccount和伴随的属性

  • uidNumber
  • gidNumber
  • loginShell
  • homeDirectory

我对 LDAP 服务器的访问非常有限(尤其是,我不能要求添加这些或任何其他属性),基本上它只允许我对用户进行身份验证。

现在好消息是,如果所有用户对这些属性具有相同的值,我并不十分在意。

所以我最终实现了一个使用translucent覆盖来添加缺失属性的代理 ldap 服务器。覆盖数据是通过一个脚本生成的,该脚本从上游 LDAP 数据创建一个精简的 LDIF 文件,然后用于填充半透明数据库。

这工作正常,但我不喜欢它的可维护性 POV:因为用户群正在改变,我需要手动定期更新数据库(它很少改变 - 每隔几个月 - 所以它不是很多工作,但它也容易忘记)。

因为覆盖数据是如此微不足道(所有对象的属性/值都相同),我认为必须有更好的方法。理想情况下,我希望有一个叠加层,它将这些属性添加到所有对象(匹配给定的搜索项)。

为了使事情复杂一点,我们还针对另一个提供posixAccount-data 的 LDAP 服务器对另一个用户群进行身份验证;这个组的用户当然不应该受到其他组所需的所有叠加魔法的影响;我认为这排除了在 PAM 方面所做的任何魔术。

debian
  • 1 1 个回答
  • 495 Views

1 个回答

  • Voted
  1. Best Answer
    Stephen
    2016-02-10T10:46:47+08:002016-02-10T10:46:47+08:00

    原建议:

    我建议使用nss-pam-ldapd 包并使用nslcd 映射在没有来自 ldap 的值时为用户帐户提供默认值。

    根据 nslcd.conf 的文档,也可以导出 uid/gid:

    passwd 和组映射中的 uidNumber 和 gidNumber 属性可以映射到 objectSid 后跟域 SID,以从 SID 派生数字用户和组 id(例如 objectSid:S-1-5-21-3623811015-3361044348-30300820) .

    选项#2a:

    因此,根据您提到的内容,您似乎需要保留目录的镜像。

    您能否简单地更新您拥有的脚本,使其以非破坏性方式工作(即只添加它在本地找不到的帐户/属性)并让它每天通过 cron 运行一次?

    选项#2b

    如果您可以设置本机 1-way LDAP 复制(从上游目录到本地目录),然后使用覆盖层或由事件触发的脚本(反过来执行本地 ldapmodify)日志,提供缺失的属性?

    • 1

相关问题

  • 关闭 FTP

  • 如何在同一台电脑上从 putty 连接 debian vmware

  • debian- 文件到包的映射

  • Debian Ubuntu 网络管理器错误 [关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

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