异构环境“漫游”配置文件

异构环境“漫游”配置文件

我所说的“漫游配置文件”实际上是指“共享主目录”。

因此,我设置了一个 AD 对,并在 上共享了一个文件夹\\ad-1\homes。然后将 AD 用户对象设置为挂载H:\ = \\ad-1\homes\%username%。这在 Windows 上运行良好(正如您所期望的那样)。

我还在用户 OU 上的 GPO 上配置了文件夹重定向,以指向文档等等\\ad-1\homes\%username%\Documents

一切都按照您在 Windows 上预期的方式运行。耶。

然而。

Linux 则不同。使用 Winbind 和 Samba,我加入了域。没问题。

# wbinfo -u
PRODUCT\administrator
PRODUCT\guest
PRODUCT\krbtgt
PRODUCT\aa
PRODUCT\ab

我已经编辑了 AD uidNumber 和 gidNumber,以便得到以下内容:

# wbinfo -i PRODUCT\\aa
PRODUCT\aa:*:10001:10000:aa:/home/PRODUCT/aa:/bin/bash

我天真地以为,我可以挂载\\ad-1\homes它们/home/$DOMAIN,而且由于用户名相同,我就可以将它们用作主目录。

除非因为 cifs 共享是在启动时以 root 身份安装的,否则权限会dwrxr-x-r-x root root .一直延伸到目录树,因此用户无法对其进行写入。

我尝试了几乎所有 mount.cifs 选项的组合,包括有希望的“ multiuser”,并发现使用 效果最佳sec=krb5i

我想要的是能够将 \ad-1\homes 目录挂载到 /home/$DOMAIN 之上,并使其看起来像

name  owner
aa/ DOMAIN\aa
ab/ DOMAIN\ab
administrator DOMAIN\administrator

等等。

有人知道这是如何实现的吗?

Windows 2008 R2,安装在 SLES 11 SP2 上。

答案1

我们使用已加入 Active Directory 域 (winbind) 的 Debian 机器执行此操作。我们使用pam_mkhomedir在登录时在 /home/EXAMPLE/$USER 下为 AD 用户创建一个主文件夹。然后pam_mount执行 AD 主目录的安装。在 Debian 上,我们需要安装libpam-mountpam_mkhomedir默认情况下已安装

安装后,以下文件会被修改:

/etc/security/pam_mount.conf.xml:

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
<pam_mount>
<debug enable="0" />
<mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other,workgroup,nosetuids,noexec,nosuid" />
<mntoptions require="nosuid,nodev" />
<logout wait="0" hup="0" term="0" kill="0" />
<mkmountpoint enable="1" remove="true" />
<!--
  Replace "fs1.ad.example.com" with your Windows file server.
  We mount our AD user homes under /home/EXAMPLE, change this to suit your needs.
  Edit "workgroup=EXAMPLE" to use your domain/realm.
-->
<volume fstype="cifs" server="fs1.ad.example.com" path="home/%(USER)" mountpoint="/home/EXAMPLE/%(USER)" user="*" options="workgroup=EXAMPLE,uid=%(USER),dir_mode=0700,file_mode=0700,nosuid,nodev" />

/etc/pam.d/common-session:

# <snip>
# We use pam to create the AD user home drives
session required        pam_mkhomedir.so skel=/etc/skel/ umask=0077
session optional        pam_mount.so nullok try_first_pass

例如,当我(FCSD\jscott)登录到 Linux 机器时,我的 AD 主文件夹 \\staff\home\jscott 被挂载为 /home/FCSD/jscott。

在此处输入图片描述

答案2

我从来没有做过你想要做的事,但我思考实验配置CIFS_ACL如果您想使用单个挂载点执行此操作。否则,@jscott 所做的应该有效,尽管每个用户的主目录都是一个新的挂载点,并且主目录中的 ACL 将不起作用。

相关内容