分类:
2008-05-27 15:39:01
$ hostname
aixdce39.in.ibm.com
: / >
$ /usr/krb5/bin/kinit admin/admin
Password for :
: / >
$ /usr/krb5/sbin/kadmin
Authenticating as principal with password.
Password for :
kadmin: add_principal sandeep
WARNING: no policy specified for ;
defaulting to no policy. Note that policy may be overridden by
ACL restrictions.
Enter password for principal "":
Re-enter password for principal "":
Principal "" created.
kadmin: add_principal root/solsarpc2.in.ibm.com
WARNING: no policy specified for ;
defaulting to no policy. Note that policy may be overridden by
ACL restrictions.
Enter password for principal "":
Re-enter password for principal "":
Principal "" created.
kadmin: q
: / >
$
清单 6. 在 Solaris 计算机上创建 Solaris 10 用户
/> hostname
solsarpc2
/> who am i
root pts/4 Sep 21 15:26 (RSANDEEP1.in.ibm.com)
/> useradd -m -d /export/home/sandeep sandeep
64 blocks
/> passwd sandeep
New Password:
Re-enter new Password:
passwd: password successfully changed for sandeep
在 Solaris 10 上对 ssh/telnet/rlogin 进行 Kerberized 身份验证所需的插入式验证模块 (Pluggable Authentication Module) 的配置
编辑 /etc/pam.conf 文件,以便使得 Telnet、SSH 和 rlogin 使用 Kerberos 作为其身份验证模块。如下面的清单 7 所示,在 /etc/pam.conf 文件中添加相应的条目,以便为 SSH、Telnet 和 rlogin 命令启用 Kerberos 身份验证。我们建议管理员应该充分理解 Solaris 插入式验证模块 (PAM) 和 /etc/pam.conf 文件的使用(可以参考 Solaris 10 中关于 pam.conf 和 sshd 的 man 页面),然后将其映射为身份验证需求,并在 /etc/pam.conf 文件中修改相应的条目。
清单 7. 在 Solaris 计算机上设置 pam.conf 文件
sshd-kbdint auth sufficient pam_krb5.so.1
telnet auth sufficient pam_krb5.so.1
rlogin auth sufficient pam_krb5.so.1
在完成了设置工作之后,您就可以将 Kerberized 服务用于不同的通信服务。要对设置进行测试,可以在提供了 telnet/rlogin/ssh 的任何计算机上使用这些工具登录到 Solaris 10 计算机。成功连接之后,将会提示您输入 Kerberos 登录名和命名。您需要输入 Kerberos 主体及其关联的 Kerberos 密码。
清单 8、9 和 10 显示了使用 Kerberos 主体 sandeep 从 AIX 计算机使用 SSH、Telnet 和 rlogin 命令登录到 Solaris 计算机的测试结果。您还可以使用 Windows 本机的 Telnet 应用程序和 PuTTY for Windows(一种免费的 telnet/ssh/rlogin 客户端)从 Windows® XP 计算机登录到 Solaris 10 计算机,以便对 Kerberized 身份验证进行测试。
使用 AIX Version 5.3 作为 KDC 在 Solaris 10 上实现 Kerberized SSH
清单 8 显示了 aixdce1.in.ibm.com 上所执行的命令序列,该命令序列使用 Kerberos 作为身份验证机制(将 aixdce39.in.ibm.com (AIX Version 5.3) 服务器作为 KDC),建立了到 solsarpc2.in.ibm.com 的 SSH 连接。
清单 8. 使用 Kerberos 身份验证的成功的 SSH 的示例输出
$hostname
aixdce1.in.ibm.com
$whoami
manish
$ssh
Enter Kerberos password for sandeep:
Last login: Wed Sep 20 12:58:40 2006 from aixdce1.in.ibm.com
Welcome to the Sun Java Enterprise System 2005Q1 (Solsarpc2.in.ibm.com) !
$ hostname
solsarpc2
$ uname -a
SunOS solsarpc2 5.10 Generic_118833-17 sun4u sparc SUNW,Sun-Fire-V240
$ who am i
sandeep pts/3 Sep 20 13:00 (aixdce1.in.ibm.com)
$ pwd
/export/home/sandeep
$ exit
Connection to solsarpc2.in.ibm.com closed.
$hostname
aixdce1.in.ibm.com
$
如果在执行上述设置后,在使用 Kerberos 进行 SSH 连接时存在任何问题,可以在 /etc/hosts 中添加该计算机的完全限定的域名,然后进行重试。
使用 AIX Version 5.3 作为 KDC 在 Solaris 10 上实现 Kerberized Telnet
清单 9 显示了 aixdce1.in.ibm.com 上所执行的命令序列,该命令序列使用 Kerberos 作为身份验证机制(将 aixdce39.in.ibm.com (AIX Version 5.3) 服务器作为 KDC),建立了到 solsarpc2.in.ibm.com 的 Telnet 访问。
清单 9. 使用 Kerberos 身份验证的成功的 Telnet 的示例输出
[root@aixdce1 / ] #hostname
aixdce1.in.ibm.com
[root@aixdce1 / ] #whoami
root
[root@aixdce1] #telnet solsarpc2.in.ibm.com
Trying...
Connected to 9.182.192.168.
Escape character is '^]'.
login: sandeep
Enter Kerberos password for sandeep:
Last login: Tue Sep 19 15:20:06 from RSANDEEP1.in.ibm.com
Welcome to the Sun Java Enterprise System 2005Q1 (Solsarpc2.in.ibm.com) !
$ uname -a
SunOS solsarpc2 5.10 Generic_118833-17 sun4u sparc SUNW,Sun-Fire-V240
$ who am i
sandeep pts/3 Sep 19 15:24 (aixdce1.in.ibm.com)
$ pwd
/export/home/sandeep
$ exit
Connection closed.
[root@aixdce1] #hostname
aixdce1.in.ibm.com
[root@aixdce1] #
在缺省情况下,已启用了 Telnet 服务器并运行于 Solaris 10。如果没有,请参考 Solaris 10 中关于 telnetd 的 man 页面。
使用 AIX Version 5.3 作为 KDC 在 Solaris 10 上实现 Kerberized rlogin
清单 10 显示了 aixdce1.in.ibm.com 上所执行的命令序列,该命令序列使用 Kerberos 作为身份验证机制(将 aixdce39.in.ibm.com (AIX Version 5.3) 服务器作为 KDC),建立了到 solsarpc2.in.ibm.com 的远程登录访问。
清单 10. 使用 Kerberos 身份验证的成功的 rlogin 的示例输出
[root@aixdce1 / ] #hostname
aixdce1.in.ibm.com
[root@aixdce1 / ] #whoami
root
[root@aixdce1 / ] #rlogin solsarpc2.in.ibm.com -l sandeep
Enter Kerberos password for sandeep:
Last login: Tue Sep 19 15:24:14 from aixdce39.in.ibm.com
Welcome to the Sun Java Enterprise System 2005Q1 (Solsarpc2.in.ibm.com) !
$ hostname
solsarpc2
$ uname -a
SunOS solsarpc2 5.10 Generic_118833-17 sun4u sparc SUNW,Sun-Fire-V240
$ who am i
sandeep pts/3 Sep 19 15:31 (aixdce1.in.ibm.com)
$ pwd
/export/home/sandeep
$ exit
Connection closed.
[root@aixdce1 / ]hostname
aixdce1.in.ibm.com
在缺省情况下,已启用了 Telnet 服务器并运行于 Solaris 10。如果没有,请参考 Solaris 10 中关于 rlogind 的 man 页面。
总结
本文向管理员介绍了如何在 AIX Version 5.3 上配置 KDC,以及使用它来设置 Kerberized 环境,以便与 Solaris 10 协同工作。本文还说明了如何使用它为不同类型的通信进行身份验证。该内容可以帮助管理员使用单个 AIX KDC 实现不同操作系统的身份验证。要了解如何为 Windows 配置 AIX KDC,请参见参考资料部分。