在 Kerberos 跨领域(AIX 和 Windwos 系统)的基础上配置 AIX NFS Version 4

了解如何在 IBM® Network Authentication Service (IBM NAS) 和 Microsoft® Active Directory for AIX® Network File System (NFS) Version 4 之间配置跨领域的访问设置。

Sandeep Patil, 软件工程师, EMC

Sandeep Patil 的照片Sandeep Ramesh Patil 是 IBM India Software Lab 的软件咨询工程师。他已在 IBM 工作了七年,着重研究分布式技术,包括 DCE、SARPC 以及安全产品,比如 IBM Network Authentication Services (IBM Kerberos)。目前,他正在开发新的特性,并在为 IBM Network Authentication Services 实现与安全有关的 RFC 及其产品支持。Sandeep 拥有 University of Pune,India 的计算机科学与工程学士学位。


developerWorks 大师作者

Prashant Sodhiya, 软件工程师, EMC

http://www.ibm.com/developerworks/i/p-psodhiya.jpgPrashant Sodhiya 是 IBM India Software Labs 的软件工程师。在过去两年里,他一直为 IBM 工作,目前在为 IBM Network Authentication Service (IBM Kerberos) 开发新特性和产品支持。在加入 IBM 前,他与 Centre for Development of Advanced Computing (CDAC) 在网络安全领域进行了三年的合作。Prashant 拥有印度 Gwalior 大学的计算机科学和工程学学士学位。您可以通过 psodhiya@in.ibm.com 与他联系。



2008 年 2 月 04 日

引言

因为安全性是 Network File System Version 4 (NFS Version 4) 的一个重要的方面和一大卖点,所以人们普遍认为它将作为新一代分布式文件系统。NFS Version 4 的当前实现使用 Kerberos (RFC 4120) 作为其基础安全机制,以实现身份验证、保密性、完整性和不可否认性。对于 AIX® 操作系统,IBM® 提供了自己的 NFS Version 4 实现,该实现使用 IBM Network Authentication Service Version 1.4(IBM NAS,即 IBM 风格的 Kerberos)来进行文件系统的 Kerberos 化。

大多数正在部署 AIX NFS Version 4(或者正在从诸如 DCE/DFS 或者 AFS 的旧式分布式文件系统进行迁移)的客户都使用了 Windows® 和 UNIX® 系统的混合环境。在这样的异构环境中,一些管理员喜欢使用 Microsoft® Active Directory 作为其 Windows 环境的 Kerberos 服务器,而使用 IBM NAS for AIX 作为其他环境的 Kerberos 服务器,从而导致出现两个不同的 Kerberos 领域。还有一些场景需要使用 AIX NFS Version 4 进行跨组织边界的操作。在这些情况下,很可能需要在单个组织中使用由不同供应商所提供的不同风格的 Kerberos 来进行 Kerberos 服务器的部署(例如,一些服务器使用 IBM NAS,而其他的服务器则使用 Microsoft Active Directory)。在其他类似的场景中,某些管理员可能正在计划从 Microsoft Active Directory 迁移到 IBM NAS for AIX,以作为其领域的 Kerberos 服务器。

为了使 AIX NFS Version 4 能够在包括多个 Kerberos 领域的场景中正常工作,您需要在这些 Kerberos 领域之间使用 IBM NAS Version 1.4 for AIX 和 Microsoft Active Directory 建立跨领域的配置。本文描述了所需的配置步骤,以帮助您在 IBM NAS Version 1.4 和 Microsoft Active Directory 之间成功地配置跨领域的设置。本文详细描述了在这种跨领域的设置中需要对 AIX NFS Version 4 进行的更改,并通过一些示例说明了其工作方式。

Kerberos 跨领域的配置

对于各种不同的系统,不同的供应商提供了相应的 Kerberos Version 5 协议实现。其基本用途是实现分布式网络之上的集中式身份验证。Kerberos 互操作性提供了一种公共协议,以实现异构环境中各种实现之间的共存和协同工作。

在 Kerberos 环境中,所有使用 Kerberos 作为身份验证机制、并且配置了特定 Kerberos 服务器(即 IBM NAS Version 1.4 for AIX 或者 Microsoft Active Directory)的用户和应用程序共同组成了一个称为领域 的单元。Kerberos 客户端(用户或者应用程序)用于进行注册的领域名称是该客户端名称中的一部分,并且 Kerberos 化的应用服务器可以使用领域名称来决定是否认可某个请求。作为 Kerberos 互操作性的一部分,大多数 Kerberos 实现都支持一种称为跨领域配置的思想。跨领域配置的基本概念是建立跨领域的密钥,这些密钥可以帮助两个不同领域的管理员,以允许在一个领域中进行了身份验证的用户能够在另一个领域中使用其 Kerberos 凭据。

