配置与管理Samba服务器
项目导入
是谁最先搭起Windows和Linux沟通的桥梁,并且提供不同系统间的共享服务,还能舞有强大的打印服务功能?答案就是Samba。Samba的应用环境非常广泛。当然 Samba的魅力还远远不止这些。
1.认识Samba
对于接触Linux的用户来说,听得最多的就是Samba服务,为什么是Samba 呢?原因是 Samba 最先在Linux和Windows 两个平台之间架起了一座桥梁。正是由于Samba的出现,我们可以在Linux系统和Windows系统之间互相通信,比如复制文件、实现不同操作系统之间的资源共享等。我们可以将其架设成一个功能非常强大的文件服务器,也可以将其架设成打印服务器提供本地和远程联机打印,甚至可以使用Samba 服务器完全取代Windows NT/2000/2003中的域控制器,使得域管理工作变得非常方便。
1.1了解Samba应用环境
文件和打印机共享:文件和打印机共享是 Samba的主要功能,通过SMB进程实现
资源共享,将文件和打印机发布到网络之中,以供用户访问。
身份验证和权限设置;smbd服务支持 user mode 和 domain mode等身份验证和权限设置模式,通过加密方式可以保护共享的文件和打印机。
名称解析:Samba通过nmbd服务可以搭建NBNS(NetBIOS Name Service)服务器,提供名称解析,将计算机的NetBIOS名解析为IP地址。
浏览服务:局域网中,Samba 服务器可以成为本地主浏览服务器(LMB),保存可用资源列表,当使用客户端访问Windows网上邻居时,会提供浏览列表,显示共享目录、打印机等资源。
1.2了解SMB协议
SMB(Server Message Block)通信协议可以看作是局域网上共享文件和打印机的一种协议。它是 Microsoft和 Intel在1987年制定的协议,主要是作为Microsoft网络的通信协议,而Samba 则是将SMB协议搬到UNIX系统上来使用。通过“NetBIOS over TCP/IP”,使用Samba不但能与局域网络主机共享资源,而且能与全世界的计算机共享资源。因为互联网上千千万万的主机所使用的通信协议就是TCP/IP。SMB是在会话层和表示层以及小部分应用层上的协议、SMB使用了 NetBIOS的应用程序接口API。另外,它是一个开放性的协议,允许协议扩展,这使它变得庞大而复杂,大约有65个最上层的作业,而每个作业都有超过120个函数。
1.3掌握Samba 的工作原理
Samba服务功能强大,这与其通信基于SMB协议有关。SMB不仅提供目录和打印机共享,还支持认证、权限设置。在早期,SMB 运行于NBT协议(NetBIOS over TCP/IP)上,使用UDP的137、138及TCP的139端口,后期SMB经过开发,可以直接运行于TCP/IP上且没有额外的NBT协议,使用TCP的445端口。
2.配置 Samba 服务
2.1安装并启动Samba 服务
建议在安装 Samba服务之前,使用rpm -qa | grep samba 命令检测系统是否安装了 Samba相关性软件包:
[root@CentOS7-1 ~]#rpm -qa | grep samba
如果系统还没有安装 samba 软件包,可以使用 yum 命令安装所需软件包。
(1)挂载ISO安装映像。
[root@CentOS7-1~]# mkdir /iso
[root@CentOS7-1 ~]# mount /dev/cdrom /iso
mount: /dev/sr0 is write-protected, mounting read-only
(2)制作用于安装的yum源文件。dvd.repo文件的内容如下:
# /etc/yum.repos.d/dvd.repo
# or for ONLY the media repo, do this:
# yum --disablerepo=\* --enablerepo=c6-media [command]
[dvd]
name=dvd
baseurl=file:///iso //特别注意本地源文件的表示,3个“/”
gpgcheck=0
enabled=1
(3)使用yum命令查看samba软件包的信息。
[root@CentOS7-1~]# yum info samba
(4)使用yum 命令安装 samba服务。
[root@CentOS7-1 ~]# yum clean all //安装前先清除缓存
[root@CentOS7-1~]# yum install samba -y
(5)所有软件包安装完毕,可以使用rpm命令再一次进行查询:rpm -qa | grep samba。
[root@CentOS7-1~]# rpm -qa | grep samba
samba-common-tools-4.6.2-8.el7.x86_64
samba-common-4.6.2-8.el7.noarch
samba-common-libs-4.6.2-8.el7.x86_64
samba-client-libs-4.6.2-8.el7.x86_64
samba-libs-4.6.2-8.el7.x86_ 64
samba-4.6.2-8.el7.x86 64
(6)启动与停止samba服务,设置开机启动。
[root@CentOS7-1 ~]# systemctl start smb
[root@CentOS7-1 ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
[root@CentOS7-1 ~]# systemctl restart smb
[root@CentOS7-1~]# systemctl stop smb
[root@CentOS7-1 ~]# systemctl start smb
注意:在 Linux的服务中,更改了配置文件后,一定要记得重启服务,让服务重新加载配置文件,这样新的配置才可以生效。(start/restart/reload)