歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 配置Samba3.0為域登錄和文件服務器

配置Samba3.0為域登錄和文件服務器

日期:2017/3/6 15:29:34   编辑:關於Unix
配置Samba3.0為域登錄和文件 服務器 原文出處:http://www.unixonline.org/forum/viewthread.php?tid=45 我的系統是Red Hat9.0安裝的時候我沒有選擇 Linux 作為文件服務器﹐那是因為我想在系統安裝完畢之後再安裝Samba,這樣會省去一點麻煩 ﹐大家也可以升級 配置Samba3.0為域登錄和文件服務器

原文出處:http://www.unixonline.org/forum/viewthread.php?tid=45

我的系統是Red Hat9.0安裝的時候我沒有選擇Linux作為文件服務器﹐那是因為我想在系統安裝完畢之後再安裝Samba,這樣會省去一點麻煩 ﹐大家也可以升級安裝samba3.0rpm包。
方法如下:
#rpm -Uvh --force --nodeps samba-common-3.0.0.15.i386.rpm
#rpm -Uvh --force --nodeps samba-client-3.0.0-15.i386.rpm
#rpm -Uvh --force --nodeps samba-3.0.0-15.i386.rpm
此外還有一個工具就是圖形界面的Swat。
要是用這個工具﹐大家還要修改一處﹐就是﹕
vi /etc/xinetd.d/swat把其中的
disable = yes
改為
disable = no就可以了。
#rpm -ivh samba-swat-3.0.0-15.i386.rpm
然後開啟浏覽器輸入http://hostname:901.
也可以安裝redhat-config-samba這個工具﹐不過我不是很喜歡它﹐不實用。
為了方便遠程管理﹐Webmin也不錯﹐現在已經是1.121的版本了﹐建議大家裝上它﹐通過它大家就能輕易地配置好Samba.
這裡我不介紹通過webmin來架設samba服務器﹐還是按照我的配置文件敘述開來﹐方便﹐嘿嘿﹗﹗﹗
下面是我的/etc/samba中的smb.conf文件的內容﹕

