Samba服务及其配置.ppt_第1页
Samba服务及其配置.ppt_第2页
Samba服务及其配置.ppt_第3页
Samba服务及其配置.ppt_第4页
Samba服务及其配置.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第10章 Samba服务及其配置,XX大学XX系 XXX 2020年8月15日,本章提要,samba简介 Samba服务器的配置 Samba服务的访问 网络的目标是让用户更方便地共享信息。如果网络中既有Windows机器又有Linux机器,以及其他Unix类的机器,如要相互共享资源,使用Samba服务是很好的选择。Samba会允许文件和打印机被网络中的所有系统共享。Samba使用 SMB(Server Message Block)协议通过网络连接共享文件和打印机,支持该协议的操作系统包括 Microsoft Windows、OS/2、Linux和Unix。本章主要介绍Samba的配置和使用,以

2、及相关的安全性问题。,Samba简介,SMB通信协议是Microsoft和Intel在1987年制定的协议,主要是作为Microsoft网络的通讯协议。通过“NetBIOS over TCP/IP”使得Samba不但能在局域网内共享资源,而且能与Internet上的主机共享资源,这是因为Internet上的主机所使用的通讯协议就是TCP/IP。SMB工作在OSI参考模型的上面三层,是会话层(Session Layer)、表示层(Presentation Layer)及小部分应用层 (Application Layer)的协议。SMB使用了NetBIOS的应用程序接口(Application P

3、rogram Interface,简称API)。另外,它是一个开放性的协议,允许协议扩展使得它变得更大而且复杂,大约有65个最上层的作业,而每个作业都超过了120个函数。最近微软又把 SMB 改名为 CIFS(Common Internet File System,公共Internet文件系统),并且加入了许多新的特色,而Samba亦支持NT Lan Manager 0.12等 SMB 的延伸协议,这使得Samba具有管理NT网域的能力。,表10-1 Samba服务器的组件,Samba的功能,通过使用Samba,可以实现如下功能: 提供Windows NT风格的文件和打印机共享。当Window

4、s 98、Windows 2000/XP、Windows 2003及Vista等共享Linux操作系统的资源时,外表看起来和共享Windows的资源没有区别。 解析NetBIOS名字。在Windows网络中,为了能够利用网上资源,同时自己的资源也能被别人所利用,各个主机都定期地向网上广播自己的身份信息。而负责收集这些信息,为别的主机提供检索情报的服务器就被称为浏览服务器。Samba可以有效地完成这项功能。在跨越网关的时候Samba还可以作WINS服务器使用。 提供SMB客户功能。利用Samba提供的smbclient程序可以从Linux下以类似于 FTP的方式访问Windows的资源。 备份P

5、C上的资源 利用一个叫smbtar的Shell 脚本,可以使用 tar 格式备份和恢复一台远程 Windows上的共享文件。 提供一个命令行工具,在其上可以有限制地支持NT的某些管理功能。 支持Samba管理工具SWAT(Samba Web Administration Tool)。 支持加密传输SSL(Secure Socket Layer)。 SAMBA服务器的安装和使用,SAMBA服务器的安装,在Fedora 8安装时,可以选择安装SAMBA服务器,如果不确定系统是否安装了SAMBA服务器,可以使用以下方法判断: rootCandy rootrpm qa samba samba-3.0.

6、26a-6.fc8 如上显示表明已经安装。 如果在Fedora 8安装时没有选择SAMBA服务器,那么需要先找出Fedora 8安装光盘DVD中保存在/Packages目录下以samba开头的RPM包文件,然后输入以下指令,系统即会自动完成安装SAMBA服务器的任务: rootCandy root#rpm ivh samba-3.0.26a-6.fc8.i386.rpm rootCandy root#rpm ivh samba-common-3.0.26a-6.fc8.i386.rpm rootCandy root#rpm ivh samba-client-3.0.26a-6.fc8.i386

7、.rpm,SAMBA服务器的启动和退出,可以以多种方式启动Samba服务器。 通过命令方式启动Samba rootCandy root# /etc/rc.d/init.d/smb start 或 rootCandy root# service smb start 屏幕显示如图10-1所示。,图10-1 Samba服务器的启动,在X Window 下启动SAMBA,选择“系统”|“管理”|“服务”,打开“服务配置”对话框,选中“smb”服务,然后单击工具栏上的“启动”按钮。如图10-2所示:,图10-2 在图形方式下启动Samba服务,在系统启动时自动启动Samba,通过命令chkconfig可

