Mac OS X Leopard与目录服务(AD/OD)集成宝典(4)

来源:互联网 发布:极简手表 知乎 编辑:程序博客网 时间:2024/04/18 08:56

4. Kerberos

Kerberos是现今最重要的和安全的用户认证方法之一. 不仅仅因为Kerberos可以实现一次登陆(SingleSingOn), 而且它也不需要在网络上传输密码. 微软的AD和苹果的OD中都支持Kerberos.

Mac OS X服务器内置有KDC(Kerberos Key Ditribution Center),KDC可以认证所有的储存在服务器目录服务中的密码是OD的用户. Kerberos可以使用下面的Mac OS X服务来认证用户:
• Login Window
• Mail services (POP, IMAP, SMTP)
• AFP, SMB, FTP and WebDAV file services
• SSH, SFTP
• Xgrid
• VPN

A. kerberos的认证过程

它的认证过程经过几个阶段:
1. 客户端通过和realms通讯来到KDC认证. 这是唯一验证用户密码的一步. 为了认证, 客户端发送一个登录请求,并得到一个经过加密的该用户保存在服务器上的数据包,这个数据包只能被拥有正确密码的客户端解密,所以密码从来不会被在网络上传输.

2. KDC将发布一个凭证准许凭证(Ticket-Granting-Ticket,TGT), 这个有效凭证在以后使用Kerberos化的服务时使用,TGT只在预设的时间内有效, 它被存储在客户缓冲中,可以在失效前重新获得。

3. 当客户希望使用Kerberos化的服务时,联系KDC。

4. KDC给客户分发一个可以是用该服务的凭证(Ticket).

5. 客户把这个凭证交给该服务.

6. 这个服务会验证该凭证, 如果该凭证有效,那么用户被允许使用这个服务。(Kerberos仅认证用户,而不认证用户使用其它服务).

注意到,服务不需要知道用户的密码和用户策略. 一旦获得了TGT, 就不需要提供密码。

B. 检查客户使用Kerberos单一登录


这一小节中我们将研究Mac OS X使用Kerberos的单一登录.

1. 使用OD用户登录到客户端
2. 在Finder里, 找到/System/Library/CoreServices并运行Kerberos程序. 你应该可以看到用户获得了一个TGT.


3. 在主OD中打开AFP服务(在Server Admin点击Start),注意:如果你使用另外一个服务器而不是主OD提供AFP服务(强烈建议使用这种方式), 并且希望支持SSO,你必须把该服务器添加到Kerberos realm中以建立KDC和该服务器的互信. 请看后面的”OD管理指引“获得有关分步指导.
 
4. 在客户端, 使用Finder登录到AFP服务器. 你将会发现系统没有要求你输入密码. 你还会发现一个新的用于在主OD上该AFP服务的凭证.


5. 卸装所有的服务器卷,使用Kerberos程序销毁那个凭证, 并再次尝试连接AFP服务器,这一次系统将要求你登录.

6. 检查/Library/Preferences/edu.mit.Kerberos文件. 这个是当你在DirectoryUtility里配置绑定到主OD时自动生成的Kerberos的配置文件.从”kerberosautoconfig“的man页中获得更多的有关此文件的信息.

原创粉丝点击