欢迎光临
我们一直在努力

在CentOS 7上安装和配置Samba服务器

本指南介绍如何在CentOS 7中使用匿名和安全的samba服务器配置samba服务器。 Samba是一个开源/免费软件套件,可为SMB / CIFS客户端提供无缝文件和打印服务。 与其他SMB / CIFS实现不同,Samba可以免费使用,并允许Linux / Unix服务器和基于Windows的客户端之间的互操作性。

1初步说明

我有一个新安装的CentOS 7.0服务器,我将在其上安装samba服务器。 当然,您需要有一台Windows机器来检查必须使用CentOS 7.0服务器可以访问的samba服务器。 我的Centos 7.0服务器的主机名为server1.example.com &IP为192.168.0.100

注意:

  • Windows机器必须在同一个工作组上。 要检查Windows机器中的值,请在cmd提示符下运行命令

net config workstation

会是这样的

您的Windows机器必须与CentOS 7.0服务器相同的Workstation域,即在我的情况下为WORKGROUP

  • 要使Windows机器在Windows中可以进行如此进行。 在运行终端并添加您的服务器IP地址的条目

notepad C:\Windows\System32\drivers\etc\hosts

在我的情况下,就是这样,只是保存值。

[...]
192.168.0.100 server1.example.com centos

2匿名Samba分享

首先,我将解释安装Samba与匿名分享的方法。 要安装samba run,

yum install samba samba-client samba-common

它将安装samba与版本4.1.1。

现在要在进行更改之前配置samba编辑文件/etc/samba/smb.conf ,我将把原始文件备份为 /etc/samba/smb.conf.bak

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

进一步给出这样的条目

vi /etc/samba/smb.conf

[global]workgroup = WORKGROUPserver string = Samba Server %vnetbios name = centossecurity = usermap to guest = bad userdns proxy = no#============================ Share Definitions ============================== [Anonymous]path = /samba/anonymousbrowsable =yeswritable = yesguest ok = yesread only = no

mkdir -p /samba/anonymous
systemctl enable smb.service
systemctl enable nmb.service
systemctl restart smb.service
systemctl restart nmb.service

进一步的CentOS 7.0 Firewall-cmd将阻止samba访问,以摆脱我们将运行:

firewall-cmd –permanent –zone=public –add-service=samba

[[email protected] ~]# firewall-cmd --permanent --zone=public --add-service=sambasuccess[[email protected] ~]#

firewall-cmd –reload

[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#

现在您可以访问Windows中的Centos 7.0共享,如下所示,转到运行提示并键入\\ centos

\\centos

从Windows机器只是浏览文件夹,并尝试创建一个文本文件,但你会得到一个权限被拒绝的错误。

检查共享文件夹的权限。

ls -l

drwxr-xr-x. 2 root root 6 Jul 17 13:41 anonymous
[[email protected] samba]#

允许匿名用户授予权限如下:

cd /samba

chmod -R 0755 anonymous/
chown -R nobody:nobody anonymous/

ls -l anonymous/

total 0
drwxr-xr-x. 2 nobody nobody 6 Jul 17 13:41 anonymous
[[email protected] samba]#

此外,我们需要允许SELinux进行samba配置,如下所示:

chcon -t samba_share_t anonymous/

现在匿名用户可以浏览并创建文件夹内容。

您也可以在服务器上检查内容。

ls -l anonymous/

total 0
-rwxr–r–. 1 nobody nobody 0 Jul 17 16:05 anonymous.txt
[[email protected] samba]#

3.安全的Samba服务器

因此,我将创建一个组smbgrp &user srijan以正确的身份验证访问samba服务器。

groupadd smbgrp

useradd srijan -G smbgrp

smbpasswd -a srijan

[[email protected] samba]# smbpasswd -a srijanNew SMB password:<--yoursambapasswordRetype new SMB password:<--yoursambapasswordAdded user srijan.[[email protected] samba]#     

现在创建一个名称保护/ samba文件夹中的文件夹,并提供如下权限:

mkdir -p /samba/secured

再次,我们必须允许通过SELinux来聆听:

cd /samba
chmod -R 0777 secured/
chcon -t samba_share_t secured/

再次将配置文件编辑为:

vi /etc/samba/smb.conf

[...]
[secured] path = /samba/secured valid users = @smbgrp guest ok = no writable = yes browsable = yes

systemctl restart smb.service

systemctl restart nmb.service

进一步检查设置如下

testparm

[[email protected] samba]# testparm Load smb config files from /etc/samba/smb.confrlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)Processing section "[Anonymous]"Processing section "[secured]"Loaded services file OK.Server role: ROLE_STANDALONEPress enter to see a dump of your service definitions <--ENTER[global]	netbios name = CENTOS	server string = Samba Server %v	map to guest = Bad User	dns proxy = No	idmap config * : backend = tdb[Anonymous]	path = /samba/anonymous	read only = No	guest ok = Yes[secured]	path = /samba/secured	valid users = @smbgrp	read only = No[[email protected] samba]# 

现在在Windows机器上检查文件夹现在具有正确的凭据

你会再次面临权限的问题给用户srijan的写权限:

cd /samba
chown -R srijan:smbgrp secured/

现在samba用户有权写入文件夹。 干杯,你在CentOS 7.0中做了samba服务器:)

赞(0) 打赏
未经允许不得转载:老赵部落 » 在CentOS 7上安装和配置Samba服务器

评论 抢沙发