<b> 跨平台的身份集中管理</b>
一、環境
DNS Server(RHEL5.5): server1.example.com 192.168.32.31
DC Server (w2k3): w2k3.example.com 192.168.32.31
Samba Server (RHEL5.5):station3.example.com 192.168.32.33
Domain:example.com 192.168.32.0/24
二、域控制器w2k3的AD配置
1、 利用Active Directory安裝向導配置域
新域的域控制器—在新林中的域
新域的DNS全名:example.com
域NetBIOS名:AD
資料庫檔案夾:c:\windows\ntds
日志檔案夾:c:\windows\ntds
Sysvol檔案夾位置:c:\windows\sysvol
2、 建立域賬戶
管理使用者和計算機中建立使用者user1~user5
<a target="_blank" href="http://blog.51cto.com/attachment/201104/013137504.png"></a>
<a target="_blank" href="http://blog.51cto.com/attachment/201104/013149999.png"></a>
#使用者資訊
3、 安裝SFU35(Windows Service for Unix)
安裝:一切預設即可
三、samba配置
1、 和AD時間同步
[root@station3 ~]# ntpdate 192.168.32.41
27 Apr 01:09:41 ntpdate[2418]: adjust time server 192.168.32.41 offset 0.002424 sec
2、 安裝samba
[root@station3 ~]# yum install samba.i386
[root@station3 ~]# yum install samba-client.i386
[root@station3 ~]# yum install samba-common.i386
3、 配置系統認證基于winbind,并加入域
[root@station3 ~]# authconfig-tui
<a target="_blank" href="http://blog.51cto.com/attachment/201104/013203256.png"></a>
#選擇基于winbind的使用者資訊和驗證
<a target="_blank" href="http://blog.51cto.com/attachment/201104/013213601.png"></a>
#安全模型:ADS
#域:AD 即域控制器的NetBIOS名
#域控制器:w2k3.example.com (dns解析全名)
#ADS域:解析域
#模闆shell:/bin/bash #建議選擇/bin/bash
加入域
[root@station3 ~]# <b>/usr/bin/net join -w AD -S w2k3.example.com -U Administrator</b>
<b></b>
Administrator's password:
Using short domain name -- AD
Joined 'STATION3' to realm 'EXAMPLE.COM'
或者
[root@station3 ~]# <b>net rpc join -w AD -S w2k3.example.com -U Administrator</b>
Password:
Joined domain AD.
4、 利用authconfig-tui加入winbind認證後,系統自動從AD中複制/etc/krb5.conf檔案。
[root@station3 ~]# vi /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 = EXAMPLE.COM
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
forwardable = yes
[realms]
EXAMPLE.COM = {
kdc = kerberos.example.com:88
admin_server = kerberos.example.com:749
default_domain = example.com
kdc = w2k3.example.com
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
#AD預設驗證是kerberos驗證,建立AD時,會自動建立KDC服務。
5、 配置windows到unix的賬戶映射
[root@station3 ~]# vi /etc/ldap.conf
host w2k3.example.com
base dc=example,dc=com
binddn cn=user1,cn=Users,dc=example,dc=com
bindpw redhat@123
ssl on #為了安全必須開啟ssl
#綁定查詢賬戶為user1
# RFC 2307 (AD) mappings
nss_map_objectclass posixAccount user #linux下posiAccount映射windows下user
nss_map_objectclass shadowAccount user
nss_map_attribute uid sAMAccountName
nss_map_attribute homeDirectory msSFU30homeDirectory #家目錄映射
nss_map_attibute loginshell msSFU30loginshell #shell映射
nss_map_objectclass posixGroup group
nss_map_attribute uidNumber msSFU30uidNumber
nss_map_attribute gidNumber msSFU30gidNumber
pam_login_attribute sAMAccountName #開啟AD認證機制
pam_filter objectclass=User
pam_password ad
6、 配置samba
workgroup = AD
password server = w2k3.example.com
realm = EXAMPLE.COM
security = ads
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
template shell = /bin/bash #指定使用者登陸shell
#以上資訊時在利用authconfig-tui設定winbind認證時,自動生存的資訊。
template homedir = /home/%U #指定使用者家目錄
winbind use default domain = true
winbind enum users = yes
winbind enum groups = yes
7、啟動相關服務并測試
[root@station3 ~]# service winbind restart
關閉 Winbind 服務: [确定]
啟動 Winbind 服務: [确定]
[root@station3 ~]# service smb start
啟動 SMB 服務: [确定]
啟動 NMB 服務: [确定]
[root@station3 ~]# getent passwd #檢視使用者資訊
krbtgt:*:16777219:16777220:krbtgt:/home/AD/krbtgt:/home/krbtgt
user1:*:16777216:16777220:user1:/home/AD/user1:/home/user1
user2:*:16777220:16777220:user2:/home/AD/user2:/home/user2
user3:*:16777221:16777220:user3:/home/AD/user3:/home/user3
user4:*:16777222:16777220:user4:/home/AD/user4:/home/user4
user5:*:16777223:16777220:user5:/home/AD/user5:/home/use
#以上資訊表示認證成功
[root@station3 ~]# su - user1
su: warning: cannot change directory to /home/user1: 沒有那個檔案或目錄
-bash-3.2$
#利用 AD上的使用者user1登陸rhel5.5成功
[root@station3 ~]# <b>wbinfo –t </b> #測試samba與AD的信任關系
checking the trust secret via RPC calls succeeded
[root@station3 ~]# <b>wbinfo –u </b> #檢視域使用者的映射資訊
administrator
guest
krbtgt
user1
user2
user3
user4
user5
[root@station3 ~]# <b>wbinfo –g</b> #檢視域組的映射資訊
BUILTIN\administrators
BUILTIN\users
domain computers
domain controllers
schema admins
enterprise admins
domain admins
domain users
domain guests
group policy creator owners
本文轉自netsword 51CTO部落格,原文連結:http://blog.51cto.com/netsword/554428