8、设定在系统启动时自动启动Samba: rootCandy root#chkconfig -level 345 smb on 要停止Samba服务器,可以使用以下命令: rootCandy root#/etc/rc.d/init.d/smb stop 或者 rootCandy root#service smb stop,Samba服务器的配置,在启动Samba服务之前,首先需要完成Samba服务器的配置,本节将介绍Samba服务的配置。 图形界面下配置Samba服务器 可以使用图形界面的配置工具进行配置,进入Linux的GUI界面(如Gnome)后使用命令system-config-samba进

9、入配置界面,如图10-3所示。在图形界面下可以配置常见的Samba功能。,图10-3 Samba图形配置界面,图形界面下配置Samba服务器,1配置 Samba 服务器的第一步是配置服务器的基本设置和安全选项。在图10-3所示的界面中,选择 “首选项”|“服务器设置”。”基本”选项卡如图 10-4所示。在“基本”选项卡上,指定计算机所属的工作组以及计算机的简短描述。它们与下文中文本界面配置文件smb.conf 中的 workgroup 和 server string选项相对应。,图 10-4 配置基本服务器设置,图形界面下配置Samba服务器,单击“安全性”选项卡,如图10-5所示。该包含以下

10、选项:,图 10-5 配置安全服务器设置,管理 Samba 用户,Samba 服务器配置工具要求在添加 Samba 用户之前,在充当 Samba 服务器的Fedora 8系统上必须存在一个活跃的现存用户账号。Samba 用户和这个现存的Linux用户账号相关联。 要添加 Samba 用户,选择“首选项”|“Samba 用户”,然后单击“添加用户”按钮。在“创建新Samba用户”窗口中的本地系统上的现存用户列表中选择“Unix 用户名”。如果用户在 Windows 机器上有一个不同的用户名,并将从 Windows 机器上登录入 Samba 服务器,请在“Windows 用户名”字段中指定 Win

11、dows 用户名。“服务器设置”首选项的“安全”选项卡上的”验证模式” 必须被设置为“用户”才能使这个选项生效。,管理 Samba 用户(续),还需要为 Samba 用户配置一个“Samba 口令”,并再键入一次来确认这个口令。即便选择了为 Samba使用加密口令,仍建议为所有用户设置的Samba口令不同于他们的 Linux系统口令。 要编辑某个现存用户,可以从列表中选择它,然后单击“编辑用户”。要删除某个现存的 Samba 用户,选择这个用户,然后单击“删除用户”按钮。删除 Samba 用户不会删除相关的Linux用户账号。如图10-6所示,选择UNIX用户名为“Bob”,并设置相应Samb

12、a密码。单击了“确定”按钮后,用户就会被立即修改。,图 10-6 管理 Samba 用户,添加共享,要添加共享,在图10-3所示的界面中单击“添加共享”按钮。“基本”选项卡配置以下选项: “目录” 通过 Samba 共享的目录。这个目录必须存在,这里配置为/home/Bob/myshare。 “共享名” 共享的名称,通过该名称访问共享目录。 “描述” 对共享的简短描述。 在描述下面是用户访问该共享的基本权限。 设置用户是应该能够读写共享目录中的文件还是仅仅只能读取。如图10-7所示。,图10-7 添加共享,文本界面下配置Samba服务器,Linux系统的特点在于其强大的命令管理功能,系统管理员

13、更多的是使用文本界面下的配置工具进行配置。因此,以下主要介绍命令方式下Samba服务的配置。要配置Samba服务器,主要需要配置smb.conf文件。 /etc/samba/smb.conf是Samba中最重要的一个配置文件,类似Windows的*.ini文件,通过他可以配置服务器的权限,共享目录、打印机和机器所属的工作组等各种选项,它主要由两个部分组成:Global Settings 和 Share Definitions。前者的设置都是与Samba整体环境有关的选项,这里的设置是全局设置,适合于每个共享目录;而后者是共享目录的个别设置。,smb.conf的语法说明,a文件分为几个部分,每一

14、部分都包括几个参数,用来定义samba共享及其详细信息。 b文件的每一段用一个方括号括起来,不区分大小写,如global、home等。 c每一段用“名称值”的格式来设置参数,如netbios nameCandy。 d行首加“#”、或“;”表示该行为注释行。 下面先用一个实际的例子来说明smb.conf的配置: 例, /etc/samba/smb.conf配置文件 global workgroup = MYGROUP security = user homes guest ok = yes path = /tmp_share read only = yes,测试smb.conf,一般设置好/et

