您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > LINUX技术基础-第四讲-SAMBA文件共享服务
Linux网络服务管理课程目标•使用Linux主机作为网络服务器–Samba实现Windows文件共享服务–BIND作为DNS服务器–FTP服务器–DHCP–Apache作为Web服务器–Sendmail作为邮件服务器–iptables防火墙•使用客户机对Linux服务器进行测试第一单元SAMBA文件共享服务学习目的•了解Windows文件共享的基本概念和Samba服务器的功能•会使用samba完成不同操作系统之间的文件共享•掌握Samba服务器的配置管理•掌握Samba客户程序的使用•掌握swat服务的配置和基本使用本章结构SAMBA文件共享服务Samba服务器与Samba客户机Samba服务器的基本原理Samba服务器安装Samba服务器配置Samba客户端安装使用实现Linux主机访问Windows共享文件实现Windows主机访问Samba服务器Windows文件共享与Samba服务器实现Windows主机和Linux主机共享文件互访•概念•三种方式–FTP、HTTP–NFS–Samba文件服务概述WANLAN远程客户机远程客户机本地客户机本地客户机权限检查权限检查文件服务器Windows文件共享与Samba服务器•Windows文件共享–Windows主机之间使用SMB/CIFS网络协议实现文件和打印资源的共享–Windows无法与UNIX/Linux主机之间实现资源共享•Samba服务器–Samba服务器在UNIX系统中实现了SMB/CIFS协议–通过Samba服务可以实现UNIX/Linux主机与Windows主机之间的资源互访实现共享资源互访•Linux主机与Windows主机的互访方式Windows服务器Linux客户端Windows客户端Linux服务器Samba原理•smbd•Nmbd–提供WindowsNetBEUI名字查询服务和网络浏览服务NETBEUITCP/IPNetBIOSNetBIOSSMBSMBWindowsLinux文件共享Samba服务器的服务程序•Samba服务器包括两个服务程序–smbd•smbd服务程序为客户机提供了服务器中共享资源(目录和文件等)的访问–nmbd•nmbd服务程序提供了NetBIOS主机名称的解析,为Windows网络中域或者工作组内的主机进行主机名称的解析Samba服务器的安装•RedHat中缺省安装了Samba相关的软件包–samba-common软件包中提供了Samba服务器和客户机中都必须使用的公共文件–samba软件包中包括了Samba服务器程序的所有文件–samba-client软件包中提供了Samba客户机的所有文件安装•安装–默认安装–手动安装rpm-ivhsamba-2.2.7a-7.9.0.i386.rpmrpm-ivhsamba-client-2.2.7a-7.9.0.i386.rpmrpm-ivhsamba-common-2.2.7a-7.9.0.i386.rpm配置•/etc/samba/lmhosts本地网络主机的netbios名,用于与Windows系列主机之间的名字查找配置(Cont.)•/etc/samba/smbusersWindowsSAMBAServeradministratorrootsmb.conf配置文件2-1•smb.conf–Samba服务器的主配置文件是smb.conf,保存在目录“/etc/samba/”中–文件中注释行使用“#”开始,是对配置内容的说明文字–样例行使用“;”开始,是对配置内容的举例smb.conf配置文件2-2•smb.conf文件内容#cat/etc/samba/smb.conf[global]workgroup=MYGROUPserverstring=SambaServerlogfile=/var/log/samba/%m.logmaxlogsize=50printcapname=/etc/printcapdnsproxy=Noidmapuid=16777216-33554431idmapgid=16777216-33554431cupsoptions=raw[homes]comment=HomeDirectoriesreadonly=Nobrowseable=No......smb.conf中的全局配置•smb.conf中的[global][global]workgroup=MYGROUPserverstring=SambaServerlogfile=/var/log/samba/%m.logmaxlogsize=50security=userworkgroup设置Samba服务器所在的工作组的名称,默认设置为“MYGROUP”serverstring设置Samba服务器的说明文字,用于描述Samba主机logfile设置Samba服务器的日志文件,默认设置为“/var/log/samba/%m.log”,表示所有设置文件都保存在“/var/log/samba/”目录中,使用Samba服务器的每个客户机的日志分别进行保存在与客户主机同名的“%m.log”文件中,“%m”变量表示客户端主机的名称maxlogsize设置日志文件的最大容量,默认为“50”,表示50KB;该设置项的数值单位是“KB”security设置Samba服务器的缺省安全级别为“user”,表示需要经过Samba服务器的用户认证后才能够访问服务器中的资源Samba服务器的安全级别•smb.conf中security的配置security值含义share表示用户不需要账户及密码即可登入Samba服务器user表示由提供服务的Samba服务器负责检查账户及密码(是Samba默认的安全等级)server表示检查账户及密码的工作指定由另一台Windows服务器或Samba服务器负责domain表示指定Windows域控制服务器来验证用户的账户及密码用户目录共享设置•smb.conf中的[home]–[homes]共享目录不特指某个目录,而是表示Samba用户的宿主目录[homes]comment=HomeDirectoriesbrowseable=nowritable=yescomment用于设置共享的说明信息browseable设置为no表示所有Samba用户的宿主目录不能被看到,只有登录用户才能看到自己的宿主目录共享;这样设置可以加强Samba服务器的安全性writable设置为yes表示用户对该共享目录写入,设置用户对自己的宿主目录具有写权限是比较合理的添加用户•Samba用户必须首先是系统用户•smbadduserunixid:ntid•smbpasswdSamba用户帐号3-1•Samba帐号管理–Samba用户帐号使用独立的smbpasswd文件保存用户的帐号和加密口令信息–Samba服务器中的用户帐号应该具有与其同名的Linux系统用户帐号,因为Samba用户是使用同名的系统帐号身份访问Linux系统资源(文件和目录)的–Samba用户的口令和同名系统用户的口令是独立的,可以相同或不同,需要分别进行维护和更改–当Samba用户不需要登录Linux系统时,同名的系统用户帐号可不设置口令Samba用户帐号3-2•Samba服务器的用户帐号–Samba服务器的用户帐号文件保存在“/etc/samba/”目录中,文件名称是“smbpasswd”–初始状态“smbpasswd”文件不存在,在第一次使用smbpasswd命令创建Samba用户时将自动建立–“smbpasswd”文件中同时保存有用户帐号和用户密码,因此该文件只对root用户有读写权限Samba用户帐号3-3•smbpasswd命令–smbpasswd命令用于维护Samba服务器的用户帐号–添加Samba用户帐号#smbpasswd-asambauser–禁用Samba用户帐号#smbpasswd-dsambauser–启用Samba用户帐号#smbpasswd-esambauser–删除Samba用户帐号#smbpasswd-xsambauser共享目录配置实例2-1•公共共享目录配置要求–在smb.conf中添加名为[public]共享目录–公共共享目录的路径是“/home/public”–任何Samba的用户都可以访问公共目录并对目录具有读写权限–任何用户在公共目录中都以Linux中“nobody”系统用户的身份出现,即在公共目录中任何用户建立的文件都属于“nobody”系统用户共享目录配置实例2-2•smb.conf中添加的配置内容[public]path=/home/publicpublic=yesonlyguest=yeswritable=yespath用于设置共享目录对应的Linux系统目录public设置为yes表示该共享目录对于所有Samba用户可见“onlyguest”设置为yes表示所有用户在使用该共享目录时的用户身份都是“guest”,即Linux系统用户“nobody”writable设置为yes表示该共享目录对于用户可写配置文件语法检测服务启动•测试smb.conf文件的内容–testparm命令是配置文件测试工具,可以对smb.conf配置文件的语法进行检测,并显示当前配置的清单#testparmLoadsmbconfigfilesfrom/etc/samba/smb.confProcessingsection[homes]Processingsection[printers]Processingsection[public]LoadedservicesfileOK.Serverrole:ROLE_STANDALONEPressentertoseeadumpofyourservicedefinitions[global]......启动Samba服务器•启动Samba服务器–启动脚本文件/etc/init.d/smb–启动服务命令#servicesmbstart–查询服务状态#servicesmbstatus–停止服务命令#servicesmbstopsmbclient命令•smbclient–smbclient是Samba服务器的命令行方式的登录客户端,使用的形式类似telnet和ftp命令–显示指定Samba服务器中的共享资源列表#smbclient-L192.168.1.2–以指定用户身份登录到指定服务器的指定共享目录#smbclient//192.168.1.2/st02-Ust02•“//192.168.1.2/st02”表示服务器“192.168.1.2”中的共享目录“st02”•“-Ust02”表示以Samba用户“st02”的身份进行登录smbstatus命令•smbstatus–smbstatus命令用于显示当前主机中的Samba服务器的连接状态信息–显示信息包括连接服务器的每个Samba客户端的IP地址、主机名称、登录用户名、锁定的文件等#smbstatusSambaversion3.0.10-1.4EPIDUsernameGroupMachine-------------------------------------------------------------------13921st02st024010cdt(192.168.1.123)ServicepidmachineConnectedat-------------------------------------------------------IPC$139214010cdtFriApr1419:10:252006Nolockedfilessmbmount命令•smbmount–smbmount命令用于将Samba共享目录挂载到Linux文件系统中#smbmount//192.168.1.2/public/mnt•mount命令–使用“-t”命令选项指定文件系统类型为“smbfs”,–使用“-o”选项设置使用指定用户帐号#moun
本文标题:LINUX技术基础-第四讲-SAMBA文件共享服务
链接地址:https://www.777doc.com/doc-5266252 .html