下面的部分将描述如何在两个 Kerberos 领域(一个领域配置为 IBM NAS 服务器,而另一个领域配置为 Microsoft Active Directory)之间设置跨领域的配置的详细信息。并进一步说明如何使用 AIX NFS Version 4 作为 Kerberos 化的应用程序,以测试跨领域配置的工作情况。

AIX NFS Version 4 与 IBM NAS 和 Microsoft Active Directory——具体场景

为了在由 IBM NAS 和 Microsoft Active Directory 组成的跨领域的环境中,设置并测试 AIX NFS Version 4 的执行,可以考虑下面的场景。如图 1 中所示,该场景由两个不同的 Kerberos 领域组成。其中一个领域,即 ADFSAIX1.IN.IBM.COM,使用 IBM NAS for AIX 作为 Kerberos 密钥分发中心 (KDC);另一个领域,即 MSKERBEROS.IN.IBM.COM,使用 Microsoft Active Directory 作为 Kerberos KDC。导出目录的 AIX NFS Version 4 服务器配置为 IBM NAS 领域 ADFSAIX1.IN.IBM.COM,而 AIX NFS Version 4 客户端(装入由 AIX NFS V4 服务器导出的目录)配置为 ADFSAIX1.IN.IBM.COMMSKERBEROS.IN.IBM.COM 两个 Kerberos 领域。这个场景的最终成功目标定义为,administrator@ MSKERBEROS.IN.IBM.COM Kerberos 主体(属于 MSKERBEROS.IN.IBM.COM 领域)应该在 AIX NFS Version 4 客户端计算机中成功地获得 Kerberos 凭据,并且使用这些凭据成功地访问和挂载由 AIX NFS Version 4 nfs/adfsaix1.in.ibm.com@ ADFSAIX1.IN.IBM.COM服务器(属于 ADFSAIX1.IN.IBM.COM 领域)所导出的目录。

本文中的示例使用了以下定义:

清单 1. 定义
   NFS domain name: in.ibm.com

   AIX NAS 1.4 (KDC) and AIX NFS V4 server:
   Realm name    : ADFSAIX1.IN.IBM.COM
   Hostname : adfsaix1.in.ibm.com
   Operating system   : AIX V5.3
   IBM NAS admin principal : admin/admin
   NFS V4 Server principal : nfs/adfsaix1.in.ibm.com

   Microsoft Active Directory Server (KDC)
   Realm Name   : MSKERBEROS.IN.IBM.COM
   Hostname: windce20.in.ibm.com
   Operating system  : Microsoft Windows Server 2003
   (Enterprise Edition, SP1)
   Active Directory admin
   Principal    : administrator

   AIX NAS 1.4 client and AIX NFS V4 client
   Realm name  : ADFSAIX1.IN.IBM.COM
   Hostname    : nfsaix02.in.ibm.com
   Operating system : AIX V5.3
   Configured to ADFSAIX1.IN.IBM.COM and MSKERBEROS.IN.IBM.COM realms.
图 1. 示例设置
图 1. 示例设置

配置步骤

为了更好地理解,我们将这些配置步骤划分为四个不同的模块:

