LINUX网络第五章:网络文件共享服务

发布时间:2024年01月20日

目录

一.网络文件共享服务原理内容

1.存储类型

2.应用场景?

3.总结

二.FTP——文件传输协议

1.工作原理介绍

2.vsftpd软件

2.1使用ftp

2.2延伸——FileZilla

?编辑

2.3修改默认端口号

?编辑2.4主动模式端口

2.5被动模式端口

2.6匿名用户登录

?编辑2.7匿名用户上传

?编辑2.8匿名用户下载删除文件

2.8.1下载?

?编辑?编辑?编辑2.8.2删除

?编辑2.9指定匿名用户上传文件的默认的所有者和权限

?编辑2.10禁锢用户

2.11提示信息

?编辑2.12传输速率


一.网络文件共享服务原理内容

1.存储类型

存储类型分为三种

  • 直连式存储:Direct-Attached Storage,简称DAS
  • 存储区域网络:Storage Area Network,简称SAN(可以使用空间,管理也是你来管理)
  • 网络附加存储:Network-Attached Storage,简称NAS(存储和管理空间都在远程)

2.应用场景?

DAS

DAS存储是最常见的一种存储方式,尤其是在中小企业应用中。PC中的硬盘或只有一个外部SCSI接口的JBOD都属于DAS架构。DAS是指存储设备直接连接到服务器总线上,存储设备只与一台独立的主机连接,其他主机不能使用这个存储设备。DAS存储设备与服务器主机之间的连接通道通常采用SCSI连接,DAS存储设备主要是磁盘阵列(RAID: Redundant Arrays of Independent Disks)、磁盘簇JBOD:Just a Bunch Of Disks)等。

NAS?

NAS存储就是存储设备通过标准的网络拓扑结构(比如以太网)添加到一群计算机上。与DAS以及SAN不同,NAS是文件级的存储方法。采用NAS较多的功能是用来进行文件共享。NAS存储也通常被称为附加存储,顾名思义,就是存储设备通过标准的网络拓扑结构(例如以太网)添加到一群计算机上。NAS是文件级的存储方法,它的重点在于帮助工作组和部门级机构解决迅速增加存储容量的需求。如今更多的亲们采用NAS较多的功能是用来文档共享、图片共享、电影共享等等,而且随着云计算的发展,一些NAS厂商也推出了云存储功能,大大方便了企业和亲们等个人用户的使用。NAS产品是真正即插即用的产品。NAS设备一般支持多计算机平台,用户通过网络支持协议可进入相同的文档,因而NAS设备无需改造即可用于混合Unix/Windows NT局域网内,同时NAS的应用非常灵活。但NAS有一个关键性问题,即备份过程中的带宽消耗。与将备份数据流从LAN中转移出去的存储区域网(SAN)不同,NAS仍使用网络进行备份和恢复。NAS 的一个缺点是它将存储事务由并行SCSI连接转移了网络上。这就是说LAN除了必须处理正常的最终用户传输流外,还必须处理包括备份操作的存储磁盘请求

SAN?

存储区域网络,这个是通过光纤通道或以太网交换机连接存储阵列和服务器主机,最后成为一个专用的存储网络。SAN经过十多年历史的发展,已经相当成熟,成为业界的事实标准(但各个厂商的光纤交换技术不完全相同,其服务器和SAN存储有兼容性的要求)

  • DAS虽然比较古老了,但是还是很适用于那些数据量不大,对磁盘访问速度要求较高的中小企业
  • NAS多适用于文件服务器,用来存储非结构化数据,虽然受限于以太网的速度,但是部署灵活,成本低
  • SAN则适用于大型应用或数据库系统,缺点是成本高、较为复杂

3.总结

DASNASSAN
传输类型SCSI、FCIPIP、FC、SAS
数据类型数据块文件数据块
典型应用任何文件服务器数据库应用
优点

磁盘与服务器分离

便于统一管理

不占用应用服务器资源

广泛支持操作系统

扩展较容易

即插即用,安装简单方便

高扩展性

高可用性

数据集中,易管理

缺点

连接距离短

数据分散,共享困难

存储空间利用率不高

扩展性有限

不适合存储量大的块级应用

数据备份及恢复占用网络带宽

相比NAS成本较高

安装和升级比NAS复杂

二.FTP——文件传输协议

1.工作原理介绍

文件传输协议:File Transfer Protocol 早期的三个应用级协议之一,基于C/S结构

数据传输格式:二进制(默认)和文本

双通道协议:命令和数据连接 21 命令端口(权限,认证) 20数据端口(真实传数据)

两种模式:从服务器角度

主动(PORT style):服务器开启20端口主动连接客户端,传递数据

命令(控制):客户端:随机port ---> 服务器:21/tcp

数据:客户端:随机port <---服务器:20/tcp

服务端主动开启tcp/20端口 去传输数据给客户端

