茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1729840 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_60D_00320.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2004/11/30 8:38:46
  SAMBA Team于2001年4月17日发布了Samba最新正式版2.2.0。增强的地方包括:增强了两种操作系统文件交互功能,当Unix和Windows共享某个文件的时候,可以保证数据的完整性;能够为Windows 2000和Windows NT客户机提供认证资源。这样可以节省购买Microsoft 客户接入许可证的费用; 支持自动下载Windows 2000/NT打印机驱动程序,首次独立于Microsoft的代码实现Windows NT点对点功能; 将Windows 2000 / Windows NT和UNIX 的接入控制列表统一起来。允许Windows客户机直接操作UNIX接入控制实体; 允许UNIX 服务器使用Windows 2000/Windows NT 域控制器 支持Microsoft分布式文件系统(Microsoft Distributed File System :MDFS)。 Samba 2.2.0 能够在Microsoft 的网络中扮演DFS 服务器的角色。

  同时该开发小组还发布了2.0.8版对先前的2.0.7版进行升级,这次的升级修正了老版本上用户可以通过SHELL账号破坏本地磁盘设备(如RAW设备)的安全漏洞。当然Samba 2.2.0已经包含了所有的安全补丁,如果不想升级到2.0.8就可以直接下载这个最新版了。既然这样,那我们立马就来试装这个新东东。

  首先从http://us1.samba.org/samba/ftp/samba-2.2.0.tar.gz得到源代码包,放到/tmp目录里后把它解开:(哦,我的系统是FreeBSD 4.3,也是最新的版本哦!)
  bsd# cd /tmp ; tar zxvf samba-2.2.0.tar.gz

  然后进入源代码子目录进行自动配置过程:
  bsd# cd /tmp/samba-2.2.0/source ; ./configure

  如没有什么错误就可以开始编译了:
  bsd# make ; make install

  完了以后就会在系统的/usr/local/samba中创建以下目录:

  bsd# ls /usr/local/samba

  bin lib man private swat var

  在试运行前需要完成两件事,首先就是拷贝一份smb.conf,接着产生smbpasswd口令数据库:

  bsd# cp /tmp/samba-2.2.0/examples/smb.conf.default   /usr/local/samba/lib/smb.conf
  bsd# cat /etc/passwd | /usr/local/samba/bin/mksmbpasswd.sh   /usr/local/samba/private/smbpasswd

  编辑smbpasswd文件从中删除不必要的账号以防止安全隐患,然后用以下命令添加新samba用户:

  bsd# /usr/local/samba/bin/smbpasswd -a sambauser
  好,我们现在就可以用这份缺省的配置文件进行试运行:

  bsd# /usr/local/samba/bin/smbd -D ; /usr/local/samba/bin/nmbd -D
这时请查看/usr/local/samba/var/log.smbd文件有没有出错信息,运气好的话开始测试连接:

  bsd# /usr/local/samba/bin/smbclient //bsd/sambauser -U sambauser
added interface ip=192.168.0.2 bcast=192.168.0.255 nmask=255.255.255.0
added interface ip=192.168.1.2 bcast=192.168.1.255 nmask=255.255.255.0
Password:

  #在这里输入该用户的samba口令
    Domain=[DOMAIN] OS=[Unix] Server=[Samba 2.2.0]
    smb: >

  哈哈,我们已经以sambauser的身份连接到他/她的主目录了,以后可以做的事请参考smbclient.1的man吧。

  接下来就可以来试2.2分支的最新特性,我们以把它配置成windows 2000客户机的域控制器为例。以下是实现必须的配置:

  [global]

  基本服务器设定

  netbios name = bsd
  workgroup = unixdomain

  以域及本地主浏览器方式运作

  os level = 64
  preferred master = yes
  domain master = yes
  local master = yes

  安全性设定

  security = user

  加密口令

  encrypt passwords = yes

  支持域登录

  domain logons = yes

  存放用户简档的目录

  logon path = \%Nprofiles\%u

  指定用户的主目录及映射盘符

  logon drive = H:
  logon home = \bsd\%u

  为所有用户指定通用登录脚本并使用[netlogon]共享项的相对路径

  logon script = logon.cmd

  域控制器必须的共享项

  [netlogon]
  path = /usr/local/samba/lib/netlogon
  writeable = no
  write list = ntadmin

  存放用户简档的共享项

  [profiles]
  path = /export/smb/ntprofile
  writeable = yes
  create mask = 0600
  directory mask = 0700

  接下来就需要为加入进来的客户机建立它们的机器信任账号了。有手工及自动两种方法可以达到目的,如果用前者则必须为每一台客户机分别建立,我们采用后者以减轻系统管理负担,不过只有root账号可以做此项工作,所以需要在smbpasswd口令数据库中为root建立账号(smbpasswd -a root),为安全起见最好不要用系统root的口令。然后在smb.conf中加入下面这一行:

  add user script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %m$

 用下面这个脚本(BSD风格)启动samba服务器:

  #!/bin/sh
  smbspool=/usr/local/samba/var/spool
  pidfiledir=/usr/local/samba/var/locks
  smbd=/usr/local/samba/bin/smbd
  nmbd=/usr/local/samba/bin/nmbd

  # start
  if [ "x$1" = "x" -o "x$1" = "xstart" ]; then
  if [ -f $smbd ]; then
  if [ -d $smbspool ]; then
  rm -f $smbspool/*
  fi
  echo -n ' Samba'
  $smbd -D
  $nmbd -D
  fi

  # stop
  elif [ "x$1" = "xstop" ]; then
  kill `cat $pidfiledir/smbd.pid`
  kill `cat $pidfiledir/nmbd.pid`
  fi

  然后在windows 2000客户机上以Administrator登录,进入"控制面板"双击"系统",选择"网络标识"书签并点击"属性",在"隶属于"项中选"域",并输入域名(unixdomain),按"确定",在确认时输入samba的root账号及其相应口令(别用系统口令哦!)然后重启就可以换登录进该域控制器了。

  另外这里还有一些系统性能及安全方面的建议,由于我用的是FreeBSD系统,在内核配置文件中加入以下选项并重编译内核:

  options SUIDDIR
  maxusers 128

  前者的作用是使文件服务器上所有用户的主目录都以suiddir选项装载,这样用户产生的新文件同目录具有相同的所有权。不过如果你让用户运行程序的话这就是个安全漏洞了,所以最好只限于在文件服务器上使用此选项,当然这个选项可以解决很多头痛问题,因为它支持很多文件服务器该有的调用,而用户希望"我的目录里只有我的文件"。

  而后者的作用就是提高系统表格尺寸,以提升系统对高负载的支持能力,原因是用Samba作文件服务器在大量连接请求会产生大量进程及文件句柄数。128这个值在一般情况下应该够了,请以实际经验取值。
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|