设置 IBM NAS KDC 服务器和 AIX NFS Version 4 服务器

  1. 在 AIX 5.3 计算机中,安装 krb5modcrypt 文件集。

    AIX Version 5.3 Expansion CD 附带了 IBM NAS Version 1.4 文件集。下面列出了安装 IBM NAS Version 1.4 服务器和 AIX NFS Version 4 所需的 modcrypt.base 文件集的命令:

    清单 2. 文件集要求
       bash-2.05b#  hostname
       adfsaix1.in.ibm.com
    
       bash-2.05b#  installp -aqXgd . krb5.server modcrypt.base

    如果使用的是 AIX 53L (TL 5300-07) 和 AIX 610 发行版,那么您还需要安装 AIX Expansion Pack CD 所附带的 clic.rte 文件集,这是执行 gssd 守护进程的先决条件。有关更详细的信息,请参考 AIX 53L 或者 610 文档。

  2. 配置 AIX NAS KDC 服务器。

    在成功地安装了 IBM NAS Version 1.4 之后,需要在 AIX 计算机中配置 IBM NAS KDC。要将 NAS KDC 服务器配置为使用遗留数据库,可以使用下面的命令,如清单 3 中所示。有关 IBM NAS 管理的更详细的信息,请参考 AIX Version 5.3 Expansion Pack CD 所附带的 IBM NAS Version 1.4 管理员和用户指南。

    清单 3. NAS KDC 服务器的配置
    bash-2.05b#  hostname
    adfsaix1.in.ibm.com
    
    bash-2.05b# export PATH=/usr/krb5/bin/:/usr/krb5/sbin/:$PATH
    
    bash-2.05b# config.krb5 -S -r ADFSAIX1.IN.IBM.COM -d in.ibm.com
    Initializing configuration...
    Creating /etc/krb5/krb5_cfg_type...
    Creating /etc/krb5/krb5.conf...
    Creating /var/krb5/krb5kdc/kdc.conf...
    Creating database files...
    Initializing database '/var/krb5/krb5kdc/principal' for realm 'ADFSAIX1.IN.IBM.COM'
    master key name 'K/M@ADFSAIX1.IN.IBM.COM'
    You are prompted for the database Master Password.
    It is important that you DO NOT FORGET this password.
    Enter database Master Password:
    Re-enter database Master Password to verify:
    WARNING: no policy specified for admin/admin@ADFSAIX1.IN.IBM.COM;
    defaulting to no policy. Note that policy may be overridden by
    ACL restrictions.
    Enter password for principal "admin/admin@ADFSAIX1.IN.IBM.COM":
    Re-enter password for principal "admin/admin@ADFSAIX1.IN.IBM.COM":
    Principal "admin/admin@ADFSAIX1.IN.IBM.COM" created.
    Creating keytable...
    Creating /var/krb5/krb5kdc/kadm5.acl...
    Starting krb5kdc...
    krb5kdc was started successfully.
    Starting kadmind...
    kadmind was started successfully.
    The command completed successfully.

    您还可以使用 AIX mkkrb5srv 命令来配置 NAS KDC 服务器。有关更详细的信息,请参考 mkkrb5srv 手册页面。

    在运行这个命令的时候,系统请求给出主数据库的密码,以及一个称为 admin 的管理主体的密码。请在安全的地方记录名称和所选择的密码,因为这些主体对您的 NAS 环境来说是非常重要的。

  3. 设置 NFS 域名。

    在使用 NFS Version 4 之前,您必须设置 NFS 域名。

    清单 4. 设置 NFS 服务器
       bash-2.05b#  hostname
       adfsaix1.in.ibm.com
    
       bash-2.05b# chnfsdom 	in.ibm.com
    
       bash-2.05b# chnfsdom
       Current local domain: in.ibm.com
  4. 在 NFS Version 4 服务器中,添加 NFS 域到领域(domain-to-realm )的映射。

    在 NFS Version 4 的 AIX 5.3 实现中,您需要在 NFS 域和所使用的 Kerberos 领域之间提供一个相互关系的定义。

    清单 5. NFS 域到领域的映射
       bash-2.05b#  hostname
       adfsaix1.in.ibm.com
    
       bash-2.05b# chnfsrtd -a ADFSAIX1.IN.IBM.COM   in.ibm.com
       bash-2.05b# chnfsrtd -a MSKERBEROS.IN.IBM.COM in.ibm.com
    
       bash-2.05b# chnfsrtd
       adfsaix1.in.ibm.com		in.ibm.com
       mskerberos.in.ibm.com	in.ibm.com
  5. 在 AIX KDC 中创建 NFS 服务器主体,然后创建 NFS 服务器 keytab 文件条目。

    对于您的 KDC 环境中的每一个 NFS 服务器,您都必须定义一个 nfs/<full_qualified_hostname>@REALM 类型的主体,然后创建服务器 keytab 文件条目,如下所示:

    清单 6. 创建 NFS 服务器主体
    bash-2.05b#  hostname
    adfsaix1.in.ibm.com
    
    
    bash-2.05b# kadmin.local
    kadmin.local:  ank nfs/adfsaix1.in.ibm.com
    WARNING: no policy specified for nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM;
    defaulting to no policy. Note that policy may be overridden by
    ACL restrictions.
    Enter password for principal "nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM":
    Re-enter password for principal "nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM":
    Principal "nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM" created.
    
    kadmin.local:
    kadmin.local:  ktadd nfs/adfsaix1.in.ibm.com
    Entry for principal nfs/adfsaix1.in.ibm.com with kvno 2, encryption type Triple DES
    cbc mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
    Entry for principal nfs/adfsaix1.in.ibm.com with kvno 2, encryption type ArcFour
    with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
    Entry for principal nfs/adfsaix1.in.ibm.com with kvno 2, encryption type AES-256
    CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
    Entry for principal nfs/adfsaix1.in.ibm.com with kvno 2, encryption type DES cbc
    mode with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
    kadmin.local:  q
    
    bash-2.05b# klist -k
    Keytab name:  FILE:/etc/krb5/krb5.keytab
    KVNO Principal
    ---- ---------
    2 nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM
    2 nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM
    2 nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM
    2 nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM
  6. 在 NFS Version 4 服务器中,设置 gssd 守护进程。

    要允许 NFS Version 4 使用 RPCSEC_GSS,您必须创建服务器的 keytab 文件和 NFS 服务器主体之间的映射文件,如下所示:

    清单 7. 允许 NFS Version 4 使用 RPSEC-GSS
       bash-2.05b#  hostname
       adfsaix1.in.ibm.com
    
       bash-2.05b# nfshostkey -p nfs/adfsaix1.in.ibm.com -f /etc/krb5/krb5.keytab
       bash-2.05b#
       bash-2.05b# nfshostkey -l
       nfs/adfsaix1.in.ibm.com
       /etc/krb5/krb5.keytab
  7. 停止并重新启动 NFS 守护进程(gssdnfsrgyd),这样一来,所有的更改都将生效,并且在以后重新启动计算机时将启动该守护进程。
    清单 8. 停止并重新启动 NFS 守护进程
       bash-2.05b#  hostname
       adfsaix1.in.ibm.com
       
       bash-2.05b# chnfs -s
       0513-004 The Subsystem or Group, gssd, is currently inoperative.
       
       bash-2.05b# chnfs -S -B 
       0513-059 The gssd Subsystem has been started. Subsystem PID is 389192.
       
       bash-2.05b# chnfs -v
       0513-044 The nfsrgyd Subsystem was requested to stop.
       
       bash-2.05b# chnfs -V 
       0513-059 The nfsrgyd Subsystem has been started. Subsystem PID is 413862.

    输入 lssrc -g nfs 以确保所有的 NFS 守护进程都是活动的。

  8. 从 NFS 服务器(只有经过 Kerberos 身份验证的用户或者应用程序才能够访问)中导出目录。
    清单 9. 导出目录
       bash-2.05b#  hostname
       adfsaix1.in.ibm.com
    
       bash-2.05b# exportfs -i -o vers=4,sec=krb5 /home/guest
       bash-2.05b# exportfs
       /home/guest -vers=4,sec=krb5
  9. 在本地挂载导出的目录,以测试使用 Kerberos 身份验证是可以访问它的。

    获得用户的 Kerberos 凭据,然后将 NFSv4 导出的目录装入到“/mnt”。

    清单 10. 在本地装入导出的目录
    bash-2.05b#  hostname
    adfsaix1.in.ibm.com
    
    bash-2.05b# kinit admin/admin
    Password for admin/admin@ADFSAIX1.IN.IBM.COM:
    
    bash-2.05b# mount -o vers=4,sec=krb5 adfsaix1.in.ibm.com:/home/guest/ /mnt
    bash-2.05b#
    bash-2.05b# cd /mnt
    bash-2.05b# ls -l
    total 0
    bash-2.05b# touch file.txt
    bash-2.05b# ls
    file.txt
    
    bash-2.05b# klist
    Ticket cache:  FILE:/var/krb5/security/creds/krb5cc_0
    Default principal:  admin/admin@ADFSAIX1.IN.IBM.COM
    
    Valid startingExpires  Service principal
    08/24/07 01:25:11  08/25/07 01:24:56  krbtgt/ADFSAIX1.IN.IBM.COM@ADFSAIX1.IN.IBM.COM
    08/24/07 01:25:21  08/25/07 01:24:56 
     nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM

    有关使用 Kerberos 的 AIX NFS Version 4 配置的更详细的信息,请参考 AIX 5L Version 5.3 红皮书中的“Securing NFS in AIX—An Introduction to NFS V4”(请参见参考资料)。