15、c/samba/smb.conf之后,需要用testparm命令检查文件中是否有错误。如果设置语法一切正确,则在执行testparm后系统出现的画面如图10-9所示。,图10-9 testparm命令运行情况,global基本参数,global部分是smb.conf配置文件中最重要的部分,它是Samba的整体环境设置部分,本部分参数主要有基本设置参数、安全设置参数、网络设置参数、文件设置参数、打印机设置参数、用户权限设置参数和日志设置参数等。 Workgroup = MYGROUP 设定Samba服务器要加入的工作组的名称,也即出现在Windows操作系统中“网络邻居”里面的名称。 Netbi

16、os name = Candy 设定本机在网络邻居中显示的计算机名。 Server string = Samba Server 设定Samba服务器的文字说明,默认为“Samba Server”。 Hosts allow = 192.168.1. 192.168.2. 127. 此功能在默认状态下不启用,它用于设定局域网中哪些主机允许存取Samba服务器。 Printcap name = /etc/samba/printcap 打印机配置文件。 Load printers = yes 表示是否要共享打印机。,global基本参数(续),Printing = cups 一般标准打印机类型不需要设

17、置此项目。 Guest account = nobody 此项目功能在默认状态下不启用,如果希望建立一个客户帐号,则选择该项,同时需要在/etc/passwd文件中定义该帐号,若未指定则Samba服务器会以“nobody”作为客户帐号。 Log file = /var/log/samba/%m.log 指定了log日志文件的存放地址。 Security = share 指定Samba服务器使用的安全等级,默认值为“user”,此处可用的等级有:share、user、server和domain四种。 Encrypt passwords = yes 设定是否使用加密方式传送口令,默认为“yes”,

18、因为目前Windows操作系统均使用加密方式传送秘密,因此建议使用此设置值。,global基本参数(续),Smb passwd file = /etc/samba/smbpasswd 设定Samba服务器秘密文件的位置,若无此文件,则需自行建立。 Interfaces = /24 /24 此项设定可以使用Samba服务器同时监听多个网络接口,若主机上有多张网卡,应该设置此项目,默认为关闭状态。 Local master = no 设置是否让Samba服务器担任网络的主浏览服务器,默认为“no”。 Wins support = yes 设置是否支持

19、WINS服务。 Wins server = w.x.y.z 设置WINS服务器的地址(SAMBA服务器可作为WINS客户机或WINS服务器)。,共享服务段基本参数,/etc/samba/smb.conf中包含多个以中括号( )开头的共享资源段,每一个共享资源段主要由提供访问的路径和访问权限组成,共享资源可以是文件资源,也可以是打印资源。而“ ”中的名称也就是在Windows系统中“网上邻居”中出现的名称。 一般来说共享资源段可以供guest级帐号访问,使用guest级帐号访问不需要用户名和秘密码,而guest级帐号的权限是在Linux中由系统管理员分配的。共享资源段也可以提供给普通用户访问,而

20、普通用户对共享资源段的访问权限是基于Linux系统设定的对资源的访问权限,不能超出此权限。,共享服务段基本参数(续),下面介绍几个主要的共享资源段的实例: homes 用户个人主目录段 Comment = Home Directories 共享目录的描述。 Browseable = no 是否允许其他用户浏览个人用户主目录,默认为禁止。 Path = /home 个人用户主目录的路径。 Writeable = yes 是否允许个人主目录写操作,默认为yes。 Valid users = %S 允许登录的用户,%S表示目前登录的用户。 Guest ok = yes 表示所有用户均可以不需要密码登

21、录个人用户主目录。 Create mode = 0664 对于新增文件的默认权限。,共享服务段基本参数(续),Directory mode = 0775 对于新增目录的默认权限。 printer打印机配置段 Comment = All Printers 打印机描述。 Path = /var/spool/samba 打印机队列路径。 Browseable = no 是否允许浏览打印机的暂存内容,一般不需要。 Guest ok = no 连接打印机时是否不需要密码。 Writable = no 是否允许写入此目录。 Printable = yes 是否允许用户打印。,共享服务段基本参数(续), p

22、ublic “public”目录设置段 Comment = Public Stuff 目录描述。 Path = /pub 实际共享路径。 Public = yes 是否允许目录共享。 Writable = yes 是否允许写目录。 Guest ok = yes 是否允许guest帐号访问。 Printable = yes 是否允许打印目录内容。 ;write list =stuff 拥有读取及写入权限的用户或组(以“”开头表示)。,Windows客户端访问Samba服务器,Linux系统中使用Samba最主要的原因就是便于Windows用户访问Linux服务器。如果希望局域网中用户user1能

