目录
一. 了解网络文件共享服务
1. 理解存储类型
1.1 存储类型分为三种
直连式存储:Direct-Attached Storage,简称DAS
存储区域网络:Storage Area Network,简称SAN(可以使用空间,管理也是你来管理)
网络附加存储:Network-Attached Storage,简称NAS(存储和管理空间都在远程)
1.2 三种存储方式的对比:
1.3 三种存储架构的应用场景
DAS虽然比较古老了,但是还是很适用于那些数据量不大,对磁盘访问速度要求较高的中小企业
NAS多适用于文件服务器,用来存储非结构化数据,虽然受限于以太网的速度,但是部署灵活,成本低
SAN则适用于大型应用或数据库系统,缺点是成本高、较为复杂
二. FTP文件传输协议
2.1 工作原理简述
文件传输协议:File Transfer Protocol是早期的三个应用级协议之一,基于C/S结构
数据传输格式:二进制(默认)和文本
双通道协议:命令和数据连接 21 命令端口(权限,认证) 20数据端口(真实传数据)
FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令
其分为两种工作模式:
从服务器角度
主动(PORT style)模式:服务器主动去连接客户端
命令(控制):客户端:随机port -----------> 服务器:21/tcp
数据:客户端:随机port <---------- 服务器:20/tcp
注:服务端会主动开启 tcp/20 端口去传输数据给客户端。
被动(PASV style)模式:服务器被动等待客户端连接
命令(控制):客户端:随机port ----------> 服务器:21/tcp
数据:客户端:随机port -------------> 服务器:随机port /tcp
注:服务端会开启随机端口,被动等待客户机去连接,客户机通过21命令通道来获取服务端的随机端口。
2.2 FTP服务状态码
1XX:信息 125:数据连接打开
2XX:成功类状态 200:命令OK 230:登录成功
3XX:补充类 331:用户名OK
4XX:客户端错误 425:不能打开数据连接
5XX:服务器错误 530:不能登录
2.3 常见FTP相关软件
FTP服务器端软件
Wu-ftpd,Proftpd,Pureftpd,Filezilla Server,Serv-U,Wing FTP Server,IIS
vsftpd:Very Secure FTP Daemon,是CentOS 默认FTP服务器,其具有高速,稳定,下载速度是WU-FTP的两倍等优点。
ftp.redhat.com数据:单机最多可支持15000个并发
2.2.1 vsftp 简述
首先yum安装该软件
其配置文件信息
配置文件所在路径:
默认命令端口号
listen_port==21 #默认值为21
在服务端配置文件下插入上述端口号,客户端连接时需要指明端口号,指明方式如下:
ftp 192.168.189.60 2121
主动模式端口
connect_from_port_20=YES #主动模式端口为20
ftp_data_port=20 (默认) # 指定主动模式的端口
被动模式端口
pasv_min_port=6000 # 0为随机分配,端口范围会影响客户端的并发数
pasv_max_port=6010
使用当地时间
use_localtime=YES # 使用当地时间(默认为NO,使用GMT)
格林威治时间 +8
匿名用户登录
anonymous_enable=YES #支持匿名用户,CentOS8 默认不允许匿名
no_anon_password=YES #匿名用户略过口令检查 , 默认NO
匿名用户上传
anon_upload_enable=YES #匿名上传,注意:文件系统权限
anon_mkdir_write_enable=YES #匿名建目录
chmod 777 /var/ftp/pub
匿名用户下载和删除文件
在 vsftpd 软件中 只可以下载有读权限的文件,没有读权限的文件时不可以直接下载,需要修改下面的选项,修改内容如下:
anon_world_readable_only=NO #只能下载全部读的文件, 默认YES
anon_umask=0333 #指定匿名上传文件的umask,默认077,注意:0333中的0不能略
anon_other_write_enable=YES #可删除和修改上传的文件,默认NO
指定匿名用户的上传文件的默认的所有者和权限
匿名用户上传文件默认的所有者是ftp用户是可以修改的,修改如下:
chown_uploads=YES #默认NO
chown_username=zhangsan
chown_upload_mode=0644
Linux系统用户
local_enable=YES #是否允许linux用户登录
write_enable=YES #允许linux用户上传文件
local_umask=022 #指定系统用户上传文件的默认权限对应umask
用户和其共享目录
匿名用户(映射为系统用户ftp )共享文件位置:/var/ftp
系统用户共享文件位置:用户家目录
虚拟用户共享文件位置:为其映射的系统用户的家目录
三. FTP具体实验
3.1 使用ftp客户端连接服务端
步骤一:在服务端下载相关软件vsftpd,并启动该服务软件,如下图:
步骤二:用客户端去连接ftp服务器,效果如下:
步骤三:相关服务的命令,如图所示:
3.2 利用ftp服务搭建内网yum仓库服务器
步骤一:关闭防火墙和核心防护,服务端下载vsftpd,作为ftp服务器。
安装好后记得开启ftp服务。
步骤二:详解如图所示:
服务端:
客户端:
上图中修改的配置文件
下载试试看,如下图:
3.3 通过http搭建内网yum仓库
步骤一:在服务端下载httpd服务,同理3.2实验,挂载目录,如下图:
下载之后记得开启httpd服务哦。
步骤二:在客户端下进行上述3.2实验同样的命令,具体操作如下:
配置文件如下:
清楚缓存,重新建立元数据:
下载一个服务试试看: