跳至正文

CentOS 7.9 安装配置 Samba 服务

  • 运维

安装

yum -y install samba samba-common samba-client

备份smb.conf

mv /etc/samba/smb.conf /etc/samba/smb.conf.backup

新建 Samba 配置文件 smb.conf

vi /etc/samba/smb.conf

配置 Samba

[global]
workgroup = LANCENT
server string = Ted Samba Server %v
netbios name = CentOS
security = user
map to guest = Bad User
passdb backend = tdbsam

[wwwroot]
comment = Project development directory
path = /www/wwwroot
valid users = yunkui
write list = yunkui
printable = no
create mask = 0644
directory mask = 0755

配置说明:

[shared]
# 共享文件目录描述
comment = Shared Directories
# 共享文件目录
path = /home/shared/
# 是否允许 guest 访问
public = no
# 指定管理用户
admin users = yunkui
# 可访问的用户组、用户
valid users = @www
# 是否浏览权限
browseable = yes
# 是否可写权限
writable = yes
# 是否只读
read only = no
# 文件权限设置
create mask = 0644
directory mask = 0755
force directory mode = 0755
force create mode - 0644

创建用户

groupadd www
useradd yunkui -g www -s /sbin/nologin
smbpasswd -a yunkui

创建文件夹并修改文件夹用户权限

mkdir /www/wwwroot
chown -R yunkui:www /www/wwwroot

批量修改文件夹的权限

find /www/wwwroot -type d|xargs chmod 755
find /www/wwwroot -type f|xargs chmod 644

启动Samba服务,设置开机启动

systemctl start smb
systemctl enable smb

查看samba信息

#查看samba的状态
systemctl status smb

#查看Samba服务进程
ps -ef | grep -E 'smb|nmb'

#查看Samba应用服务端口
grep -E 'smbd|nmbd'

设置防火墙,开放端口并重载防火墙

firewall-cmd --zone=public --add-port=139/tcp --permanent
firewall-cmd --zone=public --add-port=445/tcp --permanent
systemctl reload firewalld.service

也可以直接关闭防火墙

#停止服务
systemctl stop firewalld.service

#关闭开机启动
systemctl disable firewalld.service

重启samba服务

systemctl restart smb

常见问题:

如果能访问服务器,但某些配置的共享文件夹不能访问,可能是 SELinux 的问题。

vi /etc/sysconfig/selinux

# 修改 SELINUX 设置为:
SELINUX=disabled

# 修改保存后执行以下命令:
setenforce 0
标签: