RedhatLinux9.0Samba配置详解

发表于:2007-07-04来源:作者:点击数: 标签:
1.安装samba 首先验证您的机器中是否已经安装samba rpm -qa|grep samba,如果出现 samba-common-2.2.7a-7.9.0 samba-client-2.2.7a-7.9.0 samba-2.2.7a-7.9.0 那么恭喜你,你已经安装好了samba,如果没有以上那些东东,请安装,安装方法很简单,redhat linux 9.0第

  1.安装samba
  首先验证您的机器中是否已经安装samba
  rpm -qa|grep samba,如果出现
  samba-common-2.2.7a-7.9.0
  samba-client-2.2.7a-7.9.0
  samba-2.2.7a-7.9.0
  那么恭喜你,你已经安装好了samba,如果没有以上那些东东,请安装,安装方法很简单,redhat linux 9.0第一张光盘里就有//cdrom/RedHat/RPMS/
  以下是我的详细安装过程
  把第一张光盘放进光驱,他会自动挂接的,省得自己动手mount了
  #cd /mnt/cdrom/RedHat/RPMS(主意大小写字母,否则会出错的啊)
  #rpm -ivh samba-common-2.2.7a-7.9.0 (这个要先安装,安装的时候不一定要把后面的samba-common-2.2.7a-7.9.0全部写完,比如写到samba-c的时候,多按几次Tab键,很省事的哦)
  #rpm -ivh samba-2.2.7a-7.9.0
  #rpm -ivh samba-client-2.2.7a-7.9.0(客户端)
  安装了以上的东西之后,基本上就可以了,但为了配置的方便以及利用REDHAT LINUX9.0新特性,我建议在安装以下两个东东redhat-config-samba-1.0.4-1,samba-swat-2.2.7a-7.9.0光盘里都有,其中redhat-config-samba-1.0.4-1在第一张光盘里,samba-swat-2.2.7a-7.9.0在第二张光盘里,安装方法和上面的一样了.
  通过上面的简单介绍,我想你已经安装好了,试验一下
  #rpm -qa|grep samba(这是什么含义应该知道吧,如果不知道,建议先学学LINUX的基本命令)
  redhat-config-samba-1.0.4-1
  samba-common-2.2.7a-7.9.0
  samba-client-2.2.7a-7.9.0
  samba-swat-2.2.7a-7.9.0
  samba-2.2.7a-7.9.0
  OK,安装成功!(建议,以上东西最好自己安装一次,系统上如果装的有,还是先卸载,这样,才能加深印象,如果卸载以后,安装出问题,可能是你没有完全卸载,解决方法要不继续查找卸载,要不强制安装)
  
  2.配置
  (1)方法1
  利用我们安装的redhat-config-samba-1.0.4-1进行配置,方法如下:
  开始--->系统设置--->服务器配置--->samba服务器
  (我是在LINUX写这个文章,所以图形的东西我不会剪切,只好用简单的说一下了)
  首选项-->服务器设置,这里你可以对samba服务器进行一些基本的设置里,应该说比较简单了,我看没有必要介绍了,配置好之后,记住重新启动服务.
  重新启动的方法有两种:
  #service smb start或restart
  #/etc/rc.d/init.d/smb start
  (2)方法2
  利用samba-swat-2.2.7a-7.9.0
  首先,你要修改swat的配置文件,默认的情况下是关闭的
  service swat
  {
  port = 901 (swat用到的端口是901)
  socket_type = stream(类似tcp协议的东西,呵呵这是我自己的理解)
  wait = no
  only_from = 127.0.0.1(只从这个启动swat,关键!)
  user = root(启动swat用到的名子)
  server = /usr/sbin/swat
  log_on_failure += USERID
  disable = yes (一定要把yes改成no)
  }
  修改过之后,启动xinetd就可以了
  启动方法跟刚才我说的一样
  然后在浏览器里些上:http://127.0.0.1:901/重重的按回车,你发现你成功了 !(注意,这个IP地址要跟你在SWAT配置文件里的IP地址一样才形,切记!)
  至于如何使用swat,自己摸索一下应该不成问题了,配置完成以后,记得重新启动服务就可以了.对了,为了使得samba和swat在每次开机的时候启动,你可以这样:
  #setup,然后找到system service,在SMB和SWAT前搞个*,也可以#ntsysv,同样的效果.
  (3)方法3
  利用samba-2.2.7a-7.9.0,这是最根本的东西,不管用什么工具,掌握其原理才是最重要的,像网页制作一样,虽然工具很多,但一定要熟悉HTML语言,才能编的好的网页(扯蛋!呵呵)
  装好samba-2.2.7a-7.9.0之后,会在/etc/samba/下形成己个文件
  smb.conf smbpasswd smbusers lmhosts,如果没有其中的一个,你可以touch创建
  修改smb.conf文件
  我只做简单的说明:guest ok 和public是一样的,read only 和writable是相反的,没什么区别
  workgroup=(工作组名子,填上你目前的LAN的工作组)
  netbios=(最好是你的机器名,如果把改句注消,默认的是你LINUX机器名,不过,最好还是自己填上)
  client code page=936(默认是850,936是简体中文的意思,这个要记住,难道不记得你mount你windows系统下的中文名子都是???,就是因为你没有加-o iocharset=cp936的原因!)
  guest aclearcase/" target="_blank" >ccount=nobody(guest帐号,这于你定义的共享文件颊有关,其中nobody在smbusers里有)
  security = SHARE(有四个级别,不多说)
  encrypt passwords = Yes(加密的密码, win98/2000传送的密码都是加密的,所以这里要yes)
  以上都是[global]的内容,其实,很多呢,水平有限不多说了.
  下面就是你要开的共享的东西,要说明的是,文件夹共享的属性取决于该文件颊在LINUX里的权限设定
  [myxfc]
  comment = myxinfc
  path = /home/xinfc
  read only = No
  guest ok = Yes
  [tmp]
  path = /home
  valid users = hehl
  write list = @staff
  read only = No
  guest ok = Yes
  共享的设定其实很简单,主要是路径和权限的问题,这两个搞清楚了 ,应该没问题了
  
  该介绍的我都介绍完了,重新启动服务!
  或许您会发现客户端无法连接,奶奶的,真让人生气,忙了这么久,还是不能访问,why?
  1)客户端应安装tcp/ip netbios ipx
  2lmhosts, IP地址和netbios名子对应.
  3)iptables(这个东西最坏,就是因为他,我浪费了两天时间!我得出一个小小的结论,做各种配置前把iptables给关闭!)
  由于我对iptables不太懂,我的解决方式有两种:
  1:#setup 然后选择防火墙,然后关闭
  2.修改/etc/sysconfig/iptables
  -A INPUT -j RH-Lokkit-0-50-INPUT
  -A FORWARD -j RH-Lokkit-0-50-INPUT
  -A RH-Lokkit-0-50-INPUT -i lo -j ACCEPT
  -A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 0:1023 --syn -j ACCEPT
  -A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 2049 --syn -j REJECT
  -A RH-Lokkit-0-50-INPUT -p udp -m udp --dport 0:1023 -j ACCEPT
  -A RH-Lokkit-0-50-INPUT -p udp -m udp --dport 2049 -j REJECT
  -A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 6000:6009 --syn -j REJECT
  -A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 7100 --syn -j REJECT
  COMMIT
  把0:1023的两行的REJECT改成ACCEPT
  重新启动防火墙就可以了
  #service iptables start

原文转自:http://www.ltesting.net