资源描述
毕业设计(论文) 题 目 Linux操作系统下Samba 服务器配置与管理 姓名与学号 徐兵(09311211222) 指 导 教 师 雷家星 所在系及专业 航空港管理学院 2012年 01 月 08 日1、 毕业设计(论文)任务书一、题目: Linux环境下Samba服务器设置 二、内容和要求(包括需达到的技术指标、规定阅读的文献和应完成的电路设计图等) Samba服务器的安装和初始设置Samba服务器介绍,应用前景和发展历程。Samba服务器的安装条件和相关网络知识介绍。Samba服务器的升级更新。Samba服务器的基本配置Samba服务器的文件配置。Samba服务器安全和口令加密知识 Samba的文件共享和GUI管理工具以及自动化管理知识三、起讫日期及进度安排 起讫日期: 2012 年 1 月 10 日 至 2012 年 4 月 1 日 进度安排:第一阶段完成文献阅读和开题报告第二阶段进一步搜集资料,确定毕业设计(论文)总体框架第三阶段初稿完成第四阶段修改第五阶段答辩指导教师 年 月 日 四、教研室审查意见教研室主任 年 月 日文献阅读与开题报告考核一指导教师对对文献阅读与开题报告、外文文献翻译的评语:1. Linux服务器配置与管理指南伍云辉 编著 清华大学出版社 2. Linux服务器架设指南 林天峰 编著 清华大学出版社3. LAMP兄弟连李明老师讲Linux-Samba服务器配置视频教程 指导教师(签名): 20 年 月 日二答辩评语及成绩: 答辩小组负责人(签名) 20 年 月 日目录 绪论.1. Samba服务器简介a) 什么是Samba服务器.2b) Samba服务器发展历程.42 .Samba服务器功能和应用范围 . a) Samba协议导论.5b) Samba服务器的获取以及版本介绍.7c) Samba服务器应用范围.93. Windows网络介绍a) NetBIOS概述.12b) Windows网络模型介绍及Windows域.144. Samba服务器相关程序a) Samba服务器相关启动程序介绍.17b) Samba服务器安装及测试.18c) Samba服务器自启动和网络连接测试.195. Samba服务器配置与管理.a) 配置Smb.conf文件.21b) 启动设置及验证Smbd和nmbd.22c) Samba服务器中用户和用户组管理.246. Samba文件共享设置.a) 配置文件共享.25b) 限制Samba共享与权限访问.26c) Samba中Smb.conf的高级参数设置.28d) Samba安全和相关属性.29e) Samba服务器文件共享常见故障排除.317. Samba 打印机共享a) 从Windows访问打印机.32b) 添加打印机向导安装打印机.32c) 配置基本打印机共享属性.33d) 打印机队列任务管理.35e) 打印机共享常见故障排除.378.Samba与密码管理a)Samba协议与密码.38b) 配置SmbpaSSwd文件并进行鉴定.399.总结.致谢, 参考文献.41第一章:Samba服务器介绍一:什么是Samba? 什么是Samba ,首先声明,在这个别样论文中我所要讲述的不是来自巴西 热情奔放的Samba舞蹈,况且我也没有这个水平,呵呵,玩笑话,好,步入正题今天所要讲述的毕业论文的题目是Samba服务器,Samba服务器是在Linux和UNIX系统上实现SMB协议的一个免费软件系统,由服务器及客户端程序构成。首先,Samba,是种用来让unix系列的操作系统与微软的Windows操作系统SMB/CIFS(Server MeSSage Block/Common Internet File SyStem)网络协定做连结的自由软件。目前的版本是V4,不仅可存取及分享SMB的资料夹及打印机,本身还可以整合入Windows Server的网域,扮演为网域控制站(Domain Controller)以及加入Active Directory成员。简而言之,此软件在Windows与UNIX系列OS之间搭起一座桥梁,让两者的资源可互通有无,实现资源共享。其次,Samba是一个工具套件,在Unix上实现SMB(Server MeSSage Block)协议,或者称之为NETBIOS/LanManager协议。SMB协议通常是被Windows系列用来实现磁盘和打印机共享。需要注意的是,NetBIOS是基于以太网广播机制的,没有透明网桥是不能跨越网段的,我个人认为Samba是把 SMB绑定到TCP/IP上实现的,Samba只在IP子网内广播,所以在win95上与Samba通讯既要装 NetBEUI协议,也要装Tcp/Ip协议。安德鲁,垂鸠Andrew Tridgell)于1992年在澳洲国立大学(ANU)开发了第一版的Samba Unix软件。这是第一款免费版本的,在Linux(UNIX)环境下运行的自由软件。Samba先后经历了很多的版本,当然也有很多的版本确实出现过大大小小的问题,但是有这样的一段话:如果你的Samba出问题了,那么先不要在社区论坛上问为什么,先去更新到最新的Samba服务器之后再看看问题还存在的话再回来问吧。(出处不明)由此可见这款免费开源的Samba软件有着多么顽强的生命活力。到今年为止,Samba先后经历了20年的改变和完善,具体看Samba的官网摘录。Samba是通过网络共享打印机和文件等资源的一套工具。这种定义是太过于简单了些,但Samba的确是为了使大家的生活更容易而设计的。Samba使用SMB(服务器报文块,Server MeSSage B10ck)协议,该协议得到了MicroSoft和IBM的支持。它在TCPIP网络的Windows客户机和Unix服务器之间交换低层数据。Samba有四个很诱人的特性:Samba遵守与MicroSoft和IBM的操作系统相同的SMB协议,从DOS 30开始MicroSoft和IBM就使用标准的SMB协议。这意味着,几乎所有的Windows机器不需安装额外的客户端软件就可理解Samba服务。Samba可运行在各种平台上,包括Unix、Open-VM、SOS2、 Amiga、DOS和NetWare。这意味着在服务器上使用一个程序就可以为各种PC提供文件和打印机共享。Samba是自由软件。现在有一些复制了Samba特性的商业产品,有的价格非常昂贵。有些软件包可能会花去你信息系统预算的大部分,这时Samba可以替代这些软件包。Samba的发布遵守GNU的通用公共许可证(GPL)。Samba的作者们使它成为一种开源软件。换句话说,你可以自由地下载Samba的应用程序及相关的源代码,甚至可以修改Samba的程序代码。Samba在服务器上的管理是集中式的。在升级客户机软件时,不需要访问每台机器、每张软盘或光驱。只需要更新服务器就可以达到目的,这显然是很有必要的,并且是经济实惠的。第二章 Samba服务器功能和应用范围1:Samba协议导论Samba协议可以理解为Samba的工作原理,Samba服务功能强大,这与其通信基于SMB协议有关。SMB不仅提供目录和打印机共享,还支持认证、权限设置。在早期,SMB运行于NBT协议(NetBIOS over TCP/IP)上,使用UDP协议的137、138及TCP协议的139端口,后期SMB经过开发,可以直接运行于TCP/IP协议上,没有额外的NBT层,使用TCP协议的445端口。当客户端访问Samba服务器是,信息通过SMB协议惊醒传输,其工作原理可以分为以下几个步骤:步骤1:协议协商客户端在访问Samba服务器时,发送negprot指令数据包,告知目标计算机其支持的SMB类型。Samba服务器根据客户端的情况,选择最优的SMB类型,并做出回应。 -negprot请求-客户端 服务器 -negprot响应-步骤2:建立连接当SMB类型确认后,客户端会发送SeSSion Setup指令数据包,提交帐号和密码,请求与Samba服务器建立连接,如果客户端通过身份验证,Samba服务器会对SeSSion Setup报文作出回应,并为用户分配唯一的UID,在客户端与其通信时使用。 -SeSSion Setup &X请求-客户端 服务器 -SeSSion Setup &X响应-步骤3:访问共享资源客户端访问Samba共享资源时,发送tree connect指令数据包,通知服务器需要访问的共享资源名,如果设置允许,Samba服务器会为每个客户端与共享资源连接分配TID,客户端即可访问需要的共享资源哈。 -tree connect &X请求-客户端 服务器 -tree connect &X响应-步骤4:断开连接共享使用完毕,客户端向服务器发送tree diSconnect报文关闭共享,与服务器断开连接。 -tree diSconnect请求-客户端 服务器 -tree diSconnect响应-Linux是一个多用户的操作系统,对任何服务器的架设与都用户、用户组及权限相关,这是操作的基础。Samba服务器也不例外,对这些知识的掌握也是极为重要的。在Windows系统上虽然也能架共享文件服务器,但它的权限控制实在令人不敢恭维。如果我们用Windows系统来架网络共享文件系统,就是点鼠标也能把我们点迷糊了。但在Linux中,我们可以轻松的改一改配置文件,不到几分钟就能建好自己的Samba服务器。哪个更容易,这显而易见!对于Samba服务器的架设,有的人简单的认为,只要把改一下配置文件,创建好相应的目录就行了。其实并不是这样的,还要深入的工作,比如目录的权限和归属,也就是说能让哪个用户和用户组有读写权。只有把配置文件和共享目录的权限结合起来,才能架好Samba服务器;2:Samba服务器版本的获取和介绍Samba服务器可以通过以下几种方法获得:(1) ,通过redhat安装光盘获取,一般可以在ISO文件中搜索Samba关键字,可搜索索到以下文件 然后按照只是安装:除了此安装文件,其他同样的道理。除了此安装文件,其他同样的道理。安装完成之后检验安装是否成功安装成功的对话框窗口:使用命令启动Samba服务器:Service Smb Start结果如上图:说明安装已经成功。另外的两个Samba服务器的命令是:#service smb stop /关闭Samba服务器#service smb restart /重启Samba服务器其次,还可以通过网络找到最新的Smb安装包,启动命令安装 :rpm -qa |grep Samba此命令查看已经包含的Smb的安装文件,然后安装,3:Samba服务器应用范围和功能Samba对任何规模的局域网(LAN)提出了完全的解决方案从两台计算机的家庭网络,到公司的几百个节点的网络,Samba的创建和管理都很容易。它为用户提供了一个透明的网络环境,通过它可以访问所有需要的网络资源。在安装了Samba之后,将Unix文件提供给Windows、OS2和其他操作系统的客户机。允许Unix客户机访问PC文件。提供名称服务(广播和WINS)。允许浏览来自Windows客户机的网络资源。创建Windows工作组或域。目前samba 的最新版本是V4。它的主要功能有:一:提供Windows 风格的文件和打印机共享。Windows 9x、Windows 2000、Windows xp、Windows 2003等操作系统可以利用samba 共享Linux 打印机等其他操作系统上的资源,外表上看起来和共享Windows 的资源区别不太。二:解析NETBIOS 名字。在Windows网络中,为了能够利用网上资源,同时是自己的资源也共享出去给别人看到,浏览利用,各个主机都会定期地向网络中广播发送自己的主机身份信息。而这负责收集这些信息并为其他主机提供检索的服务器被称为浏览服务器。Samba 就是这样的可以有效地完成这一任务的服务器,其在跨越网关的时候,还可以作为WINS 服务器。三:提供SMB 客户端。利用samba 本身提供的smbclient 程序可以在Linux 上使用犹如FTP 一样方便地访问Windows 资源。Smbclient 命令行可以有限地支持Windows 的某些管理功能。Samba 应该范围主要是Windows和Linux 系统共存的网络中使用;如果一个网络环境都是Linux或Unix类的系统,没有必要用Samba,应该用NFS更好一点; 或者是唇Windows环境下的FTP服务器。当然,这另当别论!第三章:Windows网络介绍一:NETBIOS网络知识介绍:NetBIOS协议是由IBM公司开发,主要用于数十台计算机的小型局域网。NetBIOS协议是一种在局域网上的程序可以使用的应用程序编程接口(API),为程序提供了请求低级服务的统一的命令集,作用是为了给局域网提供网络以及其他特殊功能,几乎所有的局域网都是在NetBIOS协议的基础上工作的。NetBIOSces Protocols。中文释义:网络基本输入/输出系统协议。应用:在Windows操作系统中,默认情况下在安装TCP/IP协议后会自动安装NetBIOS。比如在Windows 2000/XP中,当选择“自动获得IP”后会启用DHCP服务器,从该服务器使用NetBIOS设置; Windows中NetBIOS的安装如果使用静态IP地址或 DHCP服务器不提供NetBIOS设置,则启用TCP/IP上的NetBIOS。具体的设置方法如下:首先打开“控制面板”,双击“网络连接”图标,打 开本地连接属性。接着,在属性窗口的“常规”选项卡中选择“Internet协议(TCP/IP)”,单击“属性”按钮。然后在打开的窗口中,单击“高 级”按钮;在“高级TCP/IP设置”窗口中选择“WINS”选项卡,在“NetBIOS设置”区域中就可以相应的NetBIOS设置。但是,它也有其局限性,NetBIOS最多只能与其他节点建立254个通讯话路。 既然提到了NetBIOS那就必要会联系到NetBEUI,NetBIOS是应用程序访问符合NetBIOS规范的转输协议的接口,NetBEUI是该接口的一个扩展版本(1985年由IBM开发成功)。 NetBEUI不再有NetBIOS的254路的通话链接限制,它允许WindowsNT机器上的每个进程都能够与多达254个节点进行通讯。显然这是一个很大的进步!NetBIOS名称最多可有15个字符,通话层应用程序通过它来与远程计算机进行通讯。NetBEUI则是通过SMB协议 (ServerMessageBlock服务器消息块,最初应用于3COM公司的LANManager)来实现在逻辑通道中的消息传送的。 NetBEUI总是包含在NetBIOS中,NetBIOS可以运行在几种不同的传输协议上,包括NetBEUI、TCP/IP和IPX/SPX,后三者位于网络层驱动接口与传输层驱动接口之间。但运行在一种传输协议上的NetBIOS服务不能和运行另一种传输协议上的NetBIOS服务通信。NetBIOS可以使用的四种类型的SMB(赋予Windows计算机本地文件重定向功能以便进入远端文件系统) 命令: 话路控制命令: 用于建议或终止与远程计算机上某个资源的逻辑连接。 文件命令: 用于远程文件访问。 打印机命令: 用于传送数据给一个远程打印队列,同时也检查该打印队列中各项任务的执行状态。 消息命令: 用于实现计算机之间的消息传送。Netbios (网络基本输入/输出系统)最初由 IBM,Sytek 作为API开发,使用户软件能使用局域网的资源。自从诞生,Netbios成为许多其他网络应用程序的基础。严格意义上,Netbios 是接入网络服务的接口标准。 它提供给网络程序一套方法,相互通讯及传输数据。基本上,Netbios 允许程序和网络会话。它的目的是把程序和任何类型的硬件属性分开。它也使软件开发员可以免除以下负担:开发网络错误修复,低层信息寻址和路由。使用 Netbios接口,可以为软件开发员做许多工作。 Netbios使程序和局域网操作能力之间的接口标准化。有它们可以将程序细化到为OSI模型的哪一层所写,使程序能移植到其他网络上。在Netbios局域网环境下,计算机通过名字被系统知道。网络中每台计算机都有通过不同方法编的永久性名称。通过使用Netbios的数据报或广播方式,在Netbios局域网上的pc机建立会话彼此联络。会话允许更多的信息被传送,探测错误,和纠正。通信是在 一对一的基础上的。数据报或广播方式允许一台计算机和多台其他的计算机同时通信,但信息大小受限。使用数据报或广播方式没有探测错误和纠正。然而,数据报 通信可以不必建立一个会话。在这种环境下所有的通信以一种称为“网络控制块“的格式提交给NetBIOS。内存中这些块的分配依赖于用户程序。这些“网络控制块“分配到域中,分别为输入/输出保留。 在当今的环境中,NetBIOS是使用很普遍的协议。以太网,令牌环,IBM PC网都支持NetBIOS。在它原始版本中,它仅作为程序和网络适配器的接口。从那以后,传输类功能加入NetBIOS,使它功能日益增多。在NetBIOS里,面向连接(tcp)和无连接(udp)通信均支持。它支持广播和复播,支持三个分开的服务:命名,会话,数据报。NetBIOS 会话服务提供给用户程序一种面向连接,可靠的,完全双重的信息服务。 NetBIOS要求一个是客户端程序,一个是服务器端程序。NetBIOS会话的建立需要双方预定的合作。一个程序必须先发出listen命令,其他程序 才可以发出call令。listen命令参考在它的NetBIOS名称表中的名称(或windows服务器中的),也参考用于作为会话另一端的远端程序的 名称。如果聆听者不在聆听,call命令将不会成功。如果call成功,各程序将接到会话id,以作为会话建立的确认。 send和receive命令操作传输数据。在会话最后,各程序将执行挂起命令。没有为会话服务的实际流控制,因为假定局域网足够快,能够传输需要的数据。NetBIOS范围ID为建立在TCP/IP(叫做NBT)模块上的NetBIOS提供额外的命名服务。 NetBIOS范围ID的主要目的是隔离单个网络上的NetBIOS通信和那些有相同NetBIOS范围ID的节点。NetBIOS范围ID是附加在 NetBIOS 名称上的字符串。两个主机上的NetBIOS范围ID必须匹配,否则两主机无法通信。NetBIOS范围ID允许 计算机使用相同的计算机名,不同的范围ID。范围ID是NetBIOS名称的一部分,使名称唯一。但是,任何一件事物都不一定是完全完美的。NetBIOS 是指网络输入输出系统,在计算机网络发展史中,NetBIOS 算得上是历史悠久。早在 1985 年,IBM 公司就开始在网络领域使用 NetBIOS,微软推出第一套基于 Windows 的网络操作系统Windows For Workgroups(面向工作组的视窗操作系统)时,就采用了一种适用于 Windows 的 NetBIOS 版本,即 NetBEUI。微软当年之所以选择 NetBEUI 作为网络传输的基本协议,是因为它占用系统资源少、传输效率高,尤为适用于由 20 到 200 台计算机组成的小型局域网。此外,NetBEUI 还有一个最大的优点: 可以方便地实现网络中各单机资源的共享。 后来,网络的发展速度之快,已大大超出人们的想象,进入 20 世纪未,全球的计算机就已可通过国际互联网络方便连接,随着互联网络的迅猛发展,TCP/IP 协议成为广泛使用的传输协议。 今天,TCP/IP 协议已是互联网领域的通用协议,几乎所有接入互联网的电脑都使用TCP/IP。但同时,NetBEUI 协议也还在局域网领域广泛使用,因此,在你安装 TCP/IP 协议时,NetBIOS 也被 Windows 作为默认设置载入了你的电脑,而电脑随即也具有了NetBIOS 本身的开放性。换句话讲,在不知不觉间,你的上网电脑已被打开了一个危险的“后门”。 NetBIOS 的开放,意味着你的硬盘可能会在网络中成为共享。对于网上四处游走的来讲,他们可以通过 NetBIOS 获知你电脑中的一切!显然,这是很危险的!二:Windows域简介域英文叫DOMAIN域(Domain)是Windows网络中独立运行的单位,域之间相互访问则需要建立信任关系(即Trust Relation)。信任关系是连接在域与域之间的桥梁。当一个域与其他域建立了信任关系后,2个域之间不但可以按需要相互进行管理,还可以跨网分配文件 和打印机等设备资源,使不同的域之间实现网络资源的共享与管理。 域既是 Windows 网络操作系统的逻辑组织单元,也是Internet的逻辑组织单元,在 Windows 网络操作系统中,域是安全边界。域管理员只能管理域的内部,除非其他的域显式地赋予他管理权限,他才能够访问或者管理其他的域;每个域都有自己的安全策 略,以及它与其他域的安全信任关系。其实上可以把域和工作组联系起来理解,在工作组上你一切的设置在本机上进行包括各种策略,用户登陆也是登陆在本机的,密码是放在本机的数据库来验证的。 而如果你的计算机加入域的话,各种策略是域控制器统一设定,用户名和密码也是放到域控制器去验证,也就是说你的账号密码可以在同一域的任何一台计算机登陆 . 如果说工作组是“免费的旅店”那么域(Domain)就是“星级的宾馆”;工作组可以随便出出 进进,而域则需要严格控制。“域”的真正含义指的是服务器控制网络上的计算机能否加入的计算机组合。一提到组合,势必需要严格的控制。所以实行严格的管理 对网络安全是非常必要的。在对等网模式下,任何一台电脑只要接入网络,其他机器就都可以访问共享资源,如共享上网等。尽管对等网络上的共享文件可以加访问 密码,但是非常容易被破解。在由Windows 9x构成的对等网中,数据的传输是非常不安全的。 不过在“域”模式下,至少有一台服务器负责每一台联入网络的电脑和用户的验证工作,相当于一个单位的门卫一样,称为“域控制器(Domain Controller,简写为DC)”。 域控制器中包含了由这个域的账户、密码、属于这个域的计算机等信息构成的数据库。当电脑联入网 络时,域控制器首先要鉴别这台电脑是否是属于这个域的,用户使用的登录账号是否存在、密码是否正确。如果以上信息有一样不正确,那么域控制器就会拒绝这个 用户从这台电脑登录。不能登录,用户就不能访问服务器上有权限保护的资源,他只能以对等网用户的方式访问Windows共享出来的资源,这样就在一定程度 上保护了网络上的资源。 要把一台电脑加入域,仅仅使它和服务器在网上邻居中能够相互“看”到是远远不够的,必须要由网络管理员进行相应的设置,把这台电脑加入到域中。这样才能实现文件的共享,集中统一,便于管理。要建立域进行管理,首先需安装域控制器(dc),dc上存储着域中的信息资源,如名称、位置和特性描述等信息。通过在一台服务器上安装活动目录(AD),就会将这台计算机安装成dc。安装条件1. 安装者必须具有本地管理员的权限。 2操作系统版本必须满足条件(Windows server2003除web以外的所有都满足)。 3本地磁盘必须有一个NTFS文件系统 4有TCP/IP设置 5有相应的DNS服务器支持 6有足够的可用空间域和组的区别工作组是一群计算机的集合,它仅仅是一个逻辑的集合,各自计算机还是各自管理的,你要访问其中的计算机,还是要到被访问计算机上来实现用户验证的。而域 不同,域是一个有安全边界的计算机集合,在同一个域中的计算机彼此之间已经建立了信任关系,在域内访问其他机器,不再需要被访问机器的许可了。为什么是这 样的呢?因为在加入域的时候,管理员为每个计算机在域中(可和用户不在同一域中)建立了一个计算机帐户,这个帐户和用户帐户一样,也有密码保护的。可是大 家要问了,我没有输入过什么密码啊,是的,你确实没有输入,计算机帐户的密码不叫密码,在域中称为登录票据,它是由2000的DC(域控制器)上的KDC 服务来颁发和维护的。为了保证系统的安全,KDC服务每30天会自动更新一次所有的票据,并把上次使用的票据记录下来。周而复始。也就是说服务器始终保存 着2个票据,其有效时间是60天,60天后,上次使用的票据就会被系统丢弃。如果你的GHOST备份里带有的票据是60天的,那么该计算机将不能被KDC 服务验证,从而系统将禁止在这个计算机上的任何访问请求(包括登录),解决的方法呢,简单的方法使将计算机脱离域并重新加入,KDC服务会重新设置这一票 据。或者使用2000资源包里的NETDOM命令强制重新设置安全票据。因此在有域的环境下,请尽量不要在计算机加入域后使用GHOST备份系统分区,如 果作了,请在恢复时确认备份是在60天内作的,如果超出,就最好联系你的系统管理员,你可以需要管理员重新设置计算机安全票据,否则你将不能登录域环境。 域和工作组适用的环境不同,域一般是用在比较大的网络里,工作组则较小,在一个域中需要一台类 似服务器的计算机,叫域控服务器,其他电脑如果想互相访问首先都是经过它的,但是工作组则不同,在一个工作组里的所有计算机都是对等的,也就是没有服务器 和客户机之分的,但是和域一样,如果一台计算机想访问其他算机的话首先也要找到这个组中的一台类似组控服务器,组控服务器不是固定的,以选举的方式实现, 它存储这这个组的相关信息,找到这台计算机后得到组的信息然后访问。第三章:Samba服务器相关程序Samba 有两个服务器,一个是smb,另一个是nmb。smb 是Samba 的主要启动服务器,让其它机器能知道此机器共享了什么;如果不打开nmb服务器的话,只能通过IP来访问,比如在Windows的IE浏览器上打入下面的一条来访问;192.168.1.2freedown192.168.1.2freedownthe num one而nmb是解析用的,解析了什么呢?就是把这台Linux机器所共享的工作组及在此工作组下的NetBIOS name解析出来; 一般的情况下,在RPM包的系统,如果是用RPM包安装的Samba ,一般可以通过如下的方式来启动Samba服务器;查看服务器是否运行起来了,则用下面的命令; rootlocalhost # pgrep smbdrootlocalhost # pgrep nmbdrootlocalhost # /etc/init.d/smb start / 以管理员身份打开 如果停止呢?就在smb后面加stop ;重启就是restart :rootlocalhost # /etc/init.d/smb stop / 以管理员身份打开rootlocalhost # /etc/init.d/smb restart / 以管理员身份打开或者是如图所示:对于所有系统来说,通用的办法就是直接运行smb 和nmb;当然您要知道smb和nmb所在的目录才行;如果是自己编译的Samba 软件,则需要输入安装所在的目录路径才行: rootlocalhost # /usr/sbin/smbd rootlocalhost # /usr/sbin/nmbd 查看服务器是否运行起来了,则用下面的命令; rootlocalhost # pgrep smbd rootlocalhost # pgrep nmbd 关掉Samba服务器,也可以用下面的办法,大多是通用的;要root权限来执行; rootlocalhost # pkill smbd rootlocalhost # pkill nmbd 三:samba的端口情况如图所示:此种情况说明Samba服务器已经充分的做好了安装工作和端口测试工作!初步成功!当然下面更重要的是Samba服务器的文件配置等工作。下续。敬请期待第五章:Samba服务器的配置与管理一:配置smb.conf文件。如果我们是用Linux发行版自带的Samba软件包,一般情况下Samba服务器的配置文件都位于/etc/samba目录中,服务器的主配置文件是smb.conf;也有用户配置文件 smbpasswd、smbusers和lmhosts等(最好您查看一下这些文件的内容);还有一个文件是secrets.tdb,这个文件是Samba 服务器启动时自动生成的。然后找到配置文件:省下的就是文件的修改和保存这些在图形界面下可以实现。所以 ,对于菜鸟级别的我而言还是比较省事点,当然也可以VI 它,在命令行下:修改此文件的办法如下:samba的配置文件是/etc/samba/smb.conf文件,这个文件可以根据您的需要通过配置它相关的参数来实现复杂或简单的访问控制。smb.conf的格式是有多个段,每段由段名开始,一直到下个段名,每个段名放在方括号中间,下面给出个smb.conf文件例子。 #more /usr/local/samba/lib/smb.conf global workgroup = dabing netbios name =dabing-server server string = Samba Server log file = /usr/local/samba/var/log.%m Security = user guest account = guest gcp docs comment = this is shared gcp docs path = /gcp guest ok = yes read only = no browseable = yes aaa docs comment = this is shared aaa docs path = /aaa guest ok = yes read only = no global段是全局变量,它设置了工作组,NetBIOS名,安全参数security等参数,除了global段外,所有的段都可以看作是一个共享资源,段名是该共享资源的名字,而段里的参数就是共享资源的属性。gcp docs 和aaa docs就是共享的目录,它的参数可以设置共享目录路径和访问控制权限等。在安装完软件包后,我们把/etc/samba/sbin 下面的3个应用程序,nmbd,smbd,winbindd复制到/usr/local/samba/bin下面去。 samba server服务是 由3个守护进程组成, nmbdNetbios名称服务器,该进程使用UDP协议提供Netbios名称服务和浏览支持,处理命名注册和决策请求。该进程应当是被首先启动。 smbd SMB服务器,使用TCP协议给SMB客户提供文件和打印服务;应当在nmbd进程后立即启动。 Winbindd当Samba服务器是windows NT 或 ADS域中的成员时,此时当启动该守护进程。 通常在修改了配置文件smb.conf后,我们需要从新启动这3个进程,以便参数的设置起效. 下面配置下到自动启动脚本,我们可以自己写个启动的脚本,加入这3个进程(注意启动的先后顺序),其实samba安装完有个example的启动的脚本,我们只要做些修改就可以了。 #cp /usr/local/samba/doc/samba/examples/svr4-startup/samba.server /etc/init.d/samba.server #Vi /etc/init.d/samba.server 把默认的两行/opt/samba/bin/smbd -D -s/opt/samba/smb.conf /opt/samba/bin/nmbd -D -l/opt/samba/log -s/opt/samba/smb.conf 改为三行 /usr/local/samba/sbin/smbd -D -s/usr/local/samba/lib/smb.conf /usr/local/samba/sbin/nmbd D -l/var/adm/samba.log -s/usr/local/samba/lib/smb.conf /usr/local/samba/sbin/winbindd #cd /etc/rc2.d # ln -s /etc/init.d/samba.server S99samba.server(把它Link到启动目录里面) 这样Samba服务进程就会随着系统的启动而自动启动了。 二:samba服务系统的管理和配置工具 除此之外,Samba还提供了几个实用的组件(位于/usr/local/samba/bin目录下面): smbclient, SMB客户程序,用来存取SMB服务器上的共享资源; testprns 测试服务器上打印机访问的程序; testparms 测试Samba配置文件的正确性的工具; smbstatus 这个工具可以列出当前Samba服务器上的连接; smbtree 这个工具来显示共享目录树形结构。 smbpasswd 这个工具用来设定用户密码; swat samba的Web管理工具; 这些工具其实都是非常有用的,通过他们我们可以更好的管理配置samba服务器。 下面通过例子做介绍 #cd /usr/local/samba/bin #testparms 测试参数的设置格式,属性是否正确。 #smbstatus Samba version 3.0.10 PID Username Group Machine - 2502 root UEC uec-gcp (192.168.1.2) Service pid machine Connected at - IPC$ 2502 uec-gcp Mon Sep 12 13:11:31 2005 aaa docs 2502 uec-gcp Mon Sep 12 12:59:01 2005 gcp docs 2502 uec-gcp Mon Sep 12 12:58:54 2005 No locked files #smbpasswd a username 添加访问的共享资源的用户,一般用户也可以访问SWAT,但只有查看状态的权限。 # smbtree Password: WORKGROUP SUN440EN Samba 3.0.25 SUN440ENADMIN$ IPC Service (Samba 3.0.25) SUN440ENIPC$ IPC Service (Samba 3.0.25) SUN440ENaaa docs
展开阅读全文