其實早在samba2.2版本已經能非常好的支持samba做PDC(主域控制器),只不過到了3.0對域的支持雍茫較衷諼棺钚碌陌姹?.0,已經支持AD,并且支持Microsoft Kerberos 認證、完全重寫和可配置的認證子系統等新功能。
好了,我們來開始今天的任務,我們今天只是實現簡單的域控制器PDC的建立,至于他支持的AD和Kerberos等功能大家慢慢的自己去研究,我也不是很懂哦:)
1。安裝samba,這個很簡單了,如果你是fedora,就可以從光盤直接安裝samba的rpm包。
rpm -ivh samba-3.0.0-15.i386.rpm
大家也可以直接到samba的官方網站(http://www.)去下載最新的軟件包
或者下載最新的tar包,http://us1./samba/ftp/samba-3.0.0.tar.gz
那就最好按下面的方法編譯
tar zvxf samba-3.0.0.tar.gz
cd samba-3.0.0
./configure --prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share/samba --sysconfdir=/etc/samba --localstatedir=/usr/local/samba/var --libdir=/usr/lib --with-lockdir=/var/locks/samba --with-swatdir=/usr/share/samba/swat --with-codepagedir=/etc/samba/codepages --with-configdir=/etc/samba --with-smbwrapper --with-automount --with-smbmount --with-pam --with-pam_smbpass --with-winbind
make
make intall ok!安裝完以后,下面才是我們的重點,修改/etc/samba/smb.conf,大家最好在原來的基礎上修改。
[global] workgroup = bmit netbios name = proxy server string = Samba PDC running %v socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192 # 這里的workgroup = bmit就代表bmit域,當然如果用bmit.com那就更加規(guī)范,但為了客戶端輸入的方便,還是直接bmit的好,netbios name = proxy表示這臺服務器的netbios名,socket options選項設置控制 TCP/IP 性能。所顯示的設置就可以與基于 Linux 的系統一起很好地工作了。 os level = 64 preferred master = yes local master = yes domain master = yes #domain master 選項是一個“開關”,通告 Samba 將成為主域控制器。(local master browser)是維護局域網機器列表的服務器被稱為本地主瀏覽器。 security = user encrypt passwords = yes domain logons = yes log file = /var/log/samba/log.%m log level = 2 max log size = 50 hosts allow = 127.0.0.1 192.168.1.0/255.255.255.0 #這里我們還是使用user驗證方式,不要懸在所謂的domain,至于hosts allow大家可以根據自己的需求寫那些網段可以訪問你的服務器,或者索性不寫也行。 logon home = \%L\%U.profile logon drive = H: logon path = \%Lprofiles\%U logon script = netlogon.bat #以上是漫游設置和登錄腳本,logon path = \%Lprofiles\%U,會于下面我們要說的 [profiles] 共享成對應關系。
[homes] comment = Home Directories browseable = no writeable = yes
[profiles] path = /home/samba/profiles writeable = yes browseable = no create mask = 0600 directory mask = 0700
[netlogon] comment = Network Logon Service path = /home/netlogon read only = yes browseable = no write list= root 以上是關于共享的手腕子,其中profile是用來存放每個登錄用戶的設置文件,以便用戶以后登錄可以從服務器讀取以前的桌面設置,netlogon是用來存放登錄腳本的,所以要限制寫的權限,假設這里只有root用戶可以有權限。 至于其他共享,完全可以參照《Samba3.0服務器實戰(zhàn)調試》(http://www./samba.html)這篇文章共享設置,我就不再重復講了 接著是將用戶和機器帳戶添加到域控制器。 先建立創(chuàng)建了下列各組以及創(chuàng)建兩個必要目錄,并設置正確的所有權。 groupadd admin groupadd machines mkdir -m 0775 /home/netlogon chown root.admin /home/netlogon mkdir /home/samba /home/samba/profiles chown 1757 /home/samba/profiles 對上述目錄設置正確的權限和所有權是保護服務器的關鍵一步哦 手工添加機器賬號 比如我的客戶端的機器名是ibm240,那么我們可以這么做 useradd -g machines -d /dev/null -c "machine id" -s /bin/false ibm240$ passwd -l ibm240$ 輸入兩遍密碼; 不要忘記標上美元符號;這是必需的,它將該項標識為信任帳戶 創(chuàng)建 linux 帳戶后,我們現在可以將該機器添加到 /etc/samba/smbpasswd
smbpasswd -a -m ibm240
當然你也可以讓系統自動添加機器賬號,用下面的方法,不過大家最好先試手動添加,成功后再試驗系統自動添加 自動添加只要在[global]添加 add user script = /usr/sbin/useradd -d /dev/null -g machines -s /bin/false -M %u 添加用戶賬號 首先添加的是root帳戶,把root加入到smb帳戶中 smbpasswd -c root 這一步很重要,因為后面的加入域要用到有管理員的賬號加入域的權限,否則用普通用戶好像不能順利加入域
然后添加普通用戶
useradd frank passwd frank smbpasswd -a frank
為了方便以后的管理,最好smb的用戶密碼和unix系統密碼一樣,這樣我們還可以用到samba的密碼同步功能 #下面的選項語句將允許用戶從 Windows 客戶機上更改他們的 Samba 密碼,這樣會隨即更新他們的 UNIX 密碼以與新的 Samba 項相匹配。但是如果更改了 UNIX 密碼,那么同一技術不能逆向工作;必需手工同步更改 Samba 密碼。也是在[global],初學者可以先不做這個工作。
unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *New*UNIX*password* %n *Retype*new*UNIX*password* %n *Enter*new*UNIX*password* %n *Retype*new*UNIX*password* %n *passwd: *all*authentication*tokens*updated*successfully*
#上述語句中唯一值得一提的是 passwd chat 選項,不管這里如何顯示它,都要將它輸入成一行。還要注意有些選項使用“password”,而有些使用“passwd”。 Samba PDC 的配置就這樣完成了。剩下唯一要做的是將客戶機加入到域中。記得重啟samba服務哦!客戶端的設置,這里由于條件的限制,我只試驗了windows2000客戶端加入域,至于winxp和win98的加入大家自己去試驗。
(win200機器最好先重啟一下,可以避免一些不必要的問題)然后轉至 控制面板 -> 網絡-> 網絡標示,如果機器目前被配置在 工作組 選項下,那么選中 域 單選按鈕并輸入域名bmit。
現在,通過使用用戶名 root 和相應的密碼登錄到域。必需初始化服務器和客戶機機器之間的“秘密”。從此時起,任何已認證的用戶都可以從這臺機器登錄。 應該出現一個歡迎您來到 XX域的消息
恭喜你已經成功將samba配置成PDC
據說xp加入samba建立的域有點復雜,我沒試驗過,大家有興趣的話,最好去samba的老家看看文檔,好像是要設置安全選項,并修改注冊表,好麻煩哦,幸虧我沒有xp :)
|