
Linux操作系统案例教程 第3版教学课件10.pptx
67页Samba服务器服务器 基基础础内内容容介介绍绍 s a m b a服服 务务 器器 配配 置置 课课堂堂练练习习 课课程程总总结结 samba服务器第十章 Samba服务器服务器10.1 samba 简介 samba是一种基于linux/unix平台中利用于smb(服务信息块)协议,实现计算机系统之间文件共享及互访的软件包SMB协议是一个高层协议,它提供了在网络上的不同计算机之间共享文件、打印机和不同通信资料的手段Samba服务器服务器10.1.1 samba的工作原理TCP/IPTCP/IPNetBIOSNetBIOSSMBWindowsLinux文文件件共共享享 让windows系列操作系统网上邻居的通信协议NETBIOS(Network Basic Input/output System)和SMB(Server Message Block)这两个协议在TCP/IP通信协议上运行,并且让Linux可以在网上邻居中被windows看到其中最主要的是SMB协议Samba 就是SMB服务器在类UNIX系统上的实现Samba服务器服务器10.1.1.samba的工作原理samba核心是两个守护进程smbd和nmbd程序,在服务启动到停止期间持续运行。
Smbd和nmbd使用的全部配置信息全都保存在smb.conf文件中处理到来的SMB数据包网网络中的客户机提供文件和络中的客户机提供文件和打印服务打印服务使其它的主机能浏览LINUX服务器 Samba服务器服务器10.1.2 Samba功能网络浏览网络浏览文件共享文件共享访问控制列表访问控制列表打印共享打印共享 Samba服务器服务器给出案例给出案例案例案例1:Windows客户机匿名访问客户机匿名访问Samba共享资源共享资源 1.设置设置samba服务器所在工作组为服务器所在工作组为workgroup2.设置服务器名为设置服务器名为sambasever3.设置设置samba服务器为用户级访问服务器为用户级访问4.设置共享目录设置共享目录/tmp/share,所有用户都能访问,所有用户都能访问,并且具有读写权限并且具有读写权限5.windows客户端上访问客户端上访问Samba服务器上共享资源服务器上共享资源Samba服务器服务器10.2.1 samba服务器安装 1.安装samba(1)验证)验证samba是否已经安装是否已经安装rootlocalhost#rpm qa|grep samba 如果系统出现类似如下的信息,则表明如果系统出现类似如下的信息,则表明Samba已经安装:已经安装:samba-common-tools-4.11.2-13.el8.x86_64samba-common-4.11.2-13.el8.noarchsamba-common-libs-4.11.2-13.el8.x86_64samba-client-libs-4.11.2-13.el8.x86_64samba-libs-4.11.2-13.el8.x86_64samba-4.11.2-13.el8.x86_64 Samba服务器服务器10.2.1 samba服务器安装 1.安装samba(2)配置好)配置好yum源源如果没有安装,如果没有安装,按照按照6.3.2小节的步骤配置好本地小节的步骤配置好本地YUM源源(3)安装)安装Samba服务服务rootlocalhost/mnt#dnf-y install samba2.启动、停止启动、停止Samba服务服务#systemctl start smb /启动启动samba服务服务#systemctl status smb /查看查看Samba服务器运行状态服务器运行状态#systemctl restart smb /重启重启Samba服务服务#systemctl stop smb /停止停止Samba服务服务 Samba服务器服务器10.2.2 Samba服务器的配置 Samba服务器全部配置信息均保存在/etc/samba/smb.conf文件。
smb.conf文件采用分节的结构一般由三个标准节和若干个用户自定义的共享节组成利用vim可以编辑和查看smb.conf文件Samba服务器服务器10.2.2 Samba服务器的配置 1.基本全局参数 netbios name=MySamba /设置Samba服务器的NetBIOS名 workgroup=WORKGROUP /设置Samba要加入的工作组 server string=Samba%v /设置在打印管理器的“打印机注释”框中显示的字符串 hosts allow=192.168.5./允许192.168.5.0网段主机连接,hosts deny= /禁止192.168.10.0网段主机连接,禁止连接 security=user /设置用户访问服务器的安全模式 Samba服务器服务器10.2.2 Samba服务器的配置 1.基本全局参数 Auto(自动模式):在该模式下,Samba将参考服务器角色参数来确定安全模式User(用户模式):Samba服务器默认的安全模式,客户端在连接时必须首先使用有效的用户名和密码登录Samba服务器负责检查Samba用户名和口令,验证成功后才能访问相应的共享目录。
Domain(域模式):该模式下,Samba服务器加入到windows域网络中,Samba服务器本身不验证Samba用户名和口令,而由windows域控制服务器负责此时必须指定域控制服务器的Netbios名称ADS(活动目录模式):Samba服务器将在ADS域充当域成员,运行Samba的计算机将需要安装和配置Kerbers,Samba将使用网络应用程序加入ADS域Samba服务器服务器2.普通共享参数 comment=?/共享备注,指定对共享的描述,path=?/指定授权用户具有访问权限的共享路径 writable=yes /指定共享的路径是否可写 browsable=yes /指定共享资源是否可用共享列表和浏览 read only=yes /指定共享的路径是否为只读,read list=user,group /设置只读访问用户列表 write list=user,group /设置读写访问用户列表 valid users=user,group /指定允许登录到此服务的用户列表 Samba服务器服务器2.普通共享参数 Invalid users =user,group /指定不使用服务的用户列表;public=yes/no /设置共享资源是否允许所有用户 guest ok=yes/no /设置guest账号权限 guest only=yes/no /设置共享目录是否只允许guest访问 force user=nobody /指定一个UNIX用户名,该用户名被指定为连接到此服务器的所有用户的默认用户,这对共享文件很有用,任何用户登录后都将以“强制用户”的身份执行 keepalive=300 /表示保持活动时间的秒数。
printable=no /设置是否允许访问用户使用打印 create mask=0644 /设置共享目录下创建文件的默认权限directory mask=0755 /设置共享目录下创建子目录的默认权限max connections=300 /设置限制同时连接服务器的数量 Samba服务器服务器Smb.conf的默认设置如下:global workgroup=SAMBA security=user passdb backend=tdbsam printing=cups printcap name=cups load printers=yes cups options=rawhomes comment=Home Directories valid users=%S,%D%w%S browseable=No read only=No inherit acls=Yes Samba服务器服务器Smb.conf的默认设置如下:printers comment=All Printers path=/var/tmp printable=Yes create mask=0600 browseable=Noprint$comment=Printer Drivers path=/var/lib/samba/drivers write list=printadmin root force group=printadmin create mask=0664 directory mask=0775 Samba服务器服务器/etc/samba/smb.conf注释符号注释符号#;语法语法配置项配置项 值值分段设置(全局段)分段设置(全局段)Samba服务器服务器/etc/samba/smb.conf共享资源段配置共享资源段配置(用户根目录)(用户根目录)可以被网络浏览可以被网络浏览可写访问可写访问 Samba服务器服务器 10.2.3 建立samba用户 1.smbpasswd命令格式:smbpasswd 选项 用户名 功能:将Linux用户设置为Samba用户 -a 用户名 增加samba用户 -d 用户名 暂时锁定指定的samba用户 -e 用户名 解锁指定的samba用户 -n 用户名 设置指定的的samba用户无密码 -x 用户名 删除samba用户例如:将名为u1的Linux用户设置为Samba用户rootlocalhost#smbpasswd a u1 Samba服务器服务器 10.2.3 建立samba用户2.pdbedit 命令格式:pdbedit 选项 用户名 功能:将Linux用户设置为Samba用户 -a 用户名 增加samba用户 -r 用户名 修改samba用户 -v 用户名 查看samba用户信息 -x 用户名 删除samba用户 -L 显示所有用户例如:将名为u2的Linux用户设置为Samba用户。
rootlocalhost#pdbedit-a u2 Samba服务器服务器/etc/samba/smbusers WindowsSAMBA Serveradministratorroot Samba服务器服务器例例10-1 Samba服务器配置实例服务器配置实例 1.架设架设用户级别用户级别的的Samba服务器;服务器;2.用户可访问用户可访问/usr/share目录目录 3.设置设置samba服务器所在工作组为服务器所在工作组为workgroup;netbios name名为名为myserver 4.允许允许19.168.1,0 网段对共享目录有只读访问权限网段对共享目录有只读访问权限 5.来宾账号使用来宾账号使用pyh,6.windows访问访问Samba服务器服务器 Samba服务器服务器 配置步骤如下:配置步骤如下:1)修改修改Linux配置文件配置文件利用文本编辑工具对/etc/samba/smb.conf进行编辑rootlocalhost#vim /etc/samba/smb.confglobalworkgroup=workgroup /设置工作组设置工作组netbios name=myserver /设置服设置服务器名称务器名称security=user /设置安全级别设置安全级别为用户为用户passdb backend=tdbsam /指定存储账号指定存储账号后台后台guest account=pyh /指定pyh作为guest账号 Samba服务器服务器 配置步骤如下:1)修改修改Linux配置文件配置文件利用文本编辑工具对/etc/samba/smb.conf进行编辑。
rootlocalhost#vim /etc/samba/smb.conf share path=/usr/share /共共享享/usr/share下的文件下的文件 public=no /目录不可写入目录不可写入 browseable=yes 。
