使用Active Directory来进行身份认证,主要是通过linux下的kerberos服务器来认证windows下的用户,达到windows AD域用户在linux下的使用,实现windows域控下的账户在linux各种服务上认证,同一管理账号,方便samba、postfix、FTP等。如使用AD域下的aa账户登录linux下的samba(aa的samba目录)或ftp,或发送邮件等。首先要把linux主机也加入到windows域中。

主机名   系统                                             ip地址                   用途 
aa-kk       windows server2003 AD     192.168.40.199       AD域控制器,用于账号管理
nn            centos 或RHEL 5.5             192.168.40.175      搭建各个服务,如samba、postfix、FTP等
qq           xp                                         192.168.40.20        客户端,用于测试samba、postfix等,实现windows域控制的账户和linux服务之间的结合。
环境如下:
aa-kk是域名为ASK.COM的域控制器,dns指向自己。linux下的dns也指向改域控制器的ip地址,且linux下可以ping通aa-kk.ask.com的出来的ip地址是192.168.40.199.也就是说解析正反向地址成功。还有最重要的是时间同步

先来理解几个概念:
PDC:主域控制器,一般用来做验证
BDC:备份域控制器,一般用于和主域做同步帐号等操作
KDC:密钥分发中心,说白了,就是kerbrose服务器。这个需要对kerbrose有一定的了解,这里不多说了
PAM:可插拔认证模块,这玩意就是使用不同的验证方法来验证你所需要的服务,比如sshd,login,ftp等。这些服务都对应一个配置文件,这个配置文件位于/etc/pam.d/下。而支持这些验证的动态库位于/lib/security/下。

Win 2003 Server作为域控制器,客户端提交的认证请求和授权的过程是通过Kerberos5协议来完成的,所以要让Linux的samba服务器支持域认证,
首先需要将Kerberos配置好。需要的软件包有
yum install samba samba-swat samba-client krb5* gcc ntp pcre-devel gmp-devel -y配置yum安装完成
[root@nn ~]# cat /etc/krb5.conf
[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log
[libdefaults]
  default_realm = ASK.COM                                          ##指定域名
 dns_lookup_realm = false
 dns_lookup_kdc = true
[realms]
ASK.COM = {                                                               ##指定域名
  kdc = 192.168.40.199:88