目录
三种存储类型
作用:
FTP文本传输协议
原理
FTP服务状态码
用户认证
常见FTP相关软件
vsftpd 软件介绍
用户和其共享目录
基础操作
安装服务端
客户端连接服务端
登录成功
匿名用户登录
1.服务端配置
2.客户端配置
3.服务端查看
匿名用户下载 删除文件
匿名用户的上传文件的默认的所有者和权限
Linux系统用户
禁锢系统用户
NFS
工作原理
NFS软件介绍
NFS工具
exportfs:可用于管理NFS导出的文件系统
showmount
实验NFS共享
1.服务端配置(192.168.17.55)
2.客户端配置(192.168.17.25)
DAS:直接附加存储(直连)
NSA:网络存储是一种将分布、独立的数据整合为大型、集中化管理的数据中心,以便于对不同主机和应用服务器进行访问的技术(网络附加存储)
SAN:它是一种将存储设备、服务器和网络设备连接起来,形成一个独立的网络结构,以实现数据的存储和备份的系统(存储区域网络)可以使用空间管理也是你来管理
DAS:它是一种将存储设备通过SCSI接口或光纤通道直接连接到服务器的方法。这种存储方式的数据传输速率和可靠性都比较高,而且安装和管理比较简单。DAS适用于数据存储量不大、数据访问频繁且数据变化不频繁的环境。
NSA:它以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽、提高性能、降低总拥有成本、保护投资。NSA网络存储设备可以在网络上作为一台设备使用,可以跨平台文件共享功能,同时具有高容量、高效能、高可靠的特点。
SAN:SAN可以实现数据的集中管理和保护,提高存储设备的利用率,同时可以保证数据的安全性和可靠性。SAN还可以提供多种存储服务,如数据备份、容灾、容错等,以满足不同用户的需求。
文件传输协议:File Transfer Protocol 早期的三个应用级协议之一,基于C/S结构
数据传输格式:二进制(默认)和文本
双通道协议:命令和数据连接 21 命令端口(权限,认证) 20数据端口(真实传数据)
两种模式:从服务器角度
主动(PORT style):服务器主动连接客户端
命令(控制):客户端:随机port ---> 服务器:21/tcp
数据:客户端:随机port <---服务器:20/tcp
被动(PASV style):服务器被动等待客户端连接
命令(控制):客户端:随机port ---> 服务器:21/tcp
数据:客户端:随机port ---> 服务器:随机port /tcp
1XX:信息 125:数据连接打开
2XX:成功类状态 200:命令OK 230:登录成功
3XX:补充类 331:用户名OK
4XX:客户端错误 425:不能打开数据连接
5XX:服务器错误 530:不能登录
匿名用户:ftp,anonymous,对应Linux用户ftp
系统用户:Linux用户,用户/etc/passwd,密码/etc/shadow
虚拟用户:特定服务的专用用户,独立的用户/密码文件
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个并发
vsftpd官网: https://security.appspot.com/vsftpd.html
由 vsftpd 包提供,不再由xinetd管理
用户认证配置文件:/etc/pam.d/vsftpd
配置文件:/etc/vsftpd/vsftpd.conf
匿名用户(映射为系统用户ftp )共享文件位置:/var/ftp
系统用户共享文件位置:用户家目录
虚拟用户共享文件位置:为其映射的系统用户的家目录
yum install vsftpd -y
systemctl start vsftpd
yum install ftp -y //安装客户端ftp服务
[root@localhost ~]# ftp 192.168.17.55 //连接服务端
Connected to 192.168.17.55 (192.168.17.55).
220 (vsFTPd 3.0.2)
Name (192.168.17.55:root): root //登录用户 ftp匿名用户
530 Permission denied.
Login failed.
ftp> //登录成功
ftp> help //查看帮助
ftp> ls //查看文件列表
ftp> passive //人为指定被动主动
Ctrl + D 退出
vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES //匿名上传,注意:文件系统权限
anon_mkdir_write_enable=YES //匿名建目录
[root@localhost opt]# touch 123.test
[root@localhost opt]# vim 123.test
[root@localhost opt]#
[root@localhost opt]# ftp 192.168.17.55
Connected to 192.168.17.55 (192.168.17.55).
220 (vsFTPd 3.0.2)
Name (192.168.17.55:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> put 123.test
local: 123.test remote: 123.test
227 Entering Passive Mode (192,168,17,55,114,68).
550 Permission denied.
ftp>
[root@localhost opt]# chmod 777 /var/ftp/pub
[root@localhost opt]# cd /var/ftp
[root@localhost ftp]# ll
总用量 0
drwxrwxrwx+ 2 root root 6 6月 10 2021 pub
[root@localhost ftp]#
在 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
local_enable=YES 是否允许linux用户登录
write_enable=YES 允许linux用户上传文件
local_umask=022 指定系统用户上传文件的默认权限对应umask
禁锢所有系统用户在家目录中
chroot_local_user=YES #禁锢系统用户,默认NO,即不禁锢
禁锢用户开启白名单和黑名单
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中用户禁锢,即黑名单
是一种用于在计算机网络中共享文件的协议。它允许远程计算机通过网络访问远程文件系统中的文件,就像访问本地文件一样。NFS的工作原理可以分为四个基本步骤:挂载、访问、操作和卸载
软件包:nfs-utils(包括服务器和客户端相关工具,CentOS8 最小化安装时默认没有安装)
相关软件包:rpcbind(必须),tcp_wrappers
Kernel支持:nfs.ko
端口:2049(nfsd), 其它端口由portmap(111)分配
NFS服务主要进程:
rpc.nfsd 最主要的NFS进程,管理客户端是否可登录
rpc.mountd 挂载和卸载NFS文件系统,包括权限管理
rpc.lockd 非必要,管理文件锁,避免同时写出错
rpc.statd 非必要,检查文件一致性,可修复文件
/dir 主机1(opt1,opt2) 主机2(opt1,opt2)...
-v 查看本机所有NFS共享
-r 重读配置文件,并共享目录
-a 输出本机所有共享
-au 停止本机所有共享
-e 查看 远程查看
yum install nfs-utils -y //安装nfs
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0 //关闭防火墙和安全核心防护
[root@localhost ~]# vim /etc/exports //编辑配置文件
/share * //本地文件夹 *代表所有
[root@localhost /]#systemctl restart nfs //重启服务
[root@localhost /]# exportfs -v //显示本机共享目录情况
/share (sync,wdelay,hide,no_subtree_check,sec=sys,ro,secure,root_squash,no_all_squash)
[root@localhost /]# exportfs -r //重新读取共享
exportfs: No options for /share *: suggest *(sync) to avoid warning
[root@localhost /]# cd /share //切换到share 目录
[root@localhost share]# touch qwe
[root@localhost share]# touch rty //创建文件 qwe rty
[root@localhost share]# ls
qwe rty
进入配置文件
[root@localhost ~]# yum install nfs-utils -y //安装
[root@localhost ~]# systemctl restart nfs //重启服务
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0 //关闭安全机制
[root@localhost ~]# showmount -e 192.168.17.55 //查看远程连接
Export list for 192.168.17.55:
/share *
[root@localhost ~]# mount 192.168.17.55:/share /mnt //挂载
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 27G 5.0G 23G 19% /
devtmpfs 897M 0 897M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 9.1M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 179M 836M 18% /boot
tmpfs 183M 0 183M 0% /run/user/0
tmpfs 183M 28K 183M 1% /run/user/1000
/dev/sr0 4.3G 4.3G 0 100% /run/media/xyc/CentOS 7 x86_64
192.168.17.55:/share 38G 5.2G 32G 14% /mnt
[root@localhost ~]# cd /mnt //切换目录
[root@localhost mnt]# ls //查看共享文件
qwe rty
[root@localhost mnt]#