如何在CentOS 7上搭建SMB服务

时间:2024-11-12 10:14:39

如何在CentOS 7上搭建SMB服务

因项目测试需求,需要自行搭建SMB服务,**SMB(Server Message Block)**协议是一种常用的文件共享方式,它可以让不同操作系统之间共享文件、打印机等资源。本文将带你一步步搭建一个简单的SMB服务,适用于CentOS 7系统。


1. 安装Samba

首先,确保你的系统中已安装Samba及其必要组件。打开终端并输入以下命令来安装:

sudo yum install samba samba-client samba-common

此命令会安装Samba服务器及其客户端工具。


2. 创建共享文件夹

选择或创建一个文件夹作为共享目录。为了便于管理,我们在/srv目录下创建一个名为shared的文件夹:

sudo mkdir /srv/shared

3. 创建Samba用户

Samba需要单独的用户认证。你需要为Samba添加一个用户,并设置密码:

sudo useradd sambauser       # 创建系统用户
sudo passwd sambauser         # 设置系统用户密码
sudo smbpasswd -a sambauser   # 将用户添加到Samba,并设置Samba专用密码

注意:sambauser可以替换为你想要的用户名。


4. 设置文件夹权限

确保共享文件夹的权限配置正确,以便Samba服务可以正常访问:

sudo chown -R sambauser:sambauser /srv/shared   # 设置文件夹所有权
sudo chmod 0775 /srv/shared                     # 设置文件夹权限
  • chown命令将文件夹的所有者和群组设置为sambauser
  • chmod 0775确保用户和群组具有读、写、执行权限,而其他用户只有读和执行权限。

5. 配置Samba

编辑Samba的配置文件/etc/samba/smb.conf

sudo nano /etc/samba/smb.conf

在文件末尾添加以下内容,以配置共享文件夹:

[shared]
   path = /srv/shared                # 指定共享文件夹路径
   available = yes                   # 设置共享资源可用
   valid users = sambauser           # 指定可以访问该共享的用户
   read only = no                    # 允许写入权限
   browsable = yes                   # 使共享资源可被浏览
   public = yes                      # 设置共享为公开的
   writable = yes                    # 允许写入权限

注意:将valid users中的sambauser替换为实际使用的用户名。


6. 启动和启用Samba服务

启动Samba服务,并设置为开机自启动:

sudo systemctl start smb
sudo systemctl start nmb
sudo systemctl enable smb
sudo systemctl enable nmb
  • smb服务提供文件共享功能。
  • nmb服务允许其他设备在网络上发现Samba服务。

7. 配置防火墙

确保防火墙允许Samba流量:

sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload

上述命令会开放防火墙中的Samba端口,使其他设备能够访问共享资源。


8. 访问共享文件夹

现在,你可以从Windows或其他Linux计算机访问共享文件夹。

  • 在Windows上:打开文件资源管理器,在地址栏中输入:

    \\<CentOS_IP>\shared
    

    <CentOS_IP>替换为你的CentOS服务器的IP地址。

  • 访问时,系统会提示输入用户名和密码,使用你在第3步中设置的用户名Samba密码即可。

在这里插入图片描述


结论

通过以上步骤,你已经成功在CentOS 7上搭建了一个Samba文件共享服务。