网络文件系统(samba、nfs、iscsi)

samba服务简介

1、smb协议

smb(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同操作系统的计算机之间提供文件及打印机等资源的共享服务。SMB 协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。

2、ftp 服务 与 samba 服务对比

(1)ftp 的优缺点:
优点:文件传输、应用层协议、可跨平台
缺点:只能实现文件传输,无法实现文件系统挂载;无法直接修改服务器端文件!
(2)Samba 的特性:
使用 smb/cifs 协议、可跨平台、可实现文件系统挂载、可实现服务器端修改文件

作用:
windows系统共享文件时用到的协议smb
smb是由miscrosoft+sun

Linux 系统用到的是cifs
CIFS 是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS 使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS在高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文本传输协议和超文本传输协议的一个实现

samba基本信息

服务启动脚本 smb.service
主配置目录 /etc/samba
主配置文件 /etc/samba/samba.conf
安全上下文 samba_share_t
端口 139 445
安装包 samba samba-common

vim /etc/selinux/config
开启火墙!
在这里插入图片描述
重新配置网络
在这里插入图片描述

在这里插入图片描述安装服务!
dnf install samba-common.noarch samba.x86_64 samba-client -y
在这里插入图片描述
先查看本地用户!
在这里插入图片描述
然后添加samba用户!必须是本地有的用户!
在这里插入图片描述

列出用户然后删掉lee用户!
在这里插入图片描述
开启smb服务
在这里插入图片描述
在火墙里面 添加smb服务
在这里插入图片描述列出共享目录!
在这里插入图片描述
列出用户的共享目录!
在这里插入图片描述
然后把用户访问自己的家目录权限打开
因为selinux默认是拒绝的!
在这里插入图片描述
然后就可以访问用户的目录了!
在这里插入图片描述

samba服务共享目录

先创建目录然后建立文件!
在这里插入图片描述
然后备份服务配置文件
在这里插入图片描述
因为/mnt为系统文件,所以需要修改安全上下文!
然后更新!
在这里插入图片描述
配置文件里面编辑共享目录!
在这里插入图片描述
systemctl restart smb
##重启samba服务
利用本地用户列出共享目录!
在这里插入图片描述

在这里插入图片描述

查看/mnt的属性并访问共享目录!

在这里插入图片描述

在这里插入图片描述
然后把读写权限打开
在这里插入图片描述

在这里插入图片描述

samba的访问控制

hosts allow = 172.25.254.129
##当写到单独共享时只对此共享生效 host deny = 172.25.254.129

在这里插入图片描述

hosts deny = 172.25.254.129
##所有smb共享只有129主机不能访问
##黑名单
##重启服务
在这里插入图片描述然后访问共享文件被拒绝!!
在这里插入图片描述然后注释掉 在访问即可 访问成功! 记得重启服务
在这里插入图片描述

在这里插入图片描述
hosts allow = 172.25.254.129
##所有smb共享只能在129主机访问
##白名单
##重启服务
在这里插入图片描述发现只有129可以访问!
。

对于局部的设置 添加在 每个文件配置下面!
在这里插入图片描述

在这里插入图片描述
若是在下面添加valid users = +lee 说明只允许用户lee查看共享目录!

samba的常用配置参数

writable = yes ##可写
chmod 777 /westos
systemctl restart smb.service
在这里插入图片描述
然后发现 可以在共享的时候 创建目录!
在这里插入图片描述

指定用户可写

write list = lee ##指定用户可写
vim /etc/samba/smb.conf
write list = lee
systemctl restart smb.service
在这里插入图片描述
会发现可以用户lee可以写,westos不可以!
在这里插入图片描述
然后挂载到 mnt下面 观察是否可写!

发现用户westos写的时候被拒绝了!

在这里插入图片描述
而lee用户在写的时候 是可以的!
在这里插入图片描述

是否隐藏共享

browseable = yes|no ##是否隐藏共享
vim /etc/samba/smb.conf
browseable = yes
systemctl restart smb.service
smbclient -L //172.25.254.129

首先不隐藏 可以发现是可以看到 全部目录的!
在这里插入图片描述

在这里插入图片描述
若是隐藏共享目录 如下!
在这里插入图片描述
发现 目录WESTOS不见了!
在这里插入图片描述

允许匿名用户访问

man to guest = bad user ##写到全局设定中
browseable = yes
guest ok = yes ##允许匿名用户访问
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
发现匿名用户可以直接挂载!
在这里插入图片描述

samba多用户挂载

首先将samba服务的配置该回去!
在这里插入图片描述

在这里插入图片描述
然后 查看目录westoss的权限!
在这里插入图片描述

挂载 权限变为 全部人可写
在这里插入图片描述

客户端出现问题:
未认证的用户(westos)可看远程samba服务器上的共享资源
行为不合理,出现用户访问漏洞
所以需要
安装samba认证的安全插件!
在这里插入图片描述
然后编写 之可写用户的文件!
在这里插入图片描述
然后以这个配置文件为挂载名
在这里插入图片描述
切换用户发现查看权力被拒绝
在这里插入图片描述
查看系统版本!
在这里插入图片描述
然后在服务器上认证用户westos可以查看!
在这里插入图片描述
然后发现可以 在用户westos下面 查看到共享挂载的文件了
在这里插入图片描述
然后创建一个目录
在这里插入图片描述
查看用户所有权发现是用户westos创建的文件
在这里插入图片描述

NFS

NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。

特点:

(1)提供透明文件访问以及文件传输;

(2)容易扩充新的资源或软件,不需要改变现有的工作环境;

(3) 高性能,可灵活配置。

nfs基本信息

Net File System
nfs-utils ##安装包
nfs-server ##服务脚本
/etc/exports ##共享配置文件

nfs启用

服务端:
1.安装软件
dnf install nfs-utils -y
2.开启服务
systemctl enable --now nfs-server
3.连接服务
showmount -e 172.25.254.211
4.火墙rpc-bind设置
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent -add-service=nfs
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload
5.删除mountd服务火墙设置
firewall-cmd --remove-service=mountd

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

nfs配置

vim /etc/exports
cat /etc/exports
exportfs -rv
showmount -e 172.25.254.211
firewall-cmd --list-all

在这里插入图片描述

客户端:测试!
systemctl stop firewalld
systemctl status firewalld
showmount -e 172.25.254.129
mount 172.25.254.211:/westos /media/
cd /media/
ls
在这里插入图片描述

然后把mountd服务 添加回来
在这里插入图片描述

nfs配置参数

anonuid=1000,anongid=1000 ##指定用户身份
sync ##更改生存后同步数据到服务器
async ##实时同步数据到服务器
rw ##读写
ro ##只读
no_root_squash ##root用户挂载不转换身份

服务端:
ll /westos
ls -ld /westos
vim /etc/exports
/westos *(ro,no_root_squash)
exportfs -rv

用root用户挂载不转换身份
在这里插入图片描述

然后再主机挂载之后建立文件 查看属性 ,文件所有人 所有组都是root!
在这里插入图片描述

在这里插入图片描述

更改用户所有人 所有组 为id1000! 然后建立文件
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

nfs+autofs

autofs:
在客户端实现自动挂载卸载的软件
客户端:
dnf install autofs -y
##安装软件autofs

在这里插入图片描述

cd /net/
systemctl enable --now autofs.service
cd /net/
ls -ld /net/

在这里插入图片描述

vim /etc/autofs.conf
##主配置文件

在这里插入图片描述

在这里插入图片描述

编写 进入mnt目录下 自动挂载的 文件夹名称为nfs
自动挂载 的内容为 /westoss下的东西!!!
在这里插入图片描述

切入目录下 会发现自动挂载!!
在这里插入图片描述然后设置自动取消挂载 五妙!!

在这里插入图片描述

然后五秒后 自动取消 但是 需要注意 要从 mnt/nfs目录下 切出来 不然不能取消挂载

在这里插入图片描述

autofs+samba

autofs:
在客户端实现自动挂载卸载的软件

客户端:
vim /etc/auto.master
##主挂载策略文件
/net -hosts
/media /etc/auto.samba
##最终挂载点的上层目录 自动挂载子策略文件
##编写最终挂载点的上层目录

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

开启服务
在这里插入图片描述
测试:
cd /media/
cd samba
df
可以看到挂载成功!!

在这里插入图片描述

iscsi

iSCSI(Internet Small Computer System Interface,发音为/ˈаɪskʌzi/),Internet小型计算机系统接口,又称为IP-SAN,是一种基于因特网及SCSI-3协议下的存储技术,由IETF提出,并于2003年2月11日成为正式的标准。与传统的SCSI技术比较起来,iSCSI技术有以下三个革命性的变化:

把原来只用于本机的SCSI协议透过TCP/IP网络发送,使连接距离可作无限的地域延伸;

连接的服务器数量无限(原来的SCSI-3的上限是15);

由于是服务器架构,因此也可以实现在线扩容以至动态部署.

实验准备:
服务端
添加5GB大小的硬盘
在这里插入图片描述

服务端

划分设备分区
fdisk -l
fdisk /dev/vdb

在这里插入图片描述

同步分区表

udevadm settle

在这里插入图片描述

安装共享软件,开启服务(服务端)

dnf install targetcli -y
##共享设备使用权
systemctl status targetd
systemctl enable --now target.service

在这里插入图片描述

在这里插入图片描述

进入target设定

targetcli
ls在这里插入图片描述

target共享

targetcli进入target设定!
/backstores/block create westos_storage /dev/vdb1

在这里插入图片描述

建立共享

/iscsi create iqn.2021-05.org.westos:storage
##年 月 域名反写 共享名

在这里插入图片描述

关联共享与设备

/iscsi/iqn.2021-05.org.westos:storage/tpg1/luns create /backstores/block/westos_storage

设定密码

/iscsi/iqn.2021-05.org.westos:storage/tpg1/acls create iqn.2021-05.org.westos:westoskey

在这里插入图片描述

ls
##查看效果

在这里插入图片描述

设定火墙

firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload、

在这里插入图片描述

客户端

安装客户端软件

fdisk -y
dnf install iscsi-initiator-utils.x86_64 -y

在这里插入图片描述

编辑key,重启服务

vim /etc/iscsi/initiator
InitiatorName=iqn.2021-02.org.westos:westoskey
systemctl restart iscsid

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

查看共享设备

iscsiadm -m discovery -t st -p 172.25.254.129

在这里插入图片描述

认证共享设备

iscsiadm -m node -T iqn.2021-02.org.westos:storage -p 172.25.254.211 -l
##-T 目标设备名称
##-t 设备类型
##-p 设备所在ip
##-l 登陆
在这里插入图片描述

查看设备

fdisk -l

在这里插入图片描述

fdisk /dev/sdb
n 回车 回车 回车 回车 y p wq

在这里插入图片描述

udevadm settle
mkfs.xfs /dev/sdb1

在这里插入图片描述

成功挂载

mount /dev/sdb1 /mnt/
df
cd
df

在这里插入图片描述

服务开机时自动启动

systemctl status iscsid
systemctl enable --now iscsid.service

在这里插入图片描述

在这里插入图片描述

试验结束时候

客户端:
永久删除设备
umount /mnt
##卸载设备
iscsiadm -m node -T iqn.2021-02.org.westos:storage -p 172.25.254.211 -u
##-u 登出
iscsiadm -m node -T iqn.2021-02.org.westos:storage -p 172.25.254.211 -o delete
##删除设备
在这里插入图片描述

服务端:
不共享设备
ls
cd
help
/iscsi delete iqn.2021-02.org.westos:storage
##delete,设备删除
clearconfig confirm=True
##clearconfig,清空服务器上的所有设定
在这里插入图片描述查看发现已经清空!!!
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Samba 是一个开源软件套件,它允许 Linux 和 UNIX 系统与 Windows 操作系统之间共享文件和打印机。Samba 通过实现 SMB/CIFS 协议,使得 Windows 客户端能够访问 Linux/UNIX 系统上的共享资源。 使用 Samba 文件共享系统,你可以在局域网内轻松地共享文件和打印机。以下是一些关于 Samba 的重要知识点: 1. 安装和配置:你需要在 Linux/UNIX 系统上安装 Samba 软件包,并进行相应的配置。配置文件一般为 /etc/samba/smb.conf,你可以在其中定义共享的文件夹和权限设置。 2. 共享文件夹:通过 Samba,你可以将指定的文件夹设置为共享文件夹,并控制对该文件夹的访问权限。你可以设置只读或读写权限,并可以限制特定用户或用户组的访问。 3. 认证和权限控制:Samba 支持多种认证方式,包括本地用户、LDAP、Active Directory 等。你可以根据需要配置不同的认证方式,并设置相应的用户权限。 4. 客户端访问:在 Windows 客户端上,你可以使用资源管理器或运行命令来访问 Samba 共享的文件夹。你需要输入正确的网络路径或 IP 地址,并进行身份验证(如果需要)。 5. 打印机共享:除了文件共享,Samba 还支持打印机共享。你可以将打印机设置为共享,并允许 Windows 客户端连接并使用打印机。 通过 Samba 文件共享系统,你可以方便地实现 Linux/UNIX 系统与 Windows 客户端之间的文件共享和打印机共享。它是一个功能强大且广泛使用的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dudududu--

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值