如何在 CentOS 上配置 Samba


本文将指导您在 CentOS 6.x 上配置 Samba 服务器,包括匿名和安全 Samba 文件夹。Samba 是一个开源/免费软件套件,它为 SMB/CIFS 客户端提供对文件服务的无缝访问。与其他工具不同,Samba SMB/CIFS 实现允许在 Linux 服务器和 Windows 客户端之间共享文件夹。

安装

使用以下命令安装 Samba 软件包:

# yum -y install samba
# mkdir /samba

授予 Samba 服务器文件夹权限

# chmod -R 0755 /samba/anonymous/

您需要修改 /etc/samba/smb.conf 文件中的 smb.conf 文件。

出于安全原因,我将原始文件的备份保存在 /etc/samba/smb.conf 中。

# cp /etc/samba.smb.conf /etc/samba.smb.conf.old

为了避免混淆,我将删除配置文件并使用以下命令创建一个新文件。

# rm -rf /etc/samba.smb.conf
# vi /etc/samba/smb.conf

配置文件设置

#======================= Global Settings =====================================
[global]
workgroup = WORKGROUP
security = share
map to guest = bad user
#============================ Share Definitions ==============================
[MyShare]
path = /samba/anonymous/
browsable =yes
writable = yes
guest ok = yes
read only = yes

启动 Samba 服务器服务

# service smb restart

从 Windows 访问共享

现在您可以从 Windows 计算机通过 \IP-ADDRES 访问共享,方法是:**开始** -> **运行**。(例如:\192.168.2.225)


保护 Samba 共享

由于我们共享的文件没有任何安全性,因此可能会丢失您的宝贵数据,为了安全起见,请执行以下设置。

# groupadd smbgrp
# useradd user1 -G sambagrp
# smbpasswd -a user1
Output:
New SMB password:<--yoursambapassword
Retype new SMB password:<--yoursambapassword

现在在 /samba 文件夹中创建一个名为 **secured** 的文件夹,并授予如下权限:

# mkdir -p /samba/secure
# cd /samba
# chmod -R 0777 /samba/secure/

再次编辑配置文件:

# vi /etc/samba/smb.conf
[...]
[secured]
path = /samba/secure
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes
# service smb restart

此外,请检查以下设置:

# testparm
Output:
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[Anonymous]"
Processing section "[secured]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions <--ENTER

使用匿名和安全两种方式编辑配置文件,以查看共享的差异。

# vi /etc/samba/smb.conf
Configuration file settings:
#======================= Global Settings =====================================
[global]
netbios name = CENTOS
server string = Samba Server %v
map to guest = Bad User
dns proxy = No
idmap config * : ackbend = tdb
#============================ Share Definitions ==============================
[Anonymous]
path = /samba
read only = No
guest ok = Yes
[secured]
path = /samba/secure
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes

现在您可以从 Windows 计算机通过 \IP-ADDRES 访问共享,方法是:**开始** -> **运行**。(例如:\192.168.2.225)

这将要求您输入用户名和密码,请输入用户名和密码(例如:user1 及 user1 的密码),现在您可以使用凭据访问安全文件夹。

**结论** - 配置和成功设置后,您现在可以访问 Linux 服务器上的 Windows 共享(或)NTFS 共享,以便在 Windows 和 Linux 计算机之间提供或共享数据,无论是否使用匿名访问,并且您可以为文件夹提供个人访问或组访问权限。

更新于: 2019-10-18

1K+ 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告