设置 Microsoft Active Directory

要在 Microsoft Windows Server 2003 中设置 Microsoft Active Directory,请参考 Microsoft Developer Network 网站(请参见参考资料)中提供的 Microsoft Windows 相关文档。对于这个场景,我们在主机名为 windce20.in.ibm.com 的计算机中配置 Active Directory,并将 Active Directory Domain 命名为 MSKERBEROS.IN.IBM.COM,我们也将其称为运行于 Microsoft Active Directory 中的 Microsoft Kerberos 领域。

在 IBM NAS KDC 服务器和 Microsoft Active Directory 中进行跨领域设置

下面的步骤是在两个领域(到目前为止已经配置的领域)之间设置跨领域配置时,在两个 KDC 计算机中所需采取的步骤。

  1. krbtgt 服务主体添加到 NAS KDC 服务器中。

    要使得一个领域的 KDC 能够对另一个领域中的 Kerberos 用户进行身份验证,它必须与另一个领域中的 KDC 共享密钥。因此,您需要创建 krbtgt 服务主体,以进行跨领域访问。所有这些主体都具有相同的密码,这一点是很重要的。

    清单 11. 将 krbtgt 服务主体添加到 NAS KDC 服务器
    bash-2.05b# hostname
    adfsaix1.in.ibm.com
    
    bash-2.05b# kadmin.local
    kadmin.local:   ank -pw f1lesystem krbtgt/MSKERBEROS.IN.IBM.COM@ADFSAIX1.IN.IBM.COM
    WARNING: no policy specified for krbtgt/MSKERBEROS.IN.IBM.COM@ADFSAIX1.IN.IBM.COM;
    defaulting to no policy. Note that policy may be overridden by
    ACL restrictions.
    Principal "krbtgt/MSKERBEROS.IN.IBM.COM@ADFSAIX1.IN.IBM.COM" created.
    
    kadmin.local:
    kadmin.local:  ank -pw f1lesystem krbtgt/ADFSAIX1.IN.IBM.COM@MSKERBEROS.IN.IBM.COM
    WARNING: no policy specified for krbtgt/ADFSAIX1.IN.IBM.COM@MSKERBEROS.IN.IBM.COM;
    defaulting to no policy. Note that policy may be overridden by
    ACL restrictions.
    Principal "krbtgt/ADFSAIX1.IN.IBM.COM@MSKERBEROS.IN.IBM.COM" created.
  2. 编辑 NAS KDC 服务器 /etc/krb5/krb5.conf 文件,如下所示:

    更改 Kerberos 客户端文件配置,以提供两个领域的条目。在这个示例中,我们在 [realms] 部分中添加了 MSKERBEROS.IN.IBM.COM 节,在 [domain_realm] 部分中添加 windce20.in.ibm.com = MSKERBEROS.IN.IBM.COM 条目。

    清单 12. 编辑 NAS KDC 服务器 /etc/krb5/krb5.conf 文件
    bash-2.05b# hostname
    adfsaix1.in.ibm.com
    
    bash-2.05b#  cat /etc/krb5/krb5.conf
    
    [libdefaults]
    default_realm = ADFSAIX1.IN.IBM.COM
    default_keytab_name = FILE:/etc/krb5/krb5.keytab
    default_tkt_enctypes  = des3-cbc-sha1 arcfour-hmac aes256-cts des-cbc-md5 des-cbc-crc
    default_tgs_enctypes = des3-cbc-sha1 arcfour-hmac aes256-cts des-cbc-md5 des-cbc-crc
    
    [realms]
    ADFSAIX1.IN.IBM.COM = {
    kdc = adfsaix1.in.ibm.com:88
    admin_server = adfsaix1.in.ibm.com:749
    default_domain = in.ibm.com
    }
    
    MSKERBEROS.IN.IBM.COM  = {
    kdc = windce20.in.ibm.com:88
    admin_server = windce20.in.ibm.com:749
    default_domain = in.ibm.com
    }
    
    [domain_realm]
    adfsaix1.in.ibm.com = ADFSAIX1.IN.IBM.COM
    windce20.in.ibm.com = MSKERBEROS.IN.IBM.COM
    
    [logging]
    kdc = FILE:/var/krb5/log/krb5kdc.log
    admin_server = FILE:/var/krb5/log/kadmin.log
    default = FILE:/var/krb5/log/krb5lib.log

    如果您使用多台 AIX 计算机作为 NFS Version 4 服务器,那么确保将它们的主机名条目都添加到 [domain_realm] 部分中。

  3. 停止并重新启动 krb5 守护进程,这样一来,所有的更改都将生效。
    清单 13. 停止并重新启动 krb5 守护进程
       bash-2.05b# hostname
       adfsaix1.in.ibm.com
    
       bash-2.05b# stop.krb5
       Stopping /usr/krb5/sbin/krb5kdc...
       /usr/krb5/sbin/krb5kdc was stopped successfully.
       Stopping /usr/krb5/sbin/kadmind...
       /usr/krb5/sbin/kadmind was stopped successfully.
       The command completed successfully.
    
       bash-2.05b# start.krb5
       Starting krb5kdc...
       krb5kdc was started successfully.
       Starting kadmind...
       kadmind was started successfully.
       The command completed successfully.
  4. 验证 Windows 计算机中的 Active Directory 配置。

    图 2 列出了 windce20.in.ibm.com 中 Active Directory 的现有设置。

    图 2. windce20.in.ibm.com 中 Active Directory 的现有设置
    windce20.in.ibm.com 中 Active Directory 的现有设置
  5. 在 Windows Active Directory 计算机中,使用下面的命令设置外部 Kerberos 领域的配置。

    图 3 列出了在 windce20.in.ibm.com 的 Active Directory 中添加 KDC 的输出。

    图 3. windce20.in.ibm.com 的 Active Directory 中的 KDC
    在 windce20.in.ibm.com 的 Active Directory 中添加 KDC 的输出
  6. 在 Windows Active Directory 中,创建一个与 AIX NAS 领域之间的受信任的域关系。

    登录到安装 Active Directory 的 Windows 2003 Server 计算机 (windce20.in.ibm.com),并进行下面的操作:

    • 启动 Domain Tree Management 工具。单击 ProgramsAdministrative tools,然后再单击 Active Directory Domains and Trusts
    • 右键单击您的域的 Properties,然后选择 Trusts 选项卡,并按 New Trust。输入您希望在 ADS 信任列表中添加的 AIX NAS 领域。
    • 选择 Realm trust 作为信任类型、Nontransitive 作为信任转换,Two-way 作为信任方向,然后在 Trust password 中输入您在创建上面的 krbtgt 服务主体(例如 f1lesystem)的时候所使用的密码,。
    • 在为您的受信任领域创建了这个条目之后,验证其属性。

    图 4 列出了在 Active Directory 中的 Active Directory 领域和 NAS 领域之间添加信任之后的最终输出。

    图 4. 在 Active Directory中添加信任之后的最终输出
    在 Active Directory中添加信任之后的最终输出。
  7. 确认您可以从 NAS 服务器计算机中得到 ADS 主体(管理员)的 TGT。
    清单 14. 确认能够获得 ADS 主体文件的 TGT
    bash-2.05b#  hostname
    adfsaix1.in.ibm.com
    
    
    bash-2.05b# kinit administrator@MSKERBEROS.IN.IBM.COM
    Password for administrator@MSKERBEROS.IN.IBM.COM:
    
    bash-2.05b# klist
    Ticket cache:  FILE:/var/krb5/security/creds/krb5cc_0
    Default principal:  administrator@MSKERBEROS.IN.IBM.COM
    
    Valid startingExpires  Service principal
    08/24/07 01:26:44  08/24/07 11:27:04 
    krbtgt/MSKERBEROS.IN.IBM.COM@MSKERBEROS.IN.IBM.COM
    Renew until 08/25/07 01:26:44