# Global parameters
#全局配置參數
[global]
#設置工作組或者說是域名。
workgroup = MYGROUP
#網絡上看到的計算器名稱(samba)。
netbios name = SAMBA
#與windows字符集的匹配問題,簡體中文為cp936,繁體的為cp950.
dos charset = CP936
display charset = CP936
#服務器描述﹐%v顯示Samba版本。
server string = Samba Server %v
#設置samba服務器使用的認證過程。默認為USER﹐有四個選項﹕User,Share,Server和Domain.
Security = User
#設置純文本密碼的最少字符數。
min passwd length = 6
#匿名﹑名稱﹑密碼都不正確不准登錄服務器。即任何非法用戶名登錄均被視為gues用戶。
map to guest = Bad User
#用戶名的映像。
username map = /etc/samba/smbusers
#存放samba密碼的路徑
smb passed file = /etc/samba/smbpasswd
#samba日志文件的名字和路徑。
log file = /var/log/samba/%m.log
#日志文件的最大尺寸(KB)
max log size = 50
#作為時間服務器。
time server = Yes
#設置連接被視為無效而斷開前﹐未激活狀態的時間(MIN)﹐防止資源被無效連接耗費。
deadtime = 5
#網絡協議選項﹐注意不要更改﹐否則影響網絡速度及網絡問題。
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
#用戶成功登錄時在netlogon共享中運行的批處理文件或者windows命令文件﹐注意﹕這一項很重要﹐還有就是一定要配合下面的[netlogon]共享才能配置出你的PDC﹐%U為自動匹配登錄用戶的名稱。
logon script = %U.bat
#在服務器上保存Windows用戶登錄時的配置文件路徑﹐%L為Samba匹配服務器名稱。
logon path = \%L\profile\%U
#設定登錄時主目錄的當地路徑。
logon drive = H:
#Samba接受所在組用戶以域登錄。
domain logons = Yes
#如果要把samba設置為域服務器﹐浏覽器的OS級別一定要高於Windows。這裡說名一下﹕OS級別﹕windows95為1﹐98為1﹐win2000pro為16,winNt4.0、win2000server 為32.
os level = 65
#設置samba試圖成為主浏覽器。
domain master = Yes
#設置samba為WINS服務器。
wins support = Yes
#超級用戶。
admin users = root
#設置新文件權限。
create mask = 0740
#建立新文件時強制權限限制。
force create mode = 0740
#允許用戶在NT00下改變權限。
security mask = 0740
force security mode = 0740
#創建新目錄時允許擁有的最大權限。
directory mask = 0750
force directory mode = 0750
directory security mask = 0750
force directory security mode = 0750
#Windows工作方式﹐只要文件被修改﹐其時間戳將隨時更新。
dos filetimes = Yes
#Samba對文件生成時間作取整處理﹐計為下1秒﹐這也是windows工作方式。
dos filetime resolution = Yes
#共享家目錄。
[homes]
comment = Home Directories
read only = No
browseable = No
#重要的設置﹐samba作為域服務器時存放用戶登錄時執行的文件或腳本。
[netlogon]
comment = Network Logon Service
path = /home/netlogon
write list = root
guest ok = Yes
share modes = No
#用戶配置文件存放目錄 。
[Profile]
path = /home/profiles
read only = No
create mask = 0770
force create mode = 0770
security mask = 0770
force security mode = 0770
directory mask = 0770
force directory mode = 0770
directory security mask = 0770
force directory security mode = 0770
browseable = No
#打印機共享目錄。
[printers]
comment = All Printers
path = /var/spool/samba
printable = Yes
browseable = No
好﹐Smb.conf文件配置完成。接下來就要手動在/home下建立目錄﹕
profiles,訪問權限為0770,組為你想要建立的組﹐比如share.
用來存放Windows用戶的配置文件。
netlogon訪問權限為1750﹐這裡加上了sticky選項﹐不允許其它用戶刪除目錄裡的文件﹐只有超級用戶或者建立者才可以﹐注意sticky選項只對目錄起作用。組為share。
下面建立/etc/samba下面的smbpasswd文件﹕
# cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
為了安全起見﹐設置權限﹕
#cd /etc
#chmod 500 samba
#cd samba
#chmod 600 smbapsswd

接下來大家可以在netlogon目錄裡建立windows用戶的登錄腳本﹐比如批處理文件﹐需要注意的是﹐一定要在Windows下面建立﹐因為如果在Linux下建立﹐那幺Windows就不會執行Linux的文件。比如有個帳戶feixue,批處理文件可以這樣﹕
feixue.bat內容為﹕
@net time \SambaServer /set /yes
@net use H: \SambaServer\feixue -y
@regedit -s \SambaServer\netlogon\*.reg
等。

需要注意的是把批處理文件保存到netlogon下面後一定要檢查文件的權限﹐修正後用戶才會執行﹐不然的話嘿嘿﹐你有麻煩了﹗﹗﹗

如何配置Windows端登錄Samba域﹐對於98來說﹐很容易﹐在網絡屬性裡選Client for microsoft networks﹐在第一項打勾﹐下面輸入你的Samba服務器的域名(工作組).重新激活機器以後﹐登入對話框就會有三項﹕用戶名﹑密碼﹑域名。
NT/2000下面登錄samba域會困難一點﹐首先你要在Samba服務器上建立windowsNT/2000機器的信用帳號。
下面以一個計算器名為test的計算機為例﹕
#useradd -c 'Test Compter' -d /dev/null -g share -s /bin/false -r test$
我們創建了一個Linux本地帳號﹐出於安全的考慮不需要它登錄到Linux進行任何操作﹐因此的用戶目錄為/dev/null,shell是/bin/false.
然後我們就可以用smbpasswd創建相應的Samba機器帳號﹕
#smbpasswd -a -m test
其中-a是添加﹐-m是機器信任帳號。這樣﹐依據test$的Linux帳號創建了一個NT域的機器信任帳號test.
然後在windowsNT/2000上加入Samba域﹐根據提示輸入超級用戶的用戶名稱和密碼﹐就可以加入Samba域了。
重新激活機器以後﹐就會有三個選項了﹐比如用原先建立的用戶feixue登入即可。

Copyright © Linux教程網 All Rights Reserved