結合window2008活動目錄,配置samba,用戶名和密碼認證來自活動目錄

活動目錄:它是面向windows server操做系統的一種目錄服務。在活動目錄中,全部的網絡對象信息以一種結構化的數據存儲方式來保存,使得管理員和用戶可以輕鬆的查找和使用這些信息。活動目錄以這種結構化的數據存儲方式做爲基礎,對目錄信息進行合乎邏輯的分層組織。
參考博客:
 

(1)配置Active Directory域服務
在開始菜單-->運行-->輸入命令「dcpromo」點擊「肯定」按鈕
彈出 Active Directory 域服務安裝嚮導,並點擊「下一步」按鈕
-->下一步-->選擇「在新建林中新建域」-->輸入域名「sn.com」-->
選擇"windows server 2008 R2"-->點擊「是」繼續安裝-->輸入Administrator密碼和確認密碼,點擊「下一步」-->完成後重啓

(2)更改IP地址
10.10.54.88
255.255.255.0202
10.10.54.254
首選DNS:202.102.224.68

(4)將samba加入windows域
什麼是域?一臺windows計算機,要麼隸屬於工做組,要麼隸屬於域。
工做組就是將不一樣的電腦按功能分別列入不一樣的組中,以方便管理。
與工做組不一樣,域是一個相對嚴格的組織,至少須要一臺安裝了windows NT/2000/2003/2008 Server版本的計算機充當DC(域控制器),來實現集中式管理。加入到域的計算機在登陸時使用DC上的帳戶(即域用戶)和密碼來登陸,不使用本地帳戶登陸。若是使用本地帳戶登陸,就不能訪問域中的共享資源
//修改samba配置文件
[root@nan81 ~]# vim /etc/samba/smb.conf
[global]
workgroup = SN			--指定域名或者工做組名,就是「.com」以前的名字。個人是sn.com,即寫SN
hosts allow = 10.10.54.*        --指定哪一個網段能夠訪問
security = ads			--指定samba的安全模式
				--當samba服務器加入window AD域時使用該模式,也是將驗證工做交給windows域控制器負責,使用這個模式須要在samba服務器上安裝Kerberos。注意,在這個模式中,samba是做爲一個域成員,並非AD域控制器。asd參數驗證方式必須配合realm參數。
realm = SN.COM			--域名
password server = 10.10.54.88	--NT服務器IP

[share]
comment= public
path = /windows
writable = yes

(5)安裝配置Kerberos
Kerberos是一種計算機網絡受權協議,用來在非安全網絡中,對我的通訊安全的手段進行身份驗證。
[root@nan81 ~]# vim /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 = SN.COM
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
[realms]
 SN.COM = {
  kdc = 10.10.54.88:88
  admin_server = 10.10.54.88:749
default_domain = SN.COM
 }
[domain_realm]
 .sn.com = SN.COM
 sn.com = SN.COM
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
//驗證kerberos是否正確
[root@nan81 ~]# kinit administrator
Password for administrator@SN.COM: 

(6)配置winbind
winbind是samba的一個組件,實現微軟的RPC調用、可插式驗證模塊和名字服務切換,經過這些服務使NT域用戶能在linux主機上以linux用戶身份進行操做。
[root@nan81 ~]# vim /etc/samba/smb.conf
 	idmap uid = 10000-20000
        idmap gid = 10000-20000
        winbind separator = /
        idmap backend = tdb

        winbind enum users =yes
        winbind enum groups =yes
        winbind use default domain =yes
        winbind rpc only = yes
[root@nan81 ~]# vim /etc/sysconfig/samba 
SMBDOPTIONS="-D"
NMBDOPTIONS="-D"
WINBINDOPTIONS="-D"

(7)將samba加入域
[root@nan81 samba]# vim /etc/hosts
10.10.54.81 nan81.sn.com nan81 
[root@nan81 ~]# vim /etc/resolv.conf 
nameserver 10.10.54.88
[root@nan81 ~]# net ads join -U administrator
Enter administrator's password:
Using short domain name -- SN
Joined 'NAN81' to dns domain 'sn.com'

[root@nan81 ~]# /etc/init.d/smb restart
[root@nan81 ~]# /etc/init.d/nmb restart
[root@nan81 ~]# /etc/init.d/winbind restart

(8)配置NSS
Name Service Switch(NSS)名字服務轉換是不少linux/UINX操做系統所具備的功能。使用它能夠從不一樣的資源中解析系統信息,如主機名、郵件別名和用戶信息等。
在解析linux用戶名和組時,使用NSS應用編程接口的winbind就像一個系統信息源。而另外一方面,它經過使用MSRPC調用得到NT服務器的信息,並使用上述的接口提供一套新的帳戶信息表。只要運行winbind的linux主機上查閱一次用戶和組信息,就能夠像在本地同樣查看NT域及其託域在內的全部用戶和組信息。
[root@nan81 ~]# vim /etc/nsswitch.conf 
passwd:     files winbind
shadow:     files winbind
group:      files winbind

當一個linux應用程序產生一個查詢請求時,會在該文件中查找與所請求的服務類型相匹配的行。而後按照配置順序,先裝入/lib/libnss_file.so,使用這個模塊處理請求,再裝入/lib/libnss_winbind.so,再使用這個模塊處理請求,處理完把結果返回給應用程序。

(9)從winbind守護進程查詢信息
[root@nan81 ~]# wbinfo -t
checking the trust secret for domain SN via RPC calls succeeded
--若是出現錯誤,啓動winbind服務
[root@nan81 ~]# /etc/init.d/winbind restart
--從域中刪除samaba,執行下面的命令
net ads leave -U administrator

(10)測試
在windows server2008網路輸入://10.10.54.81
進入share進行操做
或者
[root@nan81 ~]# smbclient //10.10.54.81/share -Uadministrator
進行操做
相關文章
相關標籤/搜索