NFS共享

目录

三种存储类型

作用:

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还可以提供多种存储服务,如数据备份、容灾、容错等,以满足不同用户的需求。

FTP文本传输协议 

原理

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

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

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

两种模式:从服务器角度

主动(PORT style):服务器主动连接客户端

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

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

 被动(PASV style):服务器被动等待客户端连接

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

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

FTP服务状态码

1XX:信息 125:数据连接打开
2XX:成功类状态 200:命令OK     230:登录成功
3XX:补充类     331:用户名OK
4XX:客户端错误 425:不能打开数据连接
5XX:服务器错误 530:不能登录

用户认证

匿名用户:ftp,anonymous,对应Linux用户ftp

系统用户:Linux用户,用户/etc/passwd,密码/etc/shadow

虚拟用户:特定服务的专用用户,独立的用户/密码文件

常见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个并发

vsftpd官网: https://security.appspot.com/vsftpd.html

vsftpd 软件介绍

由 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 退出

匿名用户登录

1.服务端配置
 vim /etc/vsftpd/vsftpd.conf

anon_upload_enable=YES   //匿名上传,注意:文件系统权限
anon_mkdir_write_enable=YES  //匿名建目录

2.客户端配置
[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> 

3.服务端查看
[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

Linux系统用户

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的工作原理可以分为四个基本步骤:挂载、访问、操作和卸载

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 非必要,检查文件一致性,可修复文件

NFS工具

/dir        主机1(opt1,opt2)     主机2(opt1,opt2)...

exportfs:可用于管理NFS导出的文件系统

-v     查看本机所有NFS共享

-r     重读配置文件,并共享目录

-a    输出本机所有共享

-au  停止本机所有共享

showmount

-e  查看   远程查看

实验NFS共享

1.服务端配置(192.168.17.55)

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        	<world>(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

进入配置文件

2.客户端配置(192.168.17.25)

[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]# 

  • 9
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NFS共享夹默认情况下是不加密的,因此网络传输过程中可能存在安全险。如果需要对NFS共享文件进行加密,可以使用NFSv4版本启用Kerberos身份验证来实加密传输。 以下是在CentOS 7上使用NFSv4和Kerberos进行加密的步骤: 1. 安装必要的软件包: ```shell yum install nfs-utils krb5-workstation ``` 2. 配置Kerberos认证: 编辑Kerberos配置文件`/etc/krb5.conf`,添加以下内容: ```shell [libdefaults] default_realm = YOUR_REALM [realms] YOUR_REALM = { kdc = YOUR_KDC_SERVER admin_server = YOUR_ADMIN_SERVER } [domain_realm] .your_domain = YOUR_REALM your_domain = YOUR_REALM ``` 将`YOUR_REALM`替换为您的域名,将`YOUR_KDC_SERVER`和`YOUR_ADMIN_SERVER`替换为您的KDC服务器和管理员服务器的主机名或IP地址。 3. 创建Kerberos密钥表: ```shell kadmin.local -q "addprinc -randkey nfs/YOUR_SERVER_NAME" kadmin.local -q "ktadd nfs/YOUR_SERVER_NAME" ``` 将`YOUR_SERVER_NAME`替换为您的NFS服务器的主机名。 4. 配置NFS服务器: 编辑NFS配置文件`/etc/exports`,添加以下内容: ```shell /path/to/shared/folder *(sec=krb5p,rw,sync,no_root_squash) ``` 将`/path/to/shared/folder`替换为您要共享的文件夹路径。 5. 启动NFS和rpcbind服务: ```shell systemctl start nfs-server rpcbind systemctl enable nfs-server rpcbind ``` 6. 在客户端上挂载NFS共享文件夹: ```shell mount -t nfs4 -o sec=krb5p YOUR_SERVER_NAME:/path/to/shared/folder /mnt/nfs ``` 将`YOUR_SERVER_NAME`替换为您的NFS服务器的主机名,将`/path/to/shared/folder`替换为您要挂载的共享文件夹路径,将`/mnt/nfs`替换为您要挂载到的本地目录。 现在,您的NFS共享文件夹将通过Kerberos加密进行传输。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值