1、samba
首先確保你的Linux系統中安裝了samba包,並用下述命令來檢查samba包的基礎庫支持,一般的RPM安裝都不會有問題。
# smbd -b | grep LDAP
HAVE_LDAP_H
HAVE_LDAP
HAVE_LDAP_DOMAIN2HOSTLIST
...
# smbd -b | grep KRB
HAVE_KRB5_H
HAVE_ADDRTYPE_IN_KRB5_ADDRESS
HAVE_KRB5
...
# smbd -b | grep ADS
WITH_ADS
WITH_ADS
# smbd -b | grep WINBIND
WITH_WINBIND
WITH_WINBIND
2、krb5配置
編輯/etc/krb5.conf中以下三節: 假設你的域名是SZ.AAA.COM,域控制器是dc01.sz.aaa.com/192.168.1.200。
[libdefaults]
default_realm = SZ.AAA.COM
dns_lookup_realm = false
dns_lookup_kdc = true
[realms]
SZ.AAA.COM= {
kdc = 192.168.1.200:88
admin_server = 192.168.1.200:749
default_domain = SZ.AAA.COM
}
[domain_realm]
.SZ.AAA.COM= SZ.AAA.COM
SZ.AAA.COM= SZ.AAA.COM
確保你的配置嚴格區分大小寫,否則你可能在用kinit測試連接時可能遇到錯誤 “Cannot find KDC for requested realm while getting initial credentials”.
# kinit
[email][email protected][/email]
Password for
[email][email protected][/email]
3、Samba配置
編輯修改/etc/samba/smb.conf如下:
[global]
workgroup = SZ
realm = SZ.AAA.COM
security = ADS
password server = 192.168.1.200
encrypt passwords = yes
winbind separator = +
idmap uid = 10000-20000
idmap gid = 10000-20000
winbind use default domain = Yes
[homes]
comment = Home Directories
valid users = %S
read .ly = No
browseable = No
保存並用testparm來檢查配置中可能的語法錯誤。
若無錯誤,(重)啓動samba服務。
然後用 net ads join -S 192.168.1.200 -U Administrator來加入域,這時需要輸入域管理員密碼。
4、winbind配置
編輯/etc/nsswitch.conf,更改passwd和group爲(files需視你linux系統配置NIS與否,如配置NIS,則爲compat)
passwd: files winbind
group: files winbind
保存後(重)啓動samba服務。(重)啓動winbind。
用 wbinfo -u檢索用戶,wbinfo -g檢索用戶組來測試winbind是否正常。
5、Apache中NTLM用戶校驗模塊,用下面的鏈接可以得到其源代碼。
[url]http://samba.org/ftp/unpacked/lorikeet/mod_auth_ntlm_winbind/[/url]
該源代碼需要APACHE源碼安裝版本後的apxs,把apxs路徑設入PATH變量或在Makefile中更改執行make install,進入模塊目錄,執行如下安裝:
autoconf
./configure
apxs -DAPACHE2 -c -i mod_auth_ntlm_winbind.c
應該在/usr/local/apache2/modules下生成mod_auth_ntlm_winbind.so模塊。
6、Apache配置
在httpd.conf中加入
LoadModule auth_ntlm_winbind_module modules/mod_auth_ntlm_winbind.so
並在需要NTLM校驗的DIRECTORY配置如下內容:
AuthName "SZ.AAA.COM"
NTLMAuth .
NTLMAuthHelper "/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp"
NTLMBasicAuthoritative .
AuthType NTLM
require valid-user
並對相應目錄可以設置域用戶/用戶組權限。
經驗總結:
1、據winbind開發者說CentOS自帶的samba+winbind會帶來許多意料不到的問題,用Version 3.0.26a-SerNet-RedHat(可從
[url]http://enterprisesamba.com/index.php?id=64[/url]
得到需要的client,common, winbind包).
CentOS 4.2(2.6.9-22) 帶的是samba 3.0.10-1.4E.2。
2、Version 3.0.26a-SerNet-RedHat版的/var/lib/samba/winbindd_privileged(CentOS集成samba版的/var/cache/samba/winbindd_privileged)文件權限爲777,否則Apache可能報500 internal server error。
3、在重啓winbind服務前,手工刪除2中所述文件,否則重啓會因該文件權限更改了導致失敗。
4、kinit 和net ads join -S 用戶不一定要administrator,一致既可,當然該用戶必須要有加Windows NT域的權限。
5、通過更改/etc/pam.d/下相關驗證配置文件,可以很容易地爲su, ssh, login, ftp等配置domain user集成。
linux 加入到 windows域
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Python與家國天下
豌豆花下貓
2019-02-24 22:22:40
Linux核心技能与应用
wy53780
2020-04-23 14:02:05
linux上安裝Docker(非常簡單的安裝方法)
幸運券發放
2019-02-24 19:38:01
2019年Java面試-併發容器篇
王知無
2019-02-24 15:12:46
淺淡個人學習嵌入式Linux過程
wx5c317e5b736d2
2019-02-24 13:31:30
DHCP服務原理與搭建(Linux系統+路由器,二選一方案)
wx5c7174443c6f9
2019-02-24 13:23:18
Redis安裝與配置
劉遄
2019-02-24 13:12:51
如果同事暗中傷害你,應該怎麼辦?
這個饅頭有餡
2019-02-24 13:59:08
職場中,抱怨越多的員工,越被領導瞧不起!
這個饅頭有餡
2019-02-24 13:59:08
老程序員被裁,應屆生卻能月薪 1.3 萬?這你能忍?
前端高達
2019-02-24 13:48:04
遇到到處蹭吃卻從不請客吃飯的主怎麼辦?
樑軍年
2019-02-24 13:26:35
Linux基本操作命令
wbzjacky
2019-02-24 13:12:38
高標準機房綜合配線安裝
wbzjacky
2019-02-24 13:12:38