23、够访问Linux上名称为/shrdir的目录(或分区),可以按照如下步骤实现: 1在global中security参数设为user或share。 2在Linux系统中创建用户user1,并设置它的口令与Windows系统中的完全一样。例如,如果在Windows系统中user1的口令为“123”,则在Linux中user1的口令也同样为“123”(不一样则在连接Samba服务器时会被再次要求输入口令)。此外,还需要在/etc/group中创建一个shrdir的用户组,使用户user1成为shrdir中唯一的成员。命令序列如下: rootCandy root#useradd user1 rootC

24、andy root#passwd user1 rootCandy root#groupadd shrdir rootCandy root#usermod g shrdir user1,Windows客户端访问Samba服务器(续),3在smb.conf中添加如下内容: shrdir Comment = Shrdir Directory Path = /shrdir Public = no Writeable = yes Write list = shrdir Printable = no 在shrdir的配置中,确定/shrdir不能被公开访问,并且仅允许shrdir用户组对/shrdir进行

25、写操作。按照上面的配置完成后,通过testparm测试没语法错误后就可以重启Samba服务。,Windows客户端访问Samba服务器(续),按照上面的步骤进行配置后,用户user1就可以从Windows中的“网络邻居”访问Linux上的/shrdir了。如图10-10所示。 注:若要创建一个只读的samba服务器,则可以将Writeable参数设为no,并且删除Write list参数。,图10-10 在Windows“网上邻居”中访问Linux资源,Linux客户访问Windows的共享资源或Samba服务器,如果要让Linux客户访问Windows 系统中的共享目录、或Linux通过Sa

26、mba服务器共享的目录,可以通过smbclient或smbmount实现。首先应确定Linux上安装了smb-client软件包。可以使用下面的方法测试: rootCandy root#rpm qa samba-client samba-client-3.0.26a-6.fc8 smbclient是一个基本的访问Windows 共享目录或Samba共享目录的软件,语法格式如下: smbclient -U username 其中servicename是要连接的共享资源名称,使用诸如“/server/service”的格式(其中server是远程计算机的名字,service是共享目录的名字)。Us

27、ername是Windows系统中的用户名。例如,假设Windows机器名是WINTEST,共享目录是PUBLIC,允许访问Windows的用户名是Alice。那么可以这样执行smbclient: #smbclient /WINTEST/PUBLIC U Alice,Linux客户访问Windows的共享资源或Samba服务器(续),smbclient常用命令有: cd 目录名 改变当前目录 del 文件名 删除文件 dir 显示目录 get 文件名 从服务器下载文件并且存放到本地目录 lcd 目录名 改变本地目录 mget 一组文件 取得成组文件 put 文件名 上传文件 recurse 激

28、活递归模式,在这个模式下可以连子目录一起操作 mput 一组文件 成组上载文件 rmdir 删除目录 mkdir 建立目录,打印机共享,Samba中涉及打印共享的参数主要有以下几个 1)在global字段中涉及共享打印机的主要字段 printcap name =/etc/printercap 这是指定打印机配置文件的位置。打印守护进程读取printcap文件中的配置信息,监视打印机的工作情况。 load printers 指定是否要加载打印机(使打印机可以共享)。默认值为yes。如果用户想要自动载入打印机列表,而不是个别地安装,则必须在此指定以上两项。 printing =cups 指定打印系

29、统类型。只有在打印系统不是标准的情况下,才必须指定,否则不必指定。指定打印系统类型将影响到smb.conf文件中与打印机相关的命令(如print,lpq,lppause,lpresune)的执行方式。默认的打印系统类型为bsd,其他的类型还有sysv,plp,lprng,hpux,qnx,cups。,设置smb.conf的打印共享配置,global /按上文将有关共享打印机的几个主要配置参数写到此处 printers/这部分用于配置打印机共享,所有用户都可以共享打印机。 comment = All Printers /注释文字 path = /var/spool/samba /设置打印机队列的

30、位置,用户必须自行创建该目录,存放打印的临时文件 browseable = no /不允许浏览共享打印机 #Set public = yes to allow user guest account to print guest ok = no /必须用帐号和密码才可以访问共享打印机 writable = no /共享打印机,writable必须设置为no printable = yes /允许用户更改打印机队列中的文件 fredsprn /该共享的打印机只允许fred私人使用 comment = Freds Printer valid users = fred path = /home/fred /打印机队列是fred的用户目录,要主义fred必须有权

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论