分享最新优惠信息
购买主机更加划算

RHEL、CentOS及Fedora系统安装Samba服务器详细教程

Samba是一个流行开源且被广泛使用的应用程序,它最终使得用户能够从同一网络上的任何Windows机器访问Linux共享目录。

Samba也称为网络文件系统,可以安装在Linux/Unix操作系统上。Samba本身是SMB(服务器消息块)和CIFS(通用 Internet 文件系统)的客户端/服务器协议。

使用Windows smbclient ( GUI ) 或文件浏览器,最终用户可以从任何Windows工作站连接到Samba服务器以访问共享文件和打印机。

samba

本文将简单介绍如何在RHEL、CentOS以及Fedora系统上安装Samba 服务器(文件服务器),同时还将介绍如何配置它以使用SMB协议通过网络共享文件,以及介绍如何在Samba用户的数据库上创建和添加系统用户。

为了便于操作演示,本文将使用主机名为tecmint的RHEL 8 系统,IP为192.168.43.121。

在RHEL中安装和配置Samba

要开始使用samba,需要安装samba核心包和samba-client包,命令如下:

# dnf install samba samba-common samba-client

在RHEL中安装 Samba

安装完所有的samba之后,需要为samba共享目录配置适当的权限和所有权,以便与同一本地网络中的所有客户端计算机共享,命令如下:

# mkdir -p /srv/tecmint/data
# chmod -R 755 /srv/tecmint/data
# chown -R  nobody:nobody /srv/tecmint/data
# chcon -t samba_share_t /srv/tecmint/data

接下来需要在文件中配置Samba共享目录smb.conf,这是Samba的主要配置文件。

# mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
# vim /etc/samba/smb.conf

添加以下配置行,这些行定义有关谁可以访问网络上的samba共享策略。

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = rocky-8
security = user
map to guest = bad user
dns proxy = no
ntlm auth = true


[Public]
path =  /srv/tecmint/data
browsable =yes
writable = yes
guest ok = yes
read only = no

保存并退出配置文件。

接下来,验证samba配置是否有错误。

# testparm

测试Samba配置

如果一切正常的话,请确保启动、启用和验证Samba守护程序的状态。

# systemctl start smb
# systemctl enable smb
# systemctl start nmb
# systemctl enable nmb
# systemctl status smb
# systemctl status nmb

启动Samba服务

从Windows访问Samba共享目录

要从Windows机器访问Samba共享目录,请按Windows图标+R以启动运行对话框,同时输入Samba服务器的 IP地址,如下图所示。

从 Windows访问Samba共享

连接后,你看到/srv/tecmint/data目录中samba 共享的“Public”目录。

Samba共享目录

‘ Public ‘ 目录是空的,因为没有在Samba共享中创建任何文件,接下来使用以下命令创建一些文件。

# cd /srv/tecmint/data
# touch file{1..3}.txt

创建文件后,请尝试访问Samba 的“Public ”文件夹以查看文件。

查看Samba共享文件

这样就成功的配置并从Windows系统访问了samba 共享目录,但是,任何具有编辑和删除文件权限的人都可以访问此目录,当存储重要文件时,不建议这样做。

所以,在下面内容中,将简单介绍如何保护samba 共享目录。

在RHEL中保护Samba共享目录

为了保护Samba 共享,需要创建一个新的samba用户。

# useradd smbuser
# smbpasswd -a smbuser

接下来,创建一个新组并将新的samba用户添加到该组中。

# sudo groupadd smb_group
# sudo usermod -g smb_group smbuser

此后,创建另一个安全的samba共享目录,以便samba用户安全地访问文件。

# mkdir -p /srv/tecmint/private
# chmod -R 770 /srv/tecmint/private
# chcon -t samba_share_t /srv/tecmint/private
# chown -R root:smb_group /srv/tecmint/private

再次访问Samba配置文件。

# vi /etc/samba/smb.conf

添加这些行来定义以保护samba共享。

[Private]
path = /srv/tecmint/private
valid users = @smb_group
guest ok = no
writable = no
browsable = yes

保存更改并退出。

最后,输入以下命令重新启动所有samba守护进程。

$ sudo systemctl restart smb
$ sudo systemctl restart nmb

现在尝试访问Samba共享,这次将会看到一个额外的“Private”目录。要访问此目录,需要使用Samba用户登录凭据进行身份验证,如下图所示。

Samba用户登录

此外,要从Linux服务器访问Samba共享目录,首先需要安装samba-client包并尝试连接。

# dnf install samba-client 
# smbclient ‘\2.168.43.121\private’ -U smbuser

从Linux访问Samba共享目录

总结

以上简单介绍了在RHEL、CentOS和Fedora系统中安装和配置Samba的全部内容,设置过程仅供参考。

如果大家需要在Windows电脑上访问Linux服务器共享目录的话,那么不妨安装Samba服务器进行访问,非常的方便和好用,当然具体的安装过程不清楚的话可以参考上述教程。

未经允许不得转载:惠主机 » RHEL、CentOS及Fedora系统安装Samba服务器详细教程