RedHat Linux 9.0 下 Samba研究心得

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就可以了 启动方法跟刚才我说的一样 然后在浏览器里些上::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 account=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

—————————————————

Samba smb.conf 文件配置

workgroup = MYGROUP

//此项表示在Windows操作系统中的“网上邻居”将会出现的SAMBA服务器所属群组,默认MYGROUP,不区分大小写。

server string = Samba Server

//此项表示在Windows客户端启动SAMBA服务器的内容窗口后,,所显示的说明。

; hosts allow = 192.168.1. 192.168.2. 127.

//此项在默然情况下的配置下不使用,它可以用来设置局域网中容许访问SAMBA服务器的主机、子网或者是网域。如果超过一个必须用逗号隔开。

例子:

hosts allow=172.17.2.EXCEPT172.17.2.50

表示容许来自172.17.2.*.*的主机连接,但排除172.17.2.50

hosts allow=172.17.2.0/255.255.0.0

表示容许来自172.17.2.0子网中的所有主机连接

hosts allow=M1,M2

表示容许来自M1和M2两台计算机连接

hosts allow=@xq

表示容许来自XQ网域的所有计算机连接

printcap name = /etc/printcap

//此项是用来设置开机时自动加载的打印机配置文件名称和路径

load printers = yes

//表示是否容许打印机中的所有打印机,在开机时自动加载浏览列表,以支持客户端的浏览功能

printing = cups

//此项用来指定打印系统的类型

; guest account = pcguest

//此项默认不使用,它是用来设置Guest帐号名

log file = /var/log/samba/%m.log

//此项可为所有连接到SAMBA服务器的计算机建立个别的记录日志

max log size = 0

//此项可以设置每个记录日志大小的上限,单位是KB

security = user

//指定SAMBA服务器使用的安全性等级

; password server = <NT-Server-Name>

//此项功能在默认的配置下不使用,而且只有在上个选项设置为“security=server”时才生效,它是用来指定密码服务的名称,所以要使用NETBIOS名称,也可以使用“password server=*”的方式来自动寻找可用的域控制器

; password level = 8

//这个选项是为了避免SAMBA服务器和客户端之间容许密码大写位数不同而产生的错误

; username level = 8

//这个选项是为了避免SAMBA服务器和客户端之间容许帐号大写位数不同而产生的错误

encrypt passwords = yes

//此项表示是否指定用户密码以加密的形态发送到SAMBA服务器

smb passwd file = /etc/samba/smbpasswd

//SAMBA服务器使用的密码文件路径

; ssl CA certFile = /usr/share/ssl/certs/ca-bundle.crt

//它用来指定包含所有受信任CA名称的文件

unix password sync = Yes

// 此项是用来把SAMBA密码文件中的加密内容修改时,可以使用此选项进行同步

passwd program = /usr/bin/passwd %u

//此项用来指定设置UNIX帐号密码的程序,其中%U表示用户名称

passwd chat = *New*password* %n\n *Retype*new*password* %n\n *passwd:*all*authentication*tokens*updated*successfully*

//此项用来设置用户在进行Linux密码转换成SAMBA服务器密码时,屏幕出现的指示字符串,以及与用户产生交互窗口

pam password change = yes

//此项表示可以使用PAM来修改SMB客户端的密码,而不使用“passwd program”选项中指定的程序

; username map = /etc/samba/smbusers

//此选项指定一个配置文件,在此文件中包含客户端与服务端上的用户对应数据

; include = /etc/samba/smb.conf.%m

//此选项容许SAMBA服务器使用其他的配置文件

; obey pam restrictions = yes

//此项可以决定是否采用PAM帐号及会话管理的指令

socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

//这个选项在编写TCP/IP程序时相当重要,因为可以借此调整SAMBA服务器运行时的效率

; interfaces = 192.168.12.2/24 192.168.13.2/24

//此项以使SAMBA服务器监视多个往来接口,如果服务器上有多张网卡应该配置此项

在配置时可以写成:

interfaces =eth0

interfaces =172.17.4.150

; remote announce = 192.168.1.255 192.168.2.44

//此项容许NMBD定期公布SAMBA服务器的IP地址和群组名称到远程的网络或主机

#========== Share Definitions ===============

[homes] //用户个日的主目录设置内容

comment = Home Directories //主目录注释

browseable = no //是否容许其他用户浏览个人主目录

writable = yes //是否容许写入个人目录

valid users = %S //容许登陆的用户,%S表示当前登陆的用户

create mode = 0664 //新建文件的默认权限

directory mode = 0775 //新建目录的默认权限

; map to guest = bad user

//当用户输入不正确的帐号和密码时,可以利用“map to guest”选项来设置处理的方式,但是必须把前面的“security”选项设为“user”“server”“domain”

设置项

说明

user

拒绝访问

server

如果帐号正确,但密码错误,容许以Guest登陆

明天的希望,让我们忘了今天的痛苦

RedHat Linux 9.0 下 Samba研究心得

相关文章:

你感兴趣的文章:

标签云: