学习情境9 配置sAmBa服务器
学习情境9
配置samba服务器
cp test[1-5] /tmp
只要文件存在就拷贝
9.1 Samba的概述
SMB协议
Samba服务
Samba服务工作原理
SMB协议
它是Microsoft和Intel在1987
年开发的,该协议可以用在
TCP/IP之上,也可以用在其他
网络协议(如IPX和NetBEUI)
之上。通过SMB协议,客户端
应用程序可以在各种网络环境下
读、写服务器上的文件,以及对
服务器程序提出服务请求。此外
通过SMB协议,应用程序还可
以访问远程服务器端...
学习情境9
配置samba服务器
cp test[1-5] /tmp
只要文件存在就拷贝
9.1 Samba的概述
SMB协议
Samba服务
Samba服务工作原理
SMB协议
它是Microsoft和Intel在1987
年开发的,该协议可以用在
TCP/IP之上,也可以用在其他
网络协议(如IPX和NetBEUI)
之上。通过SMB协议,客户端
应用程序可以在各种网络环境下
读、写服务器上的文件,以及对
服务器程序提出服务请求。此外
通过SMB协议,应用程序还可
以访问远程服务器端的文件和打
印机等资源 。
Samba服务
Linux使用一个被称为
Samba的程序集来实现
SMB协议。通过Samba,
可以把Linux系统变成一台
SMB服务器,使Windows
95以上的Windows用户能
够使用Linux的共享文件和
打印机,同样的Linux用户
也可以通过SMB客户端使
用Windows上的共享文件
和打印机资源 。
Samba服务
目前Samba的最新版本是3.0.26,它的主要功能如下。
(1)提供Windows风格的文件和打印机共享。Windows 95、Windows 98、Windows NT、Windows 2000、Windows XP、Windows 2003等操作系统可以利用Samba共享Linux等其他操作系统上的资源,而从外
看起来和共享Windows的资源没有区别。
(2)在Windows网络中解析NetBIOS的名字。为了能够利用局域网上的资源,同时使自己的资源也能被别人所利用,各个主机都定期地向局域网广播自己的身份信息。负责收集这些信息,提供检索的服务器也被称为浏览服务器,而Samba能够实现这项功能。同时在跨越网关的时候Samba还可以作为WINS服务器使用。
(3)提供SMB客户功能。利用Samba程序集提供的smbclient程序可以在Linux中以类似于FTP的方式访问Windows共享资源。
(4)提供一个命令行工具,利用该工具可以有限制地支持Windows的某些管理功能。
Samba服务工作原理
Samba服务工作原理
Samba服务的具体工作过程如图3-4所示。
① 首先客户端发送一个SMB negprot请求数据报,并列出它所支持的所有SMB协议版本。服务器收到请求信息后响应请求,并列出希望使用的协议版本。如果没有可使用的协议版本则返回0XFFFFH,结束通信。
② 协议确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送SesssetupX请求数据报实现的。客户端发送一对用户名和密码或一个简单密码到服务器,然后服务器通过发送一个SesssetupX应答数据报来允许或拒绝本次连接。
③ 当客户端和服务器完成了磋商和认证之后,它会发送一个Tcon或TconX SMB数据报并列出它想访问网络资源的名称,之后服务器会发送一个TconX应答数据报以表示此次连接是否被接受或拒绝。
④ 连接到相应资源后,SMB客户端就能够通过open SMB打开一个文件,通过read SMB读取文件,通过write SMB写入文件,通过close SMB关闭文件。
Samba服务工作原理
9.2 Samba服务的安装
默认情况下,Red Hat Enterprise Linux 5安装程序没有
安装Samba服务,可使用下面的命令检查系统是否已经安
装了Samba或查看已经安装了何种版本。
rpm -q samba
如果系统还没有安装Samba服务。如果现在要安装,可
将Red Hat Enterprise Linux 5的第2张安装盘放入光驱,加
载光驱后在光盘的Server目录下找到Samba服务程序的
RPM安装包文件samba-3.0.23c-2.i386.rpm,然后使用下面
的命令安装Samba。
rpm -ivh /mnt/Server/samba-3.0.23c-2.i386.rpm
9.3 Samba服务的配置文件
Samba服务的主配置文件
Samba服务的密码文件
Samba服务的日志文件
Samba服务的主配置文件
Samba服务的主配置文件/etc/samba/smb.conf由
两部分构成。
1.Global Settings
该设置都是与Samba服务整体运行环境有关的选
项,它的设置项目是针对所有共享资源的。
2.Share Definitions
该设置针对的是共享目录个别的设置,只对当前
的共享资源起作用。
Samba服务的密码文件
与Samba服务相关的密码文件共有两个。
1./etc/samba/smbpasswd
2./etc/samba/smbusers
Samba服务的日志文件
Samba服务的日志默认存放在/var/log/samba目
录中,Samba服务为所有连接到Samba服务
器的计算机建立个别的日志文件,同时也将
NMB服务和SMB服务的运行日志分别写入
nmbd.log和smbd.log日志文件中 。
9.4 Samba服务的文件共享
全局参数
用户映射
使用加密口令
共享目录
全局参数
1.设置Samba服务器所属的群组名称或Windows的域名
workgroup = MYGROUP
2.设置Samba服务器的简要说明
server string = Samba Server
3.设置可访问Samba服务器的主机、子网或域
hosts allow = 192.168.1. 192.168.2. 127.
4.设置Samba服务启动时,将自动加载的打印机配置文件
printcap name = /etc/printcap
全局参数
5.设置是否允许打印配置文件中的所有打印机开机时自动加载
load printers = yes
6.设置guest账号名
guest account = pcguest
7.指定Samba服务器使用的安全等级
security = user
全局参数
Samba服务器的安全等级共有以下5类。
(1)share安全等级
(2)user安全等级
(3)server安全等级
(4)domain安全等级
(5)ads安全等级
全局参数
8.有多个网卡的Samba服务器设置需要监听的网卡
interfaces = 网卡IP地址或网络接口
9.设置Samba服务器同时充当WINS服务器
wins support = yes
10.设置WINS服务器的IP地址
wins server = w.x.y.z
用户映射
用户映射通常是在Windows和Linux主机之间进行。两个
系统拥有不同的用户账号,用户映射的目的就是将不同的用
户映射成为一个用户。做了映射后的Windows账号,在使用
Samba服务器上的共享资源时,可以直接使用Windows账
号进行访问。
要使用用户映射,只需将smb.conf配置文件中username
map = /etc/samba/smbusers前的注释符号“;”去除 。
然后编辑文件/etc/samba/smbusers,将需要映射的用户
添加到文件中。参数格式为:
单独的Linux账号 = 要映射的Windows账号列表
使用加密口令
全局参数“encrypt password”设置项可用来指定用户的密
码是否以加密的方式发送到Samba服务器,默认值是使用
此功能。参数格式如下:
encrypt password = yes或no
使用“yes”表示采用加密的方式发送密码,使用“no”则相
反。Windows操作系统也是采用加密的方式发送密码。如果
此参数设置为“no”的话,就必须修改Windows系统的注册表。
为了简化用户的操作,Samba提供了多种Windows操作系
统类型的注册表文件,这些文件存放在
/usr/share/doc/samba-3.0.23c/registry目录中 。
共享目录
1.设置用户个人的主目录
它的相关设置项目如图3-17所示。
共享目录
2.设置一个共享目录
【例】设置共享目录share,它的本机路径为“/home/share”,只有share组的用户可以读写该目录,tom用户只能读取。具体的步骤如下。
① 以root用户登录系统,使用命令groupadd share建立share组,并利用命令usermod -G share ygj将ygj用户添加到share组中。
② 使用命令mkdir/home/share在/home目录下建立子目录share。
③ 使用命令chown:share/home/share设置share目录所属的组为share组,然后使用命令chmod -c g+wxr /home/share设置share组对该目录具有读写和执行权限。
④ 在smb.conf配置文件末尾添加如图3-18所示的配置项目。
9.5 Samba服务的打印共享
与共享打印有关的配置文件主要是在smb.conf中的[printers]配置项中。
配置参数与共享目录是基本相同的 。
9.6启动和停止Samba服务
1.启动Samba服务
/etc/rc.d/init.d/smb start
2.停止Samba服务
etc/rc.d/init.d/smb stop
3.重新启动Samba服务
/etc/rc.d/init.d/smb restart
9.6启动和停止Samba服务
4.自动启动Samba服务
如果需要让Samba服务随系统启动而自动加载,可以执行“ntsysv”命
令启动服务配置程序,找到“smb”服务,在其前面加上“*”星号,然后选
择“确定”即可 。
9.7 Linux客户端的访问
利用主机名访问共享资源
smbclient
smbmount/ smbumount
利用主机名访问共享资源
如果用户需要利用主机名访问共享资源的
话,可以设置lmhosts文件来实现。它的功能
与WINS服务器类似,就是提供主机名与IP地
址的对应数据。
该文件的存放位置为:/etc/samba/lmhosts。
每条记录的格式为:
IP地址 主机名(NetBIOS名称)
smbclient
默认情况下,Red Hat Enterprise Linux安装程序会将
smbclient安装在系统上,读者可使用下面的命令检查系统
是否已经安装了smbclient或查看已经安装了何种版本。
rpm -q samba-client
如果系统还未安装smbclient,应将Red Hat Enterprise
Linux 5的第1张安装盘放入光驱,加载光驱后在光盘的
Server目录下找到smbclient的RPM安装包文件samba-
client-3.0.23c-2.i386.rpm,使用下面命令安装smbclient。
rpm -ivh /mnt/Server/ samba-client-3.0.23c-2.i386.rpm
smbclient
smbclient的访问命令格式如下。
列出目标主机共享资源列表
smbclient -L //主机名或IP地址 -U 登录用户名
使用共享资源
smbclient //主机名或IP地址/共享目录名 -U 登录用户名
smbmount/ smbumount
在Linux服务器或客户端上,可以利用smbmount命令
将共享资源加载到本机,利用smbumount命令将已加
载的共享资源卸载。
命令格式为:
smbmount 共享资源地址 加载点 –o 参数
smbumount 加载点
9.8 Windows客户端的访问
Windows的客户端不需要
更改任何设置, 就可以在“网
上邻居”中打开在3.4.1节定义
的工作组查看到安装了
Samba的Linux服务器,或选
择菜单“开始→运行”,在打开
的“运行”窗口中输入“\\服务器
名”或“\\服务器IP地址”,然后
单击“确定”按钮即可。图3-29
所示的是利用主机名访问
Samba服务器。
9.9 练习
【练习1】建立Samba服务器,并根据以下要求配置Samba服务器。
(1)Samba服务器所属的群组名称为student。
(2)设置可访问Samba服务器的子网为192.168.16.0/24。
(3)设置Samba服务器监听的网卡为eth0。
【练习2】在Linux中的用户“root”与Windows中的用户“teacher”和“monitor”之间建立映射。
【练习3】建立共享目录student,它的本机路径为“/home/student”,只有teacher组的用户可以读写该目录,student用户只能读取。
【练习4】使用smbclient客户端程序登录Samba服务器,并尝试下载服务器中的某个共享资源文件。
cp test[1-5] /tmp
只要文件存在就拷贝
本文档为【学习情境9 配置sAmBa服务器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。