Login
升级VIP 登录 注册 安全退出
当前位置: 首页 > word文档 > 其他文档 > SAMBA服务器,samba服务器的配置文件是

SAMBA服务器,samba服务器的配置文件是

收藏

本作品内容为SAMBA服务器,格式为 doc ,大小 579584 KB ,页数为 17页

SAMBA服务器


('8.1SAMBA服务器8.1.1Samba概述1.Samba的作用建立计算机网络的目的之一就是为了能够资源共享,如今接入网络的计算机大多数使用Windows操作系统。为了能让使用Linux操作系统的计算机和使用Wmdows操作系统的计算机共享资源,需要使用Samba工具。Samba是在Linux/Unix系统上实现SMB(SessionMessageBlock)协议的一个免费软件,以实现文件共享和打印机服务共享,它的工作原理与Windows网上邻居类似。SMB使Linux计算机在网上邻居中看起来如同一台Windows计算机。Windows计算机的用户可以“登录”到Linux计算机中,从Linux中复制文件,提交打印任务。如果Linux运行环境中有较多的Windows用户,使用SMB将会非常方便。如图8-1所示,图中的服务器运行Samba服务器软件,其操作系统是Linux。该服务器通过Samba可以向局域网中的其它Windows主机提供文件共享的服务。同时,在Linux服务器上还连接了一个共享打印机,打印机也通过Samba向局域网的其它Windows用户提供打印服务。图8-1由Samba提供文件和打印共享2.Samba的组成给Windows客户提供文件服务是通过samba实现的,这套软件由一系列的组件构成,主要的组件有:1)smbd(SMB服务器)smbd是Samba服务守护进程,是Samba的核心,时刻侦听网络的文件和打印服务请求,负责建立对话进程、验证用户身份、提供对文件系统和打印机的访问机制。该程序默认安装在/usr/sbin目录下。2)nmbd(NetbioS名字服务器)nmbd也是Samba服务的守护进程,用来实现“NetworkBrower”(网络浏览服务器)的功能,对外发布samba服务器可以提供的服务。用户甚至可以用Samba作为局域网的主浏览服务器。3)smbclient(SMB客户程序)是Samba的客户端程序,客户端用户使用它可以复制Samba服务器上的文件,还可以访问Samba服务器上共享的打印机资源。4)testparm该程序用来快速检查和测试Samba服务器配置文件smb.conf中的语法错误。5)smbtarsmbtar是一个shell脚本程序,它通过smbclient使用tar格式备份和恢复一台远程Windwos的共享文件。还有其它工具命令用来配置Samba的加密口令文件、配置用于Samba国际化的字符集。在Linux上,Samba还提供了挂载和卸载SMB文件系统的工具程序smbmount和smbumount。8.1.2Samba服务器的安装用户在安装RedHatLinux9的时候,如果选择了安装所有软件包,那么Samba就已经安装上了;如果系统没有安装,则可以从光盘的RedHat/RPMS目录下安装。1.查询Samba是否已经安装RedHatLinux9中提供了Samba服务器的RPM软件安装包,这里可以使用rpm命令来检查是否安装以及安装。安装Samba服务器需要以下软件包:samba-2.2.7a-7.9.0.i386.rpm,Samba服务器软件。samba-common-2.2.7a-7.9.0.i386.rpm,Samba服务器与客户端都需要的文件。[root@rh9root]#rpm-qagrepsamb//检查Samba的相关软件是否已经安装。samba-2.2.7a-7.9.0samba-common-2.2.7a-7.9.0samba-client-2.2.7a-7.9.0//Samba客户端软件。2.安装Samba如果输出如上所示的软件名称,则说明已经安装,否则可以使用下面的命令安装Samba服务器软件。注意:要先安装samba-common-2.2.7a-7.9.0软件包,才能顺利完成另外2个软件包的安装。[root@rh9dhcp]#mount/mnt/cdrom[root@rh9dhcp]#cd/mnt/cdrom/RedHat/RPMS[root@rh9root]#rpm-ivhsamba-common-2.2.7a-7.9.0.i386.rpmwarning:samba-common-2.2.7a-7.9.0.i386.rpm:V3DSAsignature:NOKEY,keyIDdb42a60ePreparing...###########################################[100%]1:samba-common###########################################[100%][root@rh9root]#[root@rh9root]#rpm-ivhsamba-2.2.7a-7.9.0.i386.rpmwarning:samba-2.2.7a-7.9.0.i386.rpm:V3DSAsignature:NOKEY,keyIDdb42a60ePreparing...###########################################[100%]1:samba###########################################[100%][root@rh9root]#rpm-ivhsamba/samba-client-2.2.7a-7.9.0.i386.rpmwarning:samba-client-2.2.7a-7.9.0.i386.rpm:V3DSAsignature:NOKEY,keyIDdb42a60ePreparing...###########################################[100%]1:samba-client###########################################[100%]安装了Samba的上述公用软件包、服务器软件包和客户端软件包后就可以了,但为了配置的方便以及利用RedHatLinux9的新特性,建议再安装redhat-config-samba-1.0.4-1和samba-swat-2.2.7a-7.9.0两个软件包。这两个软件包在RedHatLinux9安装光盘里都有,其中redhat-config-samba-1.0.4-1.noarch.rpm在第1张光盘里,samba-swat-2.2.7a-7.9.0在第2张光盘里,安装方法和上面的相同。redhat-config-samba-1.0.4-1是Samba配置工具,使用它可以很方便地配置Samba。samba-swat-2.2.7a-7.9.0是用来修改samba配置文件的。8.1.4Samba服务器的启停安装并配置好Samba后,可以在Linux终端将Samba启动,也可通过终端命令行将已经启动的Samba服务关闭。若要启动Samba,必须以管理员身份登录Linux,如果是以普通用户身份登录Linux,可以在终端使用命令“su-”暂时切换到系统管理员身份。Samba服务器的启动、停止,以及当前所处状态的查询等操作,都可以通过service命令来实现。[root@rh9root]#servicesmb用法:/etc/init.d/smb{startstoprestartreloadstatuscondrestart}[root@rh9root]#servicesmbstart启动SMB服务:[确定]启动NMB服务:[确定][root@rh9root]#servicesmbstop关闭SMB服务:[确定]关闭NMB服务:[确定][root@rh9root]#servicesmbstatussmbd已停nmbd已停2.使用chkconfig命令若要系统每次启动时自动开启Samba服务,可以使用如下chconfig命令,下面的例子表示在系统进入第3和第5个级别时自动开启Samba服务。[root@rh9root]#chkconfigchkconfig版本1.3.8-版权(C)1997-2000RedHat,Inc.在GNU公共许可的条款下,本软件可以被自由发行。用法:chkconfig--list[name]chkconfig--addchkconfig--delchkconfig[--level])[root@rh9root]#chkconfig--level35smbon[root@rh9root]#chkconfig--listsmbsmb0:关闭1:关闭2:关闭3:启用4:关闭5:启用6:关闭3.使用ntsysv命令也可以使用命令ntsysv打开图形化的命令行界面来设置,如图8-2所示。使用【Tab】键可以在“服务”、【确定】和【取消】之间切换,在“服务”窗口中使用方向键【↓】和【↑】可以将光标移动到想要设置的服务,然后使用【空格键】设置或者取消需要自动启动的服务(前面有“”标志的服务将在每次开机时自动启动)。另外,按照界面下方的提示按【F1】键,可以获得有关某个服务的详细说明。图8-2设置系统服务(1)如果是在图形界面下,除了使用上面介绍的方法外,还可依次单击【主菜单】→【系统设置】→【服务器设置】→【服务】,打开图8-3所示的界面,在该图像界面下用户也可以很方便的设置选中的服务。8.1.3Samba服务器的配置文件Samba服务器的最主要的配置文件是/etc/smb/smb.conf,该文件中以“;”或“#”符号开头的都注释,该行的内容会被忽略而不生效。文件中以“#”开头的行是指说明,而以“;”开头的行则是表示目前该项停用,但可以根据今后的需要去掉前面的“;”使之生效。配置文件中的每一行都是以“设置项目=设置值”的格式来表示。配置文件smb.conf主要是由两个部分所组成:Globalsettings和ShareDefinition。前者是与Samba整体环境有关的选项,这里的设置项目适用于每个共享的目录;后者是针对不同的共享目录的个别设置。在开始修改配置文件之前,必须先了解下列的重点内容。图8-3设置系统服务(2)1.Globalsettings本部分参数主要有基本设置参数、安全设置参数、网络设置参数、文件设置参数、打印机设置参数、用户权限设置参数和日志设置参数等。1)workgroup=MYGROUP此项用来设置在Windows操作系统的“网络邻居”中将会出现的Samba服务器所属的群组,默认为MYGROUP,不区分大小写。2)serverstring=SambaServer此项用来设置Samba服务器的文字说明,以方便客户端得识别,默认为“SambaServer”。3)hostsallow=192.168.1.192.168.2.127.该项用来设置哪些主机允许访问Samba服务器,默认为全部。如果设置的项目超过一个,必须以逗号、空格或制表键来分隔开。“hostsallow=192.168.1.192.168.2.127.”表示允许来自192.168.1.、192.168.2.和127...的主机连接。另外,也可以采用其它的一些表示方法,如:“hostsallow=192.168.1.except192.168.1.5”表示允许来自192.168.1.的所有主机连接,但排除了192.168.1.5。“hostsallow=192.168.1.0/255.255.255.0”表示允许来自192.168.1.0子网的所有主机连接。“hostsallow=host1,host2”表示允许名字是host1和host2的主机连接。“hostsallow=@cqcet.cn”表示允许来自cqcet.cn网域的所有主机连接。4)printcapname=/etc/printcap此项是用来设置开机时,自动加载的打印机配置文件的名称和路径。5)loadprinters=yes表示是否允许打印机在开机时自动加载到浏览列表(BrowsingList),以支持客户端的浏览功能,即是否共享打印机。6)printing=cups此项用来指定打印系统的类型,在一般情况下并不需要修改此项。目前支持的打印系统有:bsd、sysv、plp、lprng、aix、hpux、qnx和cups。7)guestaccount=pcguestpcguest为用户名,可改去掉前边的“;”让用户以pcguest身份匿名登录,但要保证/etc/passwd中有此账号。8)logfile=/var/log/samba/%m.log此项为所有连接到Samba服务器的计算机建立独立的记录日志。其默认保存的位置是/var/log/samba/。9)maxlogsize=0此项设置每个记录日志的大小上限,单位是KB。默认值为0,表示没有大小的限制。Samba服务器会定期检查其上限,如果超过此设置值,就会重新命名此文件,并加上“.old”扩展名。10)security=user此项指定Samba服务器使用的安全等级为user级。此处可以用的安全等级有share、user、server和domain共4类。它们的区别,请参看本书稍后的内容。11)passwordserver=此项默认不使用,而且只有在上个选项设置为“security=server”时才生效。它用来指定密码验证服务器的名称,此处必须使用NETBIOS名称,默认是网络中的域控制器。也可以使用“passwordserver=”的方式自动寻找网络中可用的域控制器。12)passwordlevel=8这个选项是为了避免Samba服务器和客户端之间允许的密码最大位数不同,而产生的错误。13)usernamelevel=8这个选项是为了避免服务器和客户端之间允许账号最大位数不同而产生的错误。14)encryptpasswords=yes此项表示是否指定用户密码以加密的形式发送到Samba服务器。由于目前Windows操作系统都已经使用加密的方式来发送密码,因此建议启用该选项。否则,要改Windows注册表。15)smbpasswdfile=/etc/samba/smbpasswd该选项用来指定Samba服务器使用的密码文件路径。默认情况下,该文件并不存在,需要用户自己建立。16)sslCAcertFile=/usr/share/ssl/certs/ca-bundle.crt该选项用来指定包含所有受信任CA名称的文件。当需要配置Samba服务器支持SSL时,必须读取这个文件的内容。在默认情况下,该选项未被启用。17)unixpasswordsync=Yes当Samba服务器密码文件smbpasswd中的加密密码内容修改时,用这个选项来将Samba和UNIX中的密码进行同步。在默认情况下使用该功能,在运行密码同步之后,旧的UNIX密码将不能在用于登录系统。18)passwdprogram=/usr/bin/passwd%u此选项默认时启用,用来指定设置UNIX密码的程序,默认值是“/usr/bin/passwd%u”,其中“%u”表示用户的名称。19)passwdchat=Newpassword%n\\nRetypenewpassword%n\\npasswd:allauthenticationtokensupdatedsuccessfully设置用户把Linux密码转换为Samba服务器密码时,屏幕出现的指示字符串,以及与用户产生的交互窗口。如果使用默认值,则屏幕上显示如下字符串。Newpassword:Retypenewpassword:passwd:allauthenticationtokenssuccessfully.20)pampasswordchange=yes此项表示可以使用PAM来修改Samba客户端的密码。PAM可以允许管理员设置多种验证用户身份的方式,而不需要重新编译用于验证的程序。21)usernamemap=/etc/samba/smbusers此项指定一个配置文件,在此文件中包含客户端与服务器端上用户的对应数据。可以将同一个UNIX账号名对应到多个Samba账号,账号之间用空格间隔。如果每个客户端用户在Samba服务器上都拥有单独的Samba账号,则该项不需设置。默认情况下,该选项未启用。22)include=/etc/samba/smb.conf.%m允许Samba服务器使用其它的配置文件,可以方便管理员事先为不同的主机设计合适的配置文件。默认情况下,该选项未启用。23)obeypamrestrictions=yes该选项用来设定是否采用PAM帐号及会话管理。默认情况下,该选项未启用。24)socketoptions=TCP_NODELAYSO_RCVBUF=8192SO_SNDBUF=8192此选项在编写TCP/IP程序时相当重要,可以借此调整Samba服务器运行时的效率。可以使用“mansetsockopt”命令来得到详细的内容。25)interfaces=192.168.12.2/24192.168.13.2/24该选项可以使Samba服务器监视多个网络接口。在设置时,等号右边可以使用IP地址、网络接口名、或者是IP/子网掩码的组合。26)remoteannounce=192.168.1.255192.168.2.44此项允许NMDB(NetBIOS域名服务器)定期公布Samba服务器的IP地址和群组名称到远程的网络或主机。默认情况下,该选项未启用。27)localmaster=no此选项表示是否允许nmbd担任LocalMaster浏览器的角色,在默认的配置下并不使用此功能。如果设置值为“no”,则nmbd将不会成为子网中的LocalMaster浏览器,但是如果设置值为“yes”,也不是表示nmbd一定会是LocalMaster浏览器,而是指nmbd将会参加LocalMaster浏览器的选举。28)oslevel=33选项的设置值是用来决定LocalMaster浏览器选举时的优先次序,数值越高表示优先次序也越高,一般来说,Samba服务器都具有很高的优先权,但是在默认的配置下并不使用此功能。29)domainmaster=yes使用这个选项后,表示这台Samba服务器可担任网络中的DomainMastorBrowser,它便可以集中来自所有子网的浏览列表。但如果网络中已有域控制器在担任此工作,则不可使用这个选项,以避免发生错误,在默认的配置下并不使用此功能。30)preferredmaster=yes使用这个选项后,PreferredMaster可以在Samba服务器启动时,强制进行LocalBrowser选择,同时Samba也会享有较高的优先级,但在默认配置下并不能使用此功能。31)domainlogons=yes这个选项可以决定是否将Samba服务器当成Windows95工作站登录时的账号验证主机,默认并不使用此功能。32)logonscript=%m.bat这个选项可以设置主机登录时自动运行的批处理文件。这个文件需符合DOS兼容的换行格式,同时也需要先使用“domainlogons”选项才可生效,但在默认的配置下并不使用此功能。33)logonscript=%U.bat这个选项可以设置用户登录时,自动运行的批处理文件。这个文件需符合DOS兼容的换行格式,同时也需先使用“domainlogons”选项才可生效,但在默认的配置下并不使用此功能。34)logonpath=\\\\%L\\Profiles\\%U这个选项可以设置用户在登录Samba服务器时所使用的个人配置文件(Profile)的位置。默认值中的“%L”表示这台服务器的NETBIOS名称,而“%U”是指用户名称,但在默认的配置下并不使用此功能。35)winssupport=yes这个选项可用来决定是否将这台Samba服务器当成WINS务器,除非环境中包含多个子网,否则不建议使用此项目。另外,在同一个网络中最多可以使用一台WINS服务器,而默认并不使用此功能。36)winsserver=w.x.y.z这个选项可用来设置WINS服务器的IP地址,而这台WINS服务器必须已在DNS服务器中登记,在默认的配置下并不使用此功能。注意一点,Samba服务器可作为WINS服务器或WINS客户端,但不可同时担任这两种角色。37)winsproxy=yes这个选项可用来决定是否将此Samba服务器当成WINS代理,在默认的配置下并不使用此功能。WINS代理是指代替非WINS客户端向WINS服务器请求域名解析查询的计算机,因此在每个网段中至少要有一台WINS服务器。38)dnsproxy=no该选项可用来决定是否将此Samba服务器当成DNS代理,默认的配置下并不使用此功能。DNS代理如果发现尚未注册的NetBIOS名称,可以决定是否将由DNS得到的名称当成NetBIOS名称。39)preservecase=no该选项可以用来决定新建文件时,文件名称大小写是否与用户输入相同,或自己指定,在默认的配置下并不使用此功能。40)shortpreservecase=no该选项可用来决定新建文件名符合DOS8.3格式的文件时,文件名是否都用大写,或自己指定,在默认的配置下并不使用此功能。41)defaultcase=lower该选项可用来决定新建文件时文件名称的大小写,在默认的配置下并不使用此功能。42)casesensitive=no该选项可以决定是否将大小写的文件名称视为不同,在默认的配置下并不使用此功能。但如果在Samba中,要以中文名称来为资源命名,则此处设置的值必须是“no”。2.ShareDefinitions以下包含许多以中括号([.])开头的区域,而每个区域各代表一个共享资源,也就是在Windows客户端上启动“网上邻居”时,会出现的共享文件夹,以下将以配置文件中默认的内容来说明配置选项的功能。1)[homes]当用户请求一个共享时,服务器将在存在的共享资源段中去寻找,如果找到匹配的共享资源段,就使用这个共享资源段。如果找不到,就将请求的共享名看成是用户的用户名并在本地的password文件里找这个用户,如果用户名存在且用户提供的密码是正确的,则以这个home段克隆出一个共享提供给用户。这个新的共享的名称是用户的用户名,而不是home,如果home段里没有指定共享路径,就把该用户的主目录(homedirectory)作为共享路径。通常的共享资源段能指定的参数基本上都可以指定给[home]段。但一般情况下[home]段有如下配置就可以满足普通的应用。comment=HomeDirectories//共享目录的文字描述。browseable=no//不允许浏览主目录,即该目录内容只对有权限的用户可见。writable=yes//允许用户写入目录。validusers=%S//允许访问该目录的用户,%S表示当前登录的用户。createmode=0664//新建文件的缺省许可权限。directorymode=0775//新建目录的默认权限。maptoguest=baduser当用户输入不正确的账号和密码时,可以利用“maptoguest”选项来设置处理的方式,但在使用此选项前,必须将“security”选项设为“user”、“server”或“domain”。可用的设置值如表所示。表maptoguest的可选值设置值说明never拒绝访问,该项最安全。baduser如果输入的用户名正确,但密码错误,允许以guest身份访问。badpassword如果输入的用户名和密码都错误,仍然允许以guest身份访问。注意,如果在[home]段里加了“guessaccess=ok”,所有的用户都可以不要密码就能访问所有的主目录!2)[netlogon]comment=NetworkLogonService//共享目录的文字描述。path=/usr/local/samba/lib/netlogon//共享目录的本机路径。guestok=yes//连接时不需要输入密码。writable=no//不允许写入共享目录。sharemodes=no//是否允许目录中的文件在不同的用户之间共享。3)[Profiles]path=/usr/local/samba/profiles//共享目录的本机路径。browseable=no//是否允许浏览目录。guestok=yes//连接时是否需要密码。4)[printers]该段用于提供打印服务。如果定义了[printers]这个段,用户就可以连接在/etc/printcap文件里指定的打印机。当一个连接请求到来时,smbd去查看配置文件smb.conf里已有的段,如果和请求匹配就用那个段,如果找不到匹配的段,但[home]段存在,就用[home]段。否则请求的共享名就当作是个打印机共享名,然后去寻找适合的printcap文件,看看请求的共享名是不是个有效的打印共享名,如果是就克隆出一个新的打印机共享提供给客户。comment=AllPrinters//共享打印机的文字描述。path=/var/spool/samba//假脱机目录所在的位置。browseable=no//不允许浏览与打印服务相关的假脱机目录。public=yes//所有用户可以访问共享资源。guestok=no//连接共享资源时不需要输入密码。writable=no//不允许写入与打印服务相关的假脱机目录。printable=yes//实现打印共享。注意:实现打印共享的配置段中,必须是“printable=yes”,如果指定为其它,则服务器将拒绝加载配置文件。通常,公共打印机的打印队列路径应该是任何人都有写入的权限。另外,public=yesorno都不是针对限定用户的,而是针对未限定的用户。设置成yes就是所有的用户都能够访问,no就是仅限于限定的用户能够访问。5)[tmp]comment=Temporaryfilespace//共享资源的文字描述。path=/tmp//共享资源的本机路径。readonly=no//不只是允许读取。public=yes//所有用户都可以访问共享资源。6)[public]comment=PublicStuff//共享资源的文字描述。path=/home/samba//共享资源的本机路径。public=yes//所有用户都可以访问共享资源。writable=yes//目录允许写入。printable=no//不允许打印共享。writelist=@staff//拥有写入权限的用户或群组(以@开头表示)。另外,要让Samba服务器使用主机名能够正确的访问到相关的其它主机,如提供客户端身份验证的另一台服务器,还必须修改/etc/samba/lmhost文件。该配置文件的唯一功能是提供主机名与IP地址的对应关系,应该将网络中所有和Samba服务器有关的主机名与IP地址的对应关系都记录到里面,每条记录占用一行。默认情况下,该文件的内容只有条记录“127.0.0.1localhost”。8.1.4Samba服务器的安全等级smb.conf配置文件的“security”选项,可以设置Samba服务器的安全性等级,直接影响客户端访问服务器的方式,是配置中最重要的项目之一。在Samba服务器中,共分为4种安全级别,分别如下:1.share安全性等级当客户端连接到具有Share安全性等级的Samba服务器时,不需要输入账号和密码等数据,就可访问主机上的共享资源,这种方式是最方便的连接方式,但是却无法保障数据的安全性。其实在此安全性等级中,用户并非不需要任何的账号和密码就可登录,而是smbd会自动提供一个有效的UNIX账号来代表客户端身份,这个原理就和Web服务器及FTP服务器上的“匿名”(anonymous)访问相同。为了提供客户端有效的UNIX账号,smbd会自动决定最适合客户端的账号,并将这些可用的账号列成表,来满足不同用户的需求。2.user安全性等级在Samba2.2中默认的安全性等级是“user”,它表示用户在访问服务器的资源前,必须先用有效的Samba账号和密码进行登录,如图8-4所示。在服务器尚未成功验证客户端的身份前,可用的资源名称列表并不会发送到客户端上。在此模式中,通常使用加密的密码来提高验证数据传送的安全性。图8-4Samba服务器登录应该特别注意的时,Samba服务器与Linux操作系统使用不同的密码文件,所以无法以Linux操作系统上的账号密码数据登录Samba服务器。所以,应该自己建立原来在“smbpasswdfile”选项中,指定的/etc/samba/smbpasswd文件。建立Samba密码文件并不需要手动的输入数据,只要先以管理员的账号登录Linux系统,然后利用名为“mksmbpasswd.sh”的Script程序,来读取Linux操作系统使用的密码文件(/ete/passwd),最后再转换成Samba密码文件即可。建立Samba密码文件的方法如下:[root@rh9root]#cat/etc/passwdmksmbpasswd.sh>/etc/samba/smbpasswd[root@rh9root]#ls-l/etc/samba/smbpasswd-rw-r--r--1rootroot39787月3000:11/etc/samba/smbpasswd在Samba密码文件建立后,接下来的工作就是利用smbpasswd命令来设置Samba密码文件中每个Samba用户对应的密码。因此,该命令可以将已经存在的Linux系统登录账号转变为Samba用户帐号,这里以用户root为例。[root@rh9root]#smbpasswdroot//生成root的Samba服务器登录密码。NewSMBpassword:RetypenewSMBpassword:Passwordchangedforuserroot.Passwordchangedforuserroot.如果是添加新的用户,这时必须首先确保要添加的用户名在/etc/passwd文件中存在,否则将有“Failedtofindentryforuserxxxx”的提示信息出现。因此,要先使用useradd命令添加该账号为Linux系统登录账号,然后再用smbpasswd命令将其设置为Samba账号。smbpasswd常用的命令格式是:“smbpasswd[选项][用户名]”。其中,常用的选项及其含义如表所示。从表可知,该命令还可以对Samba账号进行管理和维护。表7.17smbpasswd的主要选项及作用选项作用-a添加Samba用户帐号。-x删除Samba用户帐号。-d关闭、停用Samba用户帐号。-e开放Samba用户帐户。-h显示该命令的帮助。[root@rh9root]#smbpasswdlihh//不存在的Linux系统登录账号lihh。NewSMBpassword:RetypenewSMBpassword:build_sam_account:smbpasswddatabaseiscorrupt!usernamelihhnotinunixpasswddatabase!//用户名lihh在密码文件/etc/passwd中不存在。Failedtofindentryforuserlihh.Failedtomodifypasswordentryforuserlihh//设置lihh的Samba登录密码失败。[root@rh9root]#useraddlihh//创建Linux系统登录账号。[root@rh9root]#smbpasswd-alihhNewSMBpassword:RetypenewSMBpassword:Addeduserlihh.[root@rh9root]#smbpasswd-dlihhDisableduserlihh.[root@rh9root]#smbpasswd-elihhEnableduserlihh.[root@rh9root]#smbpasswd-xlihhDeleteduserlihh.3.server安全性等级如果使用,用户在访问服务器资源前,同样也须先用有效的账号和密码进行登录,但是客户端身份的验证会由另一台服务器负责。因此,在设置server安全性等级时,必须同时指定“passwordserver”选项。如果验证失败,服务器会自动将安全性等级降为“user”,但如果使用加密密码,那Samba服务器将无法反向检查原有的UNIX密码文件,所以必须指定另一个有效的smbpasswd文件,来进行客户端的身份验证。因此,应该设置smb.conf文件中的以下选项。security=server//设置SAMBA服务器使用server安全性等级。passwordserver=//设置Samba服务器的netbios计算机名。smbpasswdfile=/etc/samba/smbpasswd//SMB服务器使用的密码文件路径。4.domain安全性等级如果目前的网络结构为网域(Domain)而不是工作组(Workgroup),这时可以使用domain安全性等级,以将Samba服务器加入现有的网域中。也就是说,不担任账号与密码的验证工作,而是由网络中的域控制器(DomainController,DC)统一处理。要将城Samba服务器加入现有的网域,可以使用以下的指令格式:[root@rh9root]#smbpasswd-jSamba主机名-rDC在运行以上的指令后,还需要修改smb.conf文件中[global]部分的以下配置选项。workgroup=domain_name//指定Samba服务器要加入的网域。security=domain//设置Samba服务器使用的安全性等级为domain。passwordserver=DC//指定进行身份验证的网域控制器名。8.1.5Samba服务器的配置下面以实例的方法,说明Samba服务器的配置方法。在某局域网中,当前Linux主机的NETBIOS名称为rh9,主机所在的工作组为WORKGROUP,现在想在该Linux主机上创建目录/var/work,并使用Samba服务器进行共享,使得客户机上所有用户都可以通过Samba服务匿名访问该目录,无须输入任何账号与口令,并且对该目录拥有可读可写的权限。配置过程如下:1.创建目录共享目录执行命令“rmdir-m777/var/work”,创建目录/mnt/work并设置其权限对所有用户都是可读、可写、可执行。2.编辑配置文件使用文本编辑程序(如vi)修改配置文件/etc/samba/smb.conf,确保里面的相关设置设定为如下内容,其它各项使用默认设定值即可。[global]//设置全局配置。workgroup=MYGROUP//设定工作组名称。serverstring=SambaServer//对该主机的注释。security=share//必须设定为share级,否则无法匿名登录。netbiosname=rh9//设定在网络中的主机名[work]//设置共享目录。comment=Apubliclyaccessibledirectory!//共享目录的注释。path=/var/work//共享资源的路径。writable=yes//允许写入目录。guestok=yes//连接时不需要密码。public=yes//所有未指定用户都可以访问。3.语法查错使用Samba安装后包含的工具——testparm,来测试smb.conf配置文件内的语法是否正确。如果设置时的语法都正确,那在运行testparm程序后,系统会出现以下画面。[root@rh9root]#testparmLoadsmbconfigfilesfrom/etc/samba/smb.confProcessingsection"[homes]"Processingsection"[printers]"Processingsection"[work]"LoadedservicesfileOK.Pressentertoseeadumpofyourservicedefinitions在出现以上信息后,如果想查看详细的smb.conf配置文件内容,可以按Enter键,系统就会出现所有的选项设置。测试的结果正常,也不保证Samba服务器就一定可以正常运行,因为这个程序仅针对语法来进行测试。4.重新启动Samba服务器执行“servicesmbrestart”命令重新启动Samba服务器进程,使得修改后的配置文件生效。5.访问Samba服务器在Windows客户端上,双击【我的电脑】打开文件浏览器,然后在地址栏中输入“\\\\Samba服务器名称或IP”,回车后在窗口中将看到Samba服务器上的共享资源,如图8-5所示。双击共享目录work的图标,不用输入用户名和密码即可进入共享目录,进行权限许可范围内的各种操作。图8-5从Windows访问Samba服务器在Linux客户端上,双击用户主目录图标,打开文件浏览器,然后在地址栏中输入“smb://Samba服务器名称或IP”,在窗口中将看到Samba服务器上的共享资源,如图8-6所示。双击共享目录work的图标,不用输入用户名和密码即可进入共享目录,进行权限范围内的相关操作。图8-6从Linux访问Samba服务器8.2.7图形界面下配置Samba服务器对于初学者用户,也可以在图形界面下配置Samba服务器。图形界面的配置虽然简单、直观,但对于某些高级选项,图形界面下的配置工具并不能够地很好实现。因此,要想对Samba服务进行精细化的管理,还是要采取直接编辑配置文件的方法实现。依次单击【主菜单】→【系统设置】→【服务器设置】→【Samba服务器】菜单,或者直接执行“redhat-config-Samba”命令,系统会自动弹出如图8-7所示的“Samba服务器配置”窗口。图8-7Samba服务器配置主窗口1.配置基本和安全性选项Samba服务器的第一步是配置服务器的基本选型和安全选项。在图8-7所示界面中,选择“首选项”→“服务器设置”,打开“服务器设置”窗口,选择“基本”选项卡,如图8-8所示。图8-8“基本”选项卡图8-9“安全性”选项卡在“基本”选项卡上,指定计算机所属的工作组及计算机的简短描述。它们分别与配置文件smb.conf中的workgroup和serverstring选项相对应。在“安全性”选项卡中,可以分别对验证模式、验证服务器、是否加密口令、以及来宾账号进行设置,如图8-9所示。它们分别与smb.conf中的security、passwordserver、encryptpasswords、guestaccount选项相对应。2.管理Samba用户Samba服务器配置工具要求在添加Samba用户前,在充当Samba服务器的RedHatLinux9系统上必须存在一个活跃的用户账号。Samba用户和这个Linux用户账号相关联。要添加Samba用户,可以在图8-7中选择“首选项”→“Samba用户”,然后单击【添加用户】按钮,弹出图8-10所示的“创建新Samba用户”对话框。在“创建新的Samba用户”窗口中,从本地系统上的现存用户列表中选择“UNIX用户名”用来将其转换为Samba用户,如果用户想从Windows机器上登录并且使用一个不同的名字,就需要在“Windows用户名”字段中指定Windows用户名。还需要为Samba用户配置一个Samba口令,并再输入一次来确认这个口令。即便选择了为samba使用加密口令,仍建议为所有用户设置的Samba口令不同于他们的Linux系统登录口令。图8-10创建新Samba用户另外,“服务器设置”首选项“安全”选项卡上的“验证模式”必须被设置为“用户”,才能使这里的设置在访问Samba服务器时有效。要编辑某个现存Samba用户,可以从Samba用户列表中将其选中,然后单击【编辑用户】按钮。要删除某个现存的Samba用户,先选择这个用户,然后单击【删除用户】按钮。需要注意的是删除Samba用户并不会删除与其相关的Linux用户。3.添加共享目录要添加共享,可在图8-7所示界面中单击“添加共享”按钮,打开“创建samba共享”窗口,在“基本”选项卡中配置以下选项,如图8-11所示。图8-11“基本”选项卡图8-12“访问”选项卡1)“目录”:通过Samba服务器共享的目录。这个目录必须存在,这里配置为“/home/lihh/share”。2)“描述”:是对共享资源的简短描述,可以设置也可以不设置。3)在“描述”下面是用户访问该共享的基本权限,设置用户能读写共享目录中的文件还是仅仅只能读取。在“访问”选项卡上,设置仅允许指定的用户访问共享还是允许所有的用户访问。如果选择“只允许指定用户的访问”,就从用户列表中选定用户,如图8-12所示。“基本”选项卡和“访问”选项卡设置完毕后,单击【确定】按钮后,共享就被添加。成功添加共享目录后的Samba服务器配置主窗口如图8-13所示。选中窗口中某一个共享项,还可以将其删除或修改其属性。修改后的设置,要重启Samba服务后才能生效。图8-13添加共享后的Samba服务器配置窗口',)


  • 编号:1700774123
  • 分类:其他文档
  • 软件: wps,office word
  • 大小:17页
  • 格式:docx
  • 风格:商务
  • PPT页数:579584 KB
  • 标签:

广告位推荐

相关其他文档更多>