如何在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文件共享服务。