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 / 问题 / 637120
Accepted
cornuz
cornuz
Asked: 2014-10-16 01:47:58 +0800 CST2014-10-16 01:47:58 +0800 CST 2014-10-16 01:47:58 +0800 CST

将多个桌面从 /etc/passwd 移动到 LDAP

  • 772

我知道关于迁移到 LDAP 的问题并不是什么新鲜事。我现在已经搜索了很多信息,但我发现的问题是该主题的信息似乎相当分散。所以我希望有经验的人能给我指出正确的方向。

目前的情况:

  • 小型企业,用户和桌面不断增长
  • 大约 10 个 Fedora-20 桌面 / 3 个 Fedora-20 服务器
  • 1 群晖 NAS DS1813+
  • 大约 10 个用户
  • 所有登录在桌面上都是本地的
  • 用户在机器网络中没有相同的 UID 和 GID。

显然,使用 LDAP 这样的集中式用户目录变得越来越有吸引力。

问题:

不幸的是,我无法找到涵盖真实场景整个过程的可靠且完整的指南。

  • 设置服务器和配置客户端:好的,根据我的阅读,这不是最简化的过程,但即使有点棘手,我相信这是可行的。
  • 从所有机器迁移所有用户:这是“微妙”部分。显然,我不想冒任何信息丢失的风险。同样,我找到了一些关于迁移和MigrationTools的指南,但是这些来源都没有给我一种值得信赖的指南的感觉。典型场景:有一个 wiki 页面或带有说明的东西,以及一大堆抱怨该过程在某些时候失败的评论。提出的问题往往比给出的答案多得多。这怎么能让我觉得我可以安全地开始这个过程?

一些具体问题:

  • 是否有一套最新的最佳实践/建议工具,对于此类迁移过程当然应该考虑?特别是关注现实生活场景?要遵循哪些操作顺序,要注意什么,如何将数据丢失的风险降到最低,如何将用户的停机时间降到最低等?
  • 假设用户 'roberto' 在两台机器上存在(具有不同的 ID)。通过将 /etc/passwd 信息从两台机器迁移到 LDAP,它们是否在此过程中“合并”?如果没有,应该怎么做?
  • 迁移是否可以分步完成,只供一个用户开始?可取吗?
  • 我能想到的另一种(可能是幼稚的?)方法是:创建新的 LDAP 用户,然后将所有文件的所有权从旧的本地用户更改为这些新用户,然后删除旧的本地用户。这有意义吗?有没有以前的经验?
  • LDAP 与 ACL 有什么关系?他们相处得好吗?
  • 以下所需步骤是将用户的主目录集中到 NFS 上的共享空间。任何指向此后续步骤的指针也将受到欢迎,特别是如果链接到迁移到 LDAP。
ldap
  • 3 3 个回答
  • 1144 Views