设置 IBM NAS 客户端和 AIX NFS Version 4 客户端:测试场景

  1. 在 AIX 5.3 客户端计算机中,安装 krb5 客户端和 modcrypt 文件集。

    用于进行安装的命令如下所示:

    清单 15. 安装 krb5 客户端和 modcrypt 文件集
       bash-2.05b# hostname
       nfsaix02.in.ibm.com
     
       bash-2.05b# installp -aqXgYd . krb5.client modcrypt.base
  2. 配置 AIX NAS 客户端,如下所示:
    清单 16. 配置 AIX NAS 客户端
       bash-2.05b# hostname
       nfsaix02.in.ibm.com
       
       bash-2.05b# export PATH=/usr/krb5/bin/:/usr/krb5/sbin/:$PATH
    		
       bash-2.05b# config.krb5 -C -r ADFSAIX1.IN.IBM.COM -d in.ibm.com -s
    adfsaix1.in.ibm.com -c adfsaix1.in.ibm.com
       Initializing configuration...
       Creating /etc/krb5/krb5_cfg_type...
       Creating /etc/krb5/krb5.conf...
       The command completed successfully.

    还可以使用 AIX mkkrb5clnt 命令对 AIX NAS 客户端进行配置。有关更详细的信息,请参见 mkkrb5clnt 手册页面。

    然后,修改客户端的 /etc/krb5/krb5.conf 文件,与前面提到的针对 NAS 服务器的操作一样。
  3. 在 NFSv4 客户端计算机中,设置 NFS 域名,并添加 NFS 域到领域的映射:
    清单 17. 设置 NFS 域名、并添加 NFS 域到领域的映射
    bash-2.05b# hostname
    nfsaix02.in.ibm.com
    
    bash-2.05b# chnfsdom 	in.ibm.com
    
    bash-2.05b# chnfsdom
    Current local domain: in.ibm.com
    
    bash-2.05b# chnfsrtd -a ADFSAIX1.IN.IBM.COM   in.ibm.com
    bash-2.05b# chnfsrtd -a MSKERBEROS.IN.IBM.COM in.ibm.com
    
    bash-2.05b# chnfsrtd
    adfsaix1.in.ibm.com		in.ibm.com
    mskerberos.in.ibm.com		in.ibm.com
  4. 停止并重新启动 NFS 守护进程(gssdnfsrgyd),这样一来,所有的更改都将生效,并且在以后重新启动计算机时将启动该守护进程。
    清单 18. 停止并重新启动 NFS 守护进程
       bash-2.05b# hostname
       nfsaix02.in.ibm.com
       
       bash-2.05b# chnfs -s
       0513-004 The Subsystem or Group, gssd, is currently inoperative.
       
       bash-2.05b# chnfs -S -B
       0513-059 The gssd Subsystem has been started. Subsystem PID is 413932.
       
       bash-2.05b# chnfs -v
       0513-044 The nfsrgyd Subsystem was requested to stop.
       
       bash-2.05b# chnfs -V
       0513-059 The nfsrgyd Subsystem has been started. Subsystem PID is 258122.

    现在,通过运行 lssrc -g nfs,确保所有的 NFS 守护进程都是活动的。还需要确保所有的计算机都保持时间上的同步。

  5. 在 Microsoft 领域中获得用户的 TGT,并使用它通过 IBM NAS 领域中的 krb5 安全来访问 NFS 导出的数据。
    清单 19. 获得用户的 TGT
    bash-2.05b# hostname
    nfsaix02.in.ibm.com
    
    bash-2.05b#  kinit administrator@MSKERBEROS.IN.IBM.COM
    Password for administrator@MSKERBEROS.IN.IBM.COM:
    
    bash-2.05b# mount -o vers=4,sec=krb5 adfsaix1.in.ibm.com:/home/guest/ /mnt
    bash-2.05b# cd /mnt
    bash-2.05b# touch new.txt
    bash-2.05b# ls
    file.txt  new.txt
    
    bash-2.05b# klist
    Ticket cache:  FILE:/var/krb5/security/creds/krb5cc_0
    Default principal:  administrator@MSKERBEROS.IN.IBM.COM
    
    Valid startingExpires  Service principal
    08/24/07 01:26:44  08/24/07 11:27:04 
    krbtgt/MSKERBEROS.IN.IBM.COM@MSKERBEROS.IN.IBM.COM
    Renew until 08/25/07 01:26:44
    08/24/07 01:26:44  08/24/07 11:27:04 
    krbtgt/ADFSAIX1.IN.IBM.COM@MSKERBEROS.IN.IBM.COM
    Renew until 08/25/07 01:26:44
    08/24/07 01:27:25  08/24/07 11:27:04 
    nfs/adfsaix1.in.ibm.com@ADFSAIX1.IN.IBM.COM
    Renew until 08/25/07 01:26:44

结束语

在本文中,您已经学习了如何配置 Kerberos(IBM NAS 和 Microsoft Active Directory),以便在异构环境中使用跨组织边界的 AIX NFS Version 4。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=AIX and UNIX
ArticleID=286770
ArticleTitle=在 Kerberos 跨领域(AIX 和 Windwos 系统)的基础上配置 AIX NFS Version 4
publish-date=02042008