配置Samba服务器

Samba服务器有三种安全模式:share、user和server。
Samba的配置文件只有一个,就是/etc/smb.conf文件。
  sever模式需要NT域,如果对安全性能不是十分讲求的部门就不需要,
实际应用上我想仅有user模式足够,甚至share模式足欤,因为这
两种模式配置和使用起来方便多多。
  在这里,我没有测试Samba打印服务器。如果有需要的话,大家可以
参考“文章荟萃”里的“如何用最底成本满足局域网上各部门的打印
需求?(斑竹)”一文,相信此文对有需要的人士应该有一定的帮助。

一、先把Samba服务器配置为用户安全模式[user]

   1. [global]的配置

netbios name=linux 
  workgroup=SambaServer #服务器的工作组名不必与Windows客户机相同 
  server string=Samba Server 
  hosts allow=132.102.65. 127. 
  guest account=hgz 
  securoty=user 
  encrypt passwords=yes 
smb passwd file=/etc/smbpasswd 
  interfaces=132.102.65.101/16 #c段网址16应改为24 
  name resolve order=host dns bcast 
  wins support=no 
      ...



  其它参数为默认设置。

[tmp]
     
...

     说明:[tmp]为测试用,去掉前面的#即可。测试成功后,即可
把该段的参数应用到共享资源的[public]段,并使用命令

        #chmod a+w [public]里的共享资源目录
        
使所有用户都能读写该资源目录。
     
      
   2. 建立Samba帐户,编辑帐户文件/etc/smbpasswd,删除不需要的帐户

  #adduser hgz passwd '' #生成的hgz帐户口令是空的。
#passwd hgz #需要口令时运行此命令增加口令。
  #cat /etc/passwd | mksmbpasswd.sh > /etc/smbpasswd
     注:生成smbpasswd口令文件。
  #vi /etc/smbpasswd #删除不需要的帐户

3. 利用smbpasswd命令建立帐户的口令,最好与/etc/passwd的帐户口令相同。

#smbpasswd hgz #口令为空时亦要运行此命令,最多不加口令就是了。

  4. 重新启动SMB服务器

#/etc/rc.d/init.d/smb restart

5. 配置/etc/hosts文件,增加以下行

132.102.65.101 linux #linux主机
132.102.65.99 ht2 #Win98客户机
132.102.65.100 ht3 #Win95客户机

二、Samba服务器配置为共享模式[share]:

      share模式的安全性能最低。我想,只要不是为了连入Internet和
共享重要的数据,应该够用了。

  [global]配置:

  在[user]配置的基础上,只需用;注释掉以下各行

; guest account=hgz
; encrypt passwords=yes
; smb passwd file=/etc/smbpasswd
再把security=user改为security=share即可。

配置Win 95/98客户机

1. 配置c:\windows\hosts文件,增加

132.102.65.101 linux

2. 配置网络

确定已安装了NetBEUI、TCP/IP网络协议,Microsodt网络客户。
如果在Linux Samba服务器上还配置了DNS服务的话,必须指定DNS服
务器的ip地址。

3. 开机时以hgz作为用户名登录网络,鼠标右键点击“网上邻居”,
选“映射网络驱动器”,选好驱动器符,然后输入\\linux\hgz,确
定,再输入口令(如果口令不为空的话),确定即可。亦可输入
\\linux\tmp(任何可用帐号都能共享)。如果映射成功,先前网上
邻居看不到的SambaServer服务器这时应能看得到了。否则,
从服务器上运行smbclient -L ht2,再刷新网上邻居即可看到。

   说明:此时,最好不要双击网上邻居里的Samba服务器,因为会出错。
我就是因为这样,以为Samba还没有配置好,不断地修改[global],
不断地调试而浪费了很多时间。 为什么会这样呢?我不知道,
大家最好去问微软。-:)

  4. Samba设置成share模式时,Win95/98开机时用任何用户名
(不需要用Linux Samba服务器生成的有效帐号)登录都可以映射
成\\linux\tmp。如果想映射成\\linux\hgz,则需要修改Win 95/98注册表。

  在HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP
 中增加一DWORD值:值名:EnablePlainTextPassword 数值:0x01。

  说明:Win95的早期版本不用修改注册表。

检测

  1. 用ping命令来检查网络是否连通
   
    Ping linux #从客户端
Ping ht2/ht3  #从服务器端

2. 用smbclient查看共享资源

#smbclient -L linux  #查看Samba服务器上的共享资源

屏幕上显示如下:

Added interface ip=132.102.65.101 bcast=132.102.255.255 nmask=255.255.0.0 
Password: 
Domain=[SAMBASERVER] Os=[Unix] Server=[Samba 2.0.3] 

Sharename Type Comment 
----------- ------- ---------- 
tmp Disk Temporary file space 
IPC$ IPC IPC Service (Samba Server) 

Server Comment 
------- ---------- 
LINUX Samba Server 

Workgroup Master 
--------- ------ 
SAMBASERVR LINUX


  
   其实,如果Win 95/98客户机上设置了共享资源的话,可以用     

#smbclient -L ht2/ht3 来查看Win95/98客户机上的共享资源。
  
用 #smbclient //ht2/共享名(如磁盘d)来共享Win95/98客户机上的共享资源。
只可惜,界面不够友好。