大企业门户网站建设,六年级做的网站的软件下载,太原建设银行保安招聘网站,什么是网页?一、存储类型 存储类型分为三种 直连式存储#xff1a;Direct-Attached Storage#xff0c;简称DAS 存储区域网络#xff1a;Storage Area Network#xff0c;简称SAN#xff08;可以使用空间#xff0c;管理也是你来管理#xff09; 网络附加存储#xff1a;Network…一、存储类型 存储类型分为三种 直连式存储Direct-Attached Storage简称DAS 存储区域网络Storage Area Network简称SAN可以使用空间管理也是你来管理 网络附加存储Network-Attached Storage简称NAS存储和管理空间都在远程 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存储有兼容性的要求
DASNASSAN传输类型SCSI、FCIPIP、FC、SAS数据类型数据块文件数据块典型应用任何文件服务器数据库应用优点 磁盘与服务器分离 便于统一管理 不占用应用服务器资源 广泛支持操作系统 扩展较容易 即插即用安装简单方便 高扩展性 高可用性 数据集中易管理 缺点 连接距离短 数据分散共享困难 存储空间利用率不高 扩展性有限 不适合存储量大的块级应用 数据备份及恢复占用网络带宽 相比NAS成本较高 安装和升级比NAS复杂
三种存储架构的应用场景 DAS虽然比较古老了但是还是很适用于那些数据量不大对磁盘访问速度要求较高的中小企业 NAS多适用于文件服务器用来存储非结构化数据虽然受限于以太网的速度但是部署灵活成本低 SAN则适用于大型应用或数据库系统缺点是成本高、较为复杂
SAN和NAS的文件系统区别
区别 客户端应用程序是否具有对存储空间的管理权限
SAN 只给用户划分空间用户自己来管理这个区域。例如指定文件系统的类型等。
NAS 文件系统在NSA存储上面只给用户分配空间用户不具备对空间的管理权限。用户的通过引用程序直接通过网络就可以访问到上面的文件 二、 FTP 文件传输协议
2.1 FTP工作原理介绍
文件传输协议File Transfer Protocol 早期的三个应用级协议之一基于C/S结构
数据传输格式二进制默认和文本
双通道协议命令和数据连接 21 命令端口权限认证 20数据端口真实传数据 两种模式从服务器角度 主动(PORT style)服务器开启20端口主动连接客户端传递数据 命令控制客户端随机port --- 服务器21/tcp 数据客户端随机port ---服务器20/tcp 被动(PASV style)服务端会开启一个 随机端口被动等待客户端来连接 命令控制客户端随机port --- 服务器21/tcp 数据客户端随机port --- 服务器随机port /tcp 服务端 主动 开启 tcp/20 端口 去传输数据给客户端 FTP服务状态码
1XX信息 125数据连接打开
2XX成功类状态 200命令OK 230登录成功
3XX补充类 331用户名OK
4XX客户端错误 425不能打开数据连接
5XX服务器错误 530不能登录
范例服务器被动模式数据端口
服务器数据端口为224*25659
227 Entering Passive Mode (172,16,0,1,224,59)
用户认证 匿名用户ftp,anonymous,对应Linux用户ftp root 登录时不需要密码 系统用户Linux用户,用户/etc/passwd,密码/etc/shadow 虚拟用户特定服务的专用用户独立的用户/密码文件
2.2 常见 FTP 相关软件
FTP服务器端软件
Wu-ftpd,Proftpd,Pureftpd,Filezilla Server,Serv-U,Wing FTP Server,IIS
vsftpdVery Secure FTP DaemonCentOS 默认FTP服务器
高速稳定下载速度是WU-FTP的两倍
ftp.redhat.com数据:单机最多可支持15000个并发
vsftpd官网 https://security.appspot.com/vsftpd.html
2.3 vsftpd 软件介绍
由 vsftpd 包提供不再由xinetd管理
用户认证配置文件/etc/pam.d/vsftpd
配置文件
/etc/vsftpd/vsftpd.conf使用匿名用户ftp 登录上去后 看到的 / 根不是真正的根/var/ftp/ /vsftpd 匿名用户登录后 这个软件默认的根目录
系统用户登录 根就是系统的根
用户和其共享目录 匿名用户映射为系统用户ftp 共享文件位置/var/ftp 系统用户共享文件位置用户家目录 虚拟用户共享文件位置为其映射的系统用户的家目录
2.3.1基础操作
安装服务端
yum install vsftpd -y
#安装 ftp 服务器
systemctl start vsftpd
#开启服务yum install ftp -y
#安装ftp命令
客户端连接服务端
[rootlocalhost ~]#ftp 192.168.80.10
# ftp 客户端 工具 服务端地址
Connected to 192.168.80.10 (192.168.80.10).
220 (vsFTPd 3.0.2)Name (192.168.80.10:root): anonymous #此处填写用户名 默认使用 ftp 或者匿名用户#默认没有密码
登录成功
ftp help
#可以使用help 查看帮助ftp ls
#可以使用 ls 查看文件列表 查看的是服务器上的列表 100 显示是的 100 服务器的 文件目录ftp ls
227 Entering Passive Mode (192,168,91,101,24,148)
# Passive 消极被动 默认使用 被动模式ftp passive
#可以人为指定被动主动ftp get bigfile
#下载大文件 后可以 使用 ss -nt 看到又打开一个通道
[rootlocalhost ~]#ss -nt
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 4384648 0 192.168.91.100:37722 192.168.91.101:43911
ESTAB 0 0 192.168.91.100:48250 192.168.91.101:21 [rootlocalhost ~]#ss -nt
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 0 192.168.91.100:40574 192.168.91.101:20
ESTAB 0 0 192.168.91.100:48250 192.168.91.101:21
2.4 vsftpd服务常见配置
2.4.1 修改默认命令端口
服务端修改 默认命令端口号
[rootnode2 pub]#vim /etc/vsftpd/vsftpd.conf
#随便一行插入
listen_port2121
[rootnode2 pub]#systemctl restart vsftpd
#重启服务
[rootnode2 pub]#ss -ntl
#查看端口
客户端连接时需要指明 端口号
[rootcentos7 ~]#ftp 192.168.91.101 2121
#不需要加 p 选项
2.4.2 主动模式端口
vim /etc/vsftpd/vsftpd.confconnect_from_port_20YES 主动模式端口为20
ftp_data_port20 默认 指定主动模式的端口
2.4.3 被动模式端口
pasv_min_port6000 0为随机分配端口范围会影响客户端的并发数
pasv_max_port6010
2.4.4 使用当地时间
vim /etc/vsftpd/vsftpd.confuse_localtimeYES 使用当地时间默认为NO使用GMT
格林威治 8 格林威治时间比我们少8小时
2.4.5 匿名用户登录
vim /etc/vsftpd/vsftpd.confanonymous_enableYES 支持匿名用户CentOS8 默认不允许匿名
no_anon_passwordYES 匿名用户略过口令检查 , 默认NO
2.4.6 匿名用户上传
vim /etc/vsftpd/vsftpd.confanon_upload_enableYES 匿名上传注意:文件系统权限
anon_mkdir_write_enableYES 匿名建目录
例子
########客户端#########
ftp !ls #使用! 代表 在本地使用命令
abc.txt anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面ftp cd pub
ftpput abc.txt #上传 文件 ftp 默认不允许上传文件 安全考虑 人人都传空间病毒等问题
local: abc.txt remote: abc.txt
227 Entering Passive Mode (192,168,80,7,139,243).
550 Permission denied.#########服务端########
[rootnode2 pub]#vim /etc/vsftpd/vsftpd.conf
#此处是被注释开启就可以了
anon_upload_enableYES
anon_mkdir_write_enableYES这时候回到客户端ftp put abc.txt
local: abc.txt remote: abc.txt
227 Entering Passive Mode (192,168,80,7,139,243).
553 Could not create file.无法上传是因为 没有权限写在传文件时需要考虑 文件系统权限 你是远程用户把文件放在磁盘上需要考虑文件系统的权限[rootnode2 pub]#setfacl -m u:ftp:rwx /var/ftp/pub/
#添加ftp 用户的权限######客户端#####
ftp cd pub ####注意文件夹位置
250 Directory successfully changed.
ftp put abc.txt
local: abc.txt remote: abc.txt
227 Entering Passive Mode (192,168,80,7,139,243).
150 Ok to send data.
226 Transfer complete.### 是可以对ftp的根目录设置权限的 一般是不对根做操作的
### 但是再次登录会有问题
注意还需要开启文件系统访问的权限不能给FTP根目录(/var/ftp)写权限否则报如下错误
##########服务端###########
[rootnode2 pub]#setfacl -m u:ftp:rwx /var/ftp
#会出错[rootnode2 pub]#setfacl -b /var/ftp
#输入此命令即可解决#########客户端#########
[rootlocalhost etc]#ftp 192.168.80.7
Connected to 192.168.80.7 (192.168.80.7).
220 (vsFTPd 3.0.2)
Name (192.168.80.7:root): ftp
331 Please specify the password.
Password:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Login failed.
421 Service not available, remote server has closed connection
ftp
ftp cd pub
Not connected.
ftp ls
Not connected.anon_world_readable_onlyno 只能下载全部读的文件, 默认YES
anon_umask0333 指定匿名上传文件的umask默认077注意0333中的0不能省略
anon_other_write_enableYES 可删除和修改上传的文件默认NO
2.4.7 匿名用户 下载 删除文件
在 vsftpd 软件中 只可以 下载有 读权限的文件 没有读权限的文件时不可以直接下载的需要修改下面的选项
anon_world_readable_onlyNO 只能下载全部读的文件, 默认YES
anon_umask0333 指定匿名上传文件的umask默认0077注意0333中的0不能省略
anon_other_write_enableYES 可删除和修改上传的文件默认NO
例子
可以下载上传上去的文件 get
[rootnode2 pub]#vim /etc/vsftpd/vsftpd.conf
anon_world_readable_onlyNO
anon_umask0333客户端
ftp cd pub
250 Directory successfully changed.
ftp ls
227 Entering Passive Mode (192,168,80,7,148,158).
150 Here comes the directory listing.
-rw------- 1 14 50 0 Jan 15 15:54 1258
-rw-r--r-- 1 0 0 0 Jan 15 16:20 789
-rw------- 1 14 50 1634 Jan 15 15:57 rpc
226 Directory send OK.
ftp get 789
local: 789 remote: 789
227 Entering Passive Mode (192,168,80,7,249,85).
150 Opening BINARY mode data connection for 789 (0 bytes).
226 Transfer complete.
ftp exit
221 Goodbye.
[rootlocalhost etc]#ls
789#被下载的文件一定要有读的权限。
可以删除文件
[rootnode2 pub]#vim /etc/vsftpd/vsftpd.conf
anon_other_write_enableYESftp cd pub.
ftp ls
ftp delete abc.txt
ftp ls
227 Entering Passive Mode (192,168,91,101,112,18).
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 1073741824 Aug 04 08:02 bigfile
-rw------- 1 14 50 471 Aug 04 09:20 dm.sh
226 Directory send OK.
2.4.8 指定匿名用户的上传文件的默认的所有者和权限
匿名用户上传文件默认的所有者是ftp 用户 是可以修改的
chown_uploadsYES #默认NO
chown_usernamezhangsan
chown_upload_mode0644
2.4.9 Linux系统用户
local_enableYES 是否允许linux用户登录
write_enableYES 允许linux用户上传文件
local_umask022 指定系统用户上传文件的默认权限对应umask
例子 系统用户登录使用普通用户登录默认是在 系统用户的 家目录
[rootlocalhost ~]#ftp 192.168.91.101
Connected to 192.168.91.101 (192.168.91.101).
220 (vsFTPd 3.0.2)
Name (192.168.91.101:root): zhangsan
331 Please specify the password.
Password:
ftp pwd
257 /home/zhangsan###默认是可以上传下载
要注意目录#####也可以 去别的目录下载####
权限控制不是很安全可以把其 禁锢 在 自己的 家目录 中2.4.10将所有系统用户映射为指定的guest用户
guest_enableYES 所有系统用户都映射成guest用户
guest_usernameftp 配合上面选项才生效指定guest用户
local_root/ftproot 指定guest用户登录所在目录,但不影响匿名用户的登录目录
user_config_dir/etc/vsftpd/conf.d/ 每个用户独立的配置文件目录guest_enableYES
guest_usernameftp
local_root/ftproot
user_config_dir/etc/vsftpd/conf.d/
例子控制 系统用户等信息
[rootnode2 pub]#vim /etc/vsftpd/vsftpd.conf
#最后加入 复制注意空格
guest_enableYES
guest_usernameftp
#local_root/ftproot 可以注释此行默认所有用户都在 ftp用户的家目录ftp pwd
257 /
ftp ls
227 Entering Passive Mode (192,168,91,101,169,174).
150 Here comes the directory listing.
drwxrwxr-x 2 0 0 34 Aug 05 01:02 pub
226 Directory send OK.
例子 让每个用户拥有独有配置
[rootnode2 pub]#vim /etc/vsftpd/vsftpd.conf
user_config_dir/etc/vsftpd/conf.d/
#可以自由指定针对 zhangsan lisi 用户[rootnode2 data]#mkdir -p /etc/vsftpd/conf.d
#先建立好配置文件夹#编写子配置文件
[rootnode2 data]#vim /etc/vsftpd/conf.d/lisi
local_root/data/lisi
[rootnode2 data]#vim /etc/vsftpd/conf.d/zhangsan
local_root/data/zhangsan[rootnode2 data]#mkdir -p /data/{zhangsan,lisi}
[rootnode2 data]#touch /data/zhangsan/zs.txt
[rootnode2 data]#touch /data/lisi/lisi.txt
#建立两个文件测试使用#再次登录就不能乱跑了 2.4.11 禁锢系统用户
禁锢所有系统用户在家目录中
vim /etc/vsftpd/vsftpd.conf
chroot_local_userYES #禁锢系统用户默认NO即不禁锢
禁锢用户开启白名单和黑名单
chroot_list_enableYES #默认是NO
chroot_list_file/etc/vsftpd/chroot_list #默认值当chroot_local_userYES和chroot_list_enableYES时则chroot_list中用户不禁锢即白名单在文件里的不禁锢
当chroot_local_userNO和chroot_list_enableYES时 则chroot_list中用户禁锢即黑名单在文件里的 禁锢
例子
[rootlocalhost ~]#ftp 192.168.91.101
#禁锢后 会 将lisi用户 的家目录作为根 默认ftp服务的 家目录 是不能有 写 权限注意执行权限
Connected to 192.168.91.101 (192.168.91.101).
220 (vsFTPd 3.0.2)
Name (192.168.91.101:root): lisi
331 Please specify the password.
Password:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Login failed.
421 Service not available, remote server has closed connection##此处 所有的 用户 家目录权限需要修改#修改用户加目录权限,防止报错500 OOPS: vsftpd: refusing to run with writable root inside chroot()
chmod 555 /home/lisi因为家目录不能有 写 权限 所以我们在家目录下建立一个有写入权限的文件夹用来建立文件即可setfacl -m u:lisi:rwx /home/lisi/pub/
2.4.12 日志
ftp 默认启动日志
#wu-ftp 日志默认启用
xferlog_enableYES #启用记录上传下载日志此为默认值
xferlog_std_formatYES #使用wu-ftp日志格式此为默认值
xferlog_file/var/log/xferlog #可自动生成 此为默认值#vsftpd日志默认不启用
dual_log_enableYES 使用vsftpd日志格式默认不启用
vsftpd_log_file/var/log/vsftpd.log 可自动生成 此为默认值
例子
###默认格式
[rootnode2 zhangsan]#tail -f /var/log/xferlog
Sat Aug 5 08:48:43 2023 1 ::ffff:192.168.91.100 471 /pub/dm.sh b _ o a no_password ftp 0 * c
Sat Aug 5 08:56:46 2023 1 ::ffff:192.168.91.100 0 /pub/abc.txt b _ i a no_password ftp 0 * i###第二种格式
[rootnode2 zhangsan]#cat /var/log/vsftpd.log
Sat Aug 5 15:49:36 2023 [pid 2056] CONNECT: Client ::ffff:192.168.91.100
Sat Aug 5 15:49:39 2023 [pid 2055] [ftp] OK LOGIN: Client ::ffff:192.168.91.100, anon password no_password
2.4.13 提示信息
ftpd_bannerwelcome to kgc ftp server
banner_file/etc/vsftpd/ftpbanner.txt
2.4.14 pam模块实现用户访问
pam_service_namevsftpd
#pam配置文件:/etc/pam.d/vsftpd/etc/vsftpd/ftpusers 默认文件中用户拒绝登录默认是黑名单但也可以是白名单
例子
由于ftp是明文传输 抓取是可可以获取密码的 默认是不让使用root 用户登录的
[rootcentos7 ~]#ldd /usr/sbin/vsftpd |grep pamlibpam.so.0 /lib64/libpam.so.0 (0x00007fb286c34000)
#修改PAM配置使ftpusers成为白名单
[rootcentos8 ~]#vim /etc/pam.d/vsftpd
#%PAM-1.0
session optional pam_keyinit.so force revoke
#将sensedeny默认是deny 修改为 senseallow
auth required pam_listfile.so itemuser senseallow file/etc/vsftpd/ftpusers onerrsucceed
auth required pam_shells.so
auth include password-auth
account include password-auth
session required pam_loginuid.so
session include password-auth[rootnode2 ~]#vim /etc/vsftpd/ftpusers
#加入此文件默认是 拒绝
# Users that are not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
lisi[rootnode2 vsftpd]#vim /etc/vsftpd/user_list
#
把root 去掉
2.4.15 传输速率单位字节/秒
anon_max_rate0 匿名用户的最大传输速率,以字节为单位,比如:1024000表示1MB/s
local_max_rate0 本地用户的最大传输速率
#限速
[rootcentos8 ~]#vim /etc/vsftpd/vsftpd.conf
anon_max_rate1024000
local_max_rate102400[rootcentos7 ~]#systemctl restart vsftpd
#生成测试文件
[rootcentos7 ~]#dd if/dev/zero of/var/ftp/pub/bigfile bs1M count100
[rootcentos7 ~]#dd if/dev/zero of/home/wang/bigfile bs1M count100
#测试匿名下载速度
[rootcentos7 ~]#wget ftp://192.168.91.101/pub/bigfile
--2020-10-30 18:09:02-- ftp://10.0.0.8/pub/bigfile ‘bigfile.3’
Connecting to 10.0.0.8:21... connected.
Logging in as anonymous ... Logged in!SYST ... done. PWD ... done.TYPE I ... done. CWD (1) /pub ... done.SIZE bigfile ... 104857600PASV ... done. RETR bigfile ... done.
Length: 104857600 (100M) (unauthoritative)#测试本地用户下载速度
[rootcentos7 ~]#wget ftp://wang:magedu10.0.0.8/bigfile
--2020-10-30 18:08:04-- ftp://wang:*password*10.0.0.8/bigfile ‘bigfile’
Connecting to 10.0.0.8:21... connected.
Logging in as wang ... Logged in!SYST ... done. PWD ... done.TYPE I ... done. CWD not needed.SIZE bigfile ... 104857600PASV ... done. RETR bigfile ... done.
Length: 104857600 (100M) (unauthoritative)
100%
[
] 104,857,600 9.78MB/s in 10s
2020-10-30 18:08:14 (9.77 MB/s) - ‘bigfile’ saved [104857600]