openEuler应用入门 06 - 搭建Windows文件共享服务

openEuler应用入门目录:

openEuler应用入门 - 前言

openEuler应用入门 01 - 安装openEuler操作系统

openEuler应用入门 02 - 使用FinalShell连接服务器

openEuler应用入门 03 - 搭建本地DNF源仓库

openEuler应用入门 04 - 安装DDE图形界面

openEuler应用入门 05 - 搭建FTP服务器

openEuler应用入门 06 - 搭建Windows文件共享服务

openEuler应用入门 07 - 搭建本地Docker镜像仓

openEuler应用入门 08 - 在服务器使用Docker

openEuler应用入门 09 - 使用Nginx

openEuler应用入门 10 - 使用WPS

openEuler应用入门 11- 安装openGuass数据库

openEuler应用入门 12- 连接openGuass数据库

openEuler应用入门 13- 使用防火墙

注:本文部分内容来源于官网文档。

搭建Windows文件共享

Samba简介

Samba是一个开源和最流行的广泛使用的程序,用户可以从同一网络上的任何 Windows 机器访问Linux共享目录。

Samba 也称为网络文件系统,可以安装在Linux/Unix操作系统上,Samba 本身是SMB(服务器消息块)和CIFS(通用 Internet 文件系统)的客户端/服务器协议。

使用 Windows smbclient ( GUI ) 或文件浏览器,最终用户可以从任何 Windows 工作站连接到 Samba 服务器以访问共享文件和打印机。

samba有五种安全级别,它们分别是:

share:不需要samba账户就可登陆samba服务器

user:需要添加samba账户才可以登陆samba服务器

server:由另外一台samba服务器来对用户进行身份验证。

domain:把samba服务器加入到NT域,由NT的域控制器来进行身份验证。

ADS:Active Directory Service,活动目录服务,它是samba3.0中新增的身份验证方式。采用ADS验证方式,samba服务器集成到活动目录中。

Samba 使用到的端口

Samba的正常工作需要使用到多个网络端口,使用 samba 服务器需要防火墙开放以下端口:

TCP 139,445

UDP 137,138

所以,在配置SAMBA前,应打开防火墙的这4个端口,可以通过DDE图形界面操作,也可以通过命令操作。

安装 Samba

安装 Samba

使用Samba需要安装Samba软件,在已经配置dnf源的情况下,通过root权限执行如下命令,即可完成Samba的安装。

首先用“rpm –qa |grep samba”命令检验系统samba服务是否安装。

#rpm -qa grep samba

如果已经安装了DDE图形界面,并且在图形界面中登录,也可以打开“终端”输入以下命令。

安装Samba。

#sudo dnf install samba -y

如果在系统安装时己经选择了“Windows文件共享”,则输入命令并回车后,会提示Samba己安装,不需要再安装了。

管理 Samba

启动、停止和重启Samba服务,请在root权限下执行对应命令。

启动Samba服务

#systemctl start smb

可以通过netstat命令查看通信端口21是否开启,如下显示说明vsftpd已经启动。

停止Samba服务

#systemctl stop smb

重启Samba服务

#systemctl restart smb

开机自动启动Samba服务

#systemctl enable smb

配置 Samba

修改selinux配置

查看selinux配置。

#getenforce Enforcing

修改selinux配置,可以通过命令行,也可以通过DDE图形界面修改。

#vim /etc/selinux/config

修改为SELINUX=permissive

保存重启。

share级别共享配置

这个级别的samba很简单,首先它不需要以用户和密码来验证登陆。

首先创建一个共享用的文件夹,并修改其权限。

#mkdir /home/share_files

#chown nobody /home/share_files

修改Samba的配置文件,也可以使用图形用户界打开文件修改。

#vi /etc/samba/smb.conf

修改后的配置如下

[global]

workgroup = SAMBA

netbios name = svlake01

security = user

map to guest = bad user

passdb backend = tdbsam

load printer = no

[share_files]

comment = share files

path = /home/share_files

writable = yes

browseable = yes

guest ok = yes

通过以上的配置文件登陆,那么Linux都认为是nobody这个用户。建立文件夹的所有者和所属组都是root,那么nobody用户对这个文件夹就是其他人权限,没有w写权限。前面说过,Linux所有的服务都是这样,不光需要配置文件服务开启,还需要Linux系统权限都打开,两者都开启,功能才能生效。vsftpd的匿名用户能不能上传是这样,samba也是这样。所以呢!需要更改文件的所有者为nobody,强烈不建议将一个目录的权限改为777,这非常的危险。

修改完成后,重启Samba服务。

user级别共享配置

设置账号用于登录samba服务器,同时并设置密码。

#useradd sambauser

#smbpasswd -a sambauser

建一个共享用的文件夹,并修改其权限。

#mkdir /home/share_files

#chown sambauser /home/share_files

修改Samba的配置文件,也可以使用图形用户界打开文件修改。

#vi /etc/samba/smb.conf

修改后的配置如下:

[global]

workgroup = SAMBA

netbios name = svlake01

security = user

map to guest = never

passdb backend = tdbsam

load printer = no

[share_files]

comment = share filess

path = /home/share_files

valid users = sambauser

writable = yes

browseable = yes

其中:

修改完成后,重启Samba服务。

使用Windows测试

使用Windows资源管理器进行测试。

Win键+E打开资源管理器中输入 【[\\IP地址】。

注意:分别测试share和user两种共享模式。

测试一种完成后,因为凭据问题,可能需要删除之前登录用的凭据。

在windows下,进入“控制面板\用户帐户和家庭安全\凭据管理器” 或者cmd命令control keymgr.dll

结合上图,“从保管库中删除”,将存在的共享IP的sambauser账户删除。

删除后,重启Workstations服务。没有上述凭据,直接重启Workstations服务,并重启SMB网络服务协议。

计算机—管理—服务 对Workstation服务进行重新启动

1 个赞

这是使用samba搭建文件共享吗?

是的,今晚就把内容发上来

:+1:

1 个赞

image