被动(PASV style):服务器开启随机端口,被动等待客户端连接,传递数据

命令(控制):客户端:随机port ---> 服务器:21/tcp

数据:客户端:随机port ---> 服务器:随机port /tcp

被动模式:服务器开启一个随机端口,被动等待客户端来连

用户认证:

  • 匿名用户:ftp,anonymous,对应Linux用户ftp root
  • 系统用户:Linux用户,用户/etc/passwd,密码/etc/shadow
  • 虚拟用户:特定服务的专用用户,独立的用户/密码文件

2.vsftpd软件

  • vsftpd官网: https://security.appspot.com/vsftpd.html
  • 用户认证配置文件:/etc/pam.d/vsftpd
  • 配置文件/etc/vsftpd/vsftpd.conf
  • 主配置文件/usr/lib/systemd/system/vsftpd.service

用户和其共享目录

  • 匿名用户(映射为系统用户ftp )共享文件位置:/var/ftp
  • 系统用户共享文件位置:用户家目录
  • 虚拟用户共享文件位置:为其映射的系统用户的家目录

vsftpd软件是使用21端口

2.1使用ftp

客户端可以在服务端使用的命令

可以人为指定被动或主动模式?

客户端登入的位置是在服务端的/var/ftp下? ?客户端的根就是服务端/var/ftp文件夹

ftp客户端看到的时间是格林威治时间

可以更改ftp客户端到达服务端的指定位置

退出ftp可以使用Ctrl + D 或者输入quit进行退出

! + 命令? ?可以在客户端本地输入命令?(客户端登入服务端之后在客户端本地输入命令)

2.2延伸——FileZilla

FTP是Linux客户端

FileZilla是Windows客户端

WIndows也可以查看ftp

2.3修改默认端口号

2.4主动模式端口

connect_from_port_20=YES 主动模式端口为20
ftp_opt_port=20 (默认) 指定主动模式的端口

2.5被动模式端口

pasv_min_port=6000   0为随机分配,端口范围会影响客户端的并发数
pasv_max_port=6010
 
#指定客户端只能连接范围为6000-6010  客户端只能连接11台

2.6匿名用户登录

anonymous_enable=YES 支持匿名用户,CentOS8 默认不允许匿名
no_anon_password=YES 匿名用户略过口令检查 , 默认NO

2.7匿名用户上传

只对ftp执行读写执行权限

上传

2.8匿名用户下载删除文件

在 vsftpd 软件中 只可以 下载有 读权限的文件, 没有读权限的文件时不可以直接下载的需要修改下面的选项

2.8.1下载?
anon_world_readable_only=NO  只能下载全部读的文件, 默认YES
anon_umask=0333              指定匿名上传文件的umask,默认0077,注意:0333中的0不能省略
anon_other_write_enable=YES  可删除和修改上传的文件,默认NO
2.8.2删除
[root@node2 pub]#vim /etc/vsftpd/vsftpd.conf
anon_other_write_enable=YES

2.9指定匿名用户上传文件的默认的所有者和权限

匿名用户上传文件默认的所有者是ftp 用户 是可以修改的

chown_uploads=YES        #默认NO
chown_username=ghd
chown_upload_mode=0644

2.10禁锢用户

禁锢所有系统用户在家目录中

chroot_local_user=YES #禁锢系统用户,默认NO,即不禁锢

未修改配置前还可以切换目录?

重启服务

[root@node2 ~]#ftp 192.168.241.11
#禁锢后 会 将ghd用户 的家目录作为根, 默认ftp服务的加目录是不能有写权限
Connected to 192.168.241.11 (192.168.241.11).
220 (vsFTPd 3.0.2)
Name (192.168.241.11:root): ghd
331 Please specify the password.
Password:
500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list
Login failed.
ftp> cd /
421 Service not available, remote server has closed connection
 
#此处 所有的 用户 家目录权限需要修改

禁锢用户开启白名单和黑名单

chroot_list_enable=YES     #默认是NO
chroot_list_file=/etc/vsftpd/chroot_list   #默认值
  
当chroot_local_user=YES和chroot_list_enable=YES时,则chroot_list中用户不禁锢,即白名单,在文件里的不禁锢
当chroot_local_user=NO和chroot_list_enable=YES时, 则chroot_list中用户禁锢,即黑名单,在文件里的 禁锢

2.11提示信息

ftpd_banner="welcome to kgc ftp server"
banner_file=/etc/vsftpd/ftpbanner.txt 

重启服务

2.12传输速率

[root@centos8 ~]#vim /etc/vsftpd/vsftpd.conf
anon_max_rate=1024000
local_max_rate=102400
[root@centos7 ~]#systemctl restart vsftpd
 
[root@centos7 ~]#dd if=/dev/zero of=/var/ftp/pub/bigfile bs=1M count=100
#生成测试文件

文章来源:https://blog.csdn.net/zk584715834/article/details/135649768
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。