3 个回答

  • Voted
  1. Best Answer
    Sven
    2014-10-16T02:57:37+08:002014-10-16T02:57:37+08:00

    首先,教程等问题是题外话。

    一些想法:

    • 你是对的,关于这方面的信息是分散的,通常是过时的和不可靠的。例如,您会发现很多关于如何使用配置文件配置 OpenLDAP 的信息,但关于cn=config. 我的猜测是,这是因为这样的每次迁移都是不同的,而且根本没有黄金的方法可以继续。不可能编写一个适用于任何地方的教程,或者你最终会写一本非常大的书。
    • 这意味着您必须将这些部分拼凑在一起并使其适应您的情况。没有其他办法了。不过你很幸运,因为你的环境看起来非常小而且简单,如果需要,所有必要的事情都可以在一个周末完成。
    • 虚拟化工具是一个很好的帮助,因为您可以轻松地模拟笔记本电脑上的所有内容,而不会影响其他任何人。

    我有一些关于如何进行的一般提示。这假定一个没有太多停机时间的逐步方法。

    • 创建所有用户的列表。
    • 手动确保它们在所有系统上具有相同的 UID 等。大多数情况下,这意味着编辑/etc/passwd等,然后find是chmod属于用户的所有文件。
    • 如果您有冲突的用户名,这应该在这一步解决(例如,来自销售和客户服务的两个 Bob 都bob在他们的机器上命名)
    • 此时,您可以将具有统一 UID 的所有用户添加到 LDAP 数据库。/etc/shadow专业提示:使用 Linux 上的 OpenLDAP,如果您将{crypt}密码类型前缀添加到 LDAPuserPassword字段中,您可以重用密码(这样您就$1$E.1Saa9d$LcRBQDLfnzR6WF4HmbjpC/变成{crypt}$1$E.1Saa9d$LcRBQDLfnzR6WF4HmbjpC/
    • 您现在可以一一配置您的机器以针对 LDAP 进行身份验证,并且用户帐户仍应使用相同的密码(但请记住删除/重命名本地用户)。
    • 为主目录创建一个 NFS 服务器,并确保它安装在任何地方(iSCSI 有不同的用途)。
    • 将用户主目录复制到 NFS 共享,将旧目录重命名为/home其他名称并将 NFS 共享挂载为/home.

    这可能是一个或多或少简单的过程,但根据您的环境,问题可能(将会!)弹出。但是在沿着这条路做事的时候,你可以在它们出现时一一处理。没有必要让你处于一个有可能停止一切的全有或全无的情况。对于这样的项目来说,这是一个非常舒适的情况。

    如果您最终在此过程中遇到具体问题,请在此处提出新问题。

    • 1
  2. HBruijn
    2014-10-16T04:12:55+08:002014-10-16T04:12:55+08:00

    对学习材料和教程的要求是题外话。

    要遵循哪些操作顺序,要注意什么,如何将数据丢失的风险降到最低,如何将用户的停机时间降到最低等?

    首先确定您的要求和范围。把它们写下来并让它们审查。
    除了 LDAP 之外,还要考虑设置 Kerberos。单点登录的可能性通常会为您的最终用户带来真正的商业利益,并使他们更愿意忍受迁移过程中的中断。最终用户通常不关心一般的变化,并且很明显,他们认为操作改进不会带来直接的好处,而这些改进只会使系统管理员的生活受益。
    FreeIPA在那里提供了一种集成方法。

    清点现有的 passwd 和组文件以及sudo配置。不要忽视当前受用户名/密码保护的其他服务,这些服务可能受益于与中央用户目录(和 SSO)的集成,例如 Web 服务器上的安全目录等。

    测试您的方法、脚本等。进行备份并测试恢复它们。SSSD似乎是配置工作站和服务器以相对轻松地与目录(和 FreeIPA)集成的方式。

    在工作站上挂载中央主目录通常是一个好主意,尤其是与自动挂载程序 (autofs) 结合使用时。在服务器上做同样的事情(也可以根据需要使用 auto-fs)似乎会引起更多的讨论。如果您确实走这条路,请仔细考虑您或您的用户是否应该合并它们。

    数据丢失的风险相对较小,但是您确实会定期进行备份和测试恢复,对吗?

    假设用户 'roberto' 在两台机器上存在(具有不同的 ID)。通过将 /etc/passwd 信息从两台机器迁移到 LDAP,它们是否在此过程中“合并”?如果没有,应该怎么做?

    不,它们不会自动合并,因为用户帐户只能有一个 UID 号,并且每个用户名也必须是唯一的。由于文件所有权由文件系统存储在 UID 号上,丢弃一个 UID 将导致所有者失去对这些文件的权利。您需要从原始更改为所有者,以匹配您为同一真实人的重复用户决定的最终 UID 号。例如,find -owner old-UID -exec chown new-UID '{}' \;对于不同的真人来说,重复的用户名会导致其中一个人使用新的用户名,或者你们俩都相信分担痛苦。

    对于主要组用户也是如此。

    迁移是否可以分步完成,只供一个用户开始?可取吗?

    身份验证方法主要是按系统定义的,而不是基于用户的,逐个主机迁移比按用户迁移更有意义。如果每个用户都有自己的工作站,您可以从这些工作站开始,一次一个,因为那里的任何问题都会限制对单个用户的影响。一旦所有用户都在目录中,那么做服务器就相对容易了。

    下面需要的步骤是将用户的主目录集中到某个网络空间(NFS 或 iSCSI)。任何指向此后续步骤的指针也将受到欢迎,特别是如果链接到迁移到 LDAP。

    对于集中式主目录来说,文件共享比块设备要好得多,所以绝对要选择 NFS。NFSv4 解决了很多经典 NFS 的问题,结合 Kerberos 也大大提高了安全性。

    在工作站上转换身份验证可能与移动到集中式主目录同时发生。

    • 1
  3. Keef Baker
    2014-10-16T04:50:27+08:002014-10-16T04:50:27+08:00

    至于您所针对的系统, 免费 IPA可能值得您使用,因为如果将来有人实现了一些 Active Directory 框,则很容易链接。

    至于迁移.. 好吧,至少你说的是小规模,所以“蚀刻网络的草图端”是一种选择。

    sudo 权限,显然这是至关重要的,对于少量的机器,任何 acl 的东西都应该很容易处理。

    显然,您不能在 LDAP 和本地用户中拥有相同名称的用户,因此我将首先修复您的服务器并使用目录,然后移动到桌面上。

    • 0

相关问题

  • Cygwin sshd 和 LDAP 身份验证

  • 从 OpenLDAP 检索操作属性

  • 为 Mac 网络使用 Linux 和 Open LDAP

  • 使用LDAP服务器身份验证的Linux中单个用户的多个登录名

  • 使用 smbldap 管理用户/组的 Web 前端

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