本文是一篇設置samba伺服器加入win2003活動目錄的工作筆記 。
1.samba伺服器軟體需求
krb5-workstation-1.2.7-19
pam_krb5-1.70-1
krb5-devel-1.2.7-19
krb5-libs-1.2.7-19
samba-3.0.5-2
2.配置kerberos(關鍵)
下面配置參數讓 Kerberos 進程知道處理活動目錄伺服器,對 /etc/krb5.conf 做適當的修改,修改時需要注意的是 Kerberos 是大小寫敏感的。
這是我的krb5.conf配置文件:
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
ticket_lifetime = 24000
default_realm = MYDOMAIN.COM
dns_lookup_realm = false
dns_lookup_kdc = false
MYDOMAIN.COM = {
kdc = 192.168.2.248
# admin_server = kerberos.example.com:749
default_domain = MYDOMAIN.COM
}
.mydomain.com = MYDOMAIN.COM
mydomain.com = MYDOMAIN.COM
profile = /var/kerberos/krb5kdc/kdc.conf
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
3.連接2003伺服器
kinit filesrv@MYDOMAIN.COM
Kerberos 的 kinit 命令將測試伺服器間的通信,後面的域名MYDOMAIN.COM 是你的活動目錄的域名,必須大寫,否則會收到錯誤信息:
kinit(v5): Cannot find KDC for requested realm while getting initial credentials.
如果通信正常,你會提示輸入口令,口令正確的話,就返回 bash 提示符,如果錯誤則報告:
kinit(v5): Preauthentication failed while getting initial credentials.
4.配置samba
修改/etc/samba/smb.conf如下幾行
workgroup = MYDOMAIN
netbios name = filesrv
server string = Filesrv
realm = MYDOMAIN.COM // 活動目錄伺服器域名
security = ADS // 採用活動目錄認證方式
encrypt passwords = yes // 採用加密的口令
重新啟動samba服務
service smb restart
配置完 Samba 和 Kerberos 后,需要在 Windows 2000 活動目錄下建立一個計算機帳號,如果需要在 Linux 上來完成的話,運行:
/usr/kerberos/bin/kinit filesrv@MYDOMAIN.COM
輸入口令后,建立帳號:
將伺服器加入活動目錄:
/usr/local/samba/bin/net ads join
去 Windows 2003 伺服器檢查上面的工作:打開活動目錄用戶和計算機,查看其中的條目,如果成功的話,就可以看到你的 Linux 伺服器。
然後在 Linux 機器上,你就可以採用 smbclient 命令連接到 Windows 的共享文件夾,而不需要輸入口令(因為採用了Kerberos )。
/usr/local/samba/bin/smbclient //w2k/c$ -k
這個命令可能會產生一些錯誤信息,但是不要緊它能工作的。
《解決方案》
# kinit dlzwj@ALPHA.COM
kinit(v5): Improper format of Kerberos configuration file while initializing Kerberos 5 library
請指點是什麼原因呢?
《解決方案》
哎,我對活動目錄失去了信心。
《解決方案》
用Linux做AD不太現實,特別是涉及到組策略;用來做文件伺服器還不錯。
《解決方案》
# kinit cai@LIZL.COM
Password for cai@LIZL.COM:
kinit(v5): Preauthentication failed while getting initial credentials
什麼原因哦?
《解決方案》
原帖由 xuki 於 2005-4-8 13:41 發表 http://bbs.chinaunix.net/images/common/back.gif
用Linux做AD不太現實,特別是涉及到組策略;用來做文件伺服器還不錯。
LZ講的不是用samba做AD功能,而是把samba做為member server ,也就是成員伺服器,認證是AD伺服器來做的,而不是samba
呵
《解決方案》
那在samba伺服器上共享文件出去,設定許可權時的帳號還得來源於win AD啊~~~
這樣可行嗎?
還是AD里的所有帳號都要匯入到samba中?
《解決方案》
是的,把ad域的用戶都映射成linux本地的帳號,是通過winbind實現的,具體的你可以參考一下網上的資料,明確是可以實現你所說的功能的
《解決方案》
要試試
《解決方案》
LZ 不地道,我遇到的問題和2樓的一樣,究竟是什麼原因呀?
[火星人 ] 設置samba伺服器加入win2003活動目錄已經有837次圍觀