Linux构建NFS远程共享存储和ftp配置
2023-12-26 00:47:17
NFS架构
NFS介绍
文件系统级别共享(是NAS存储) ---------? 已经做好了格式化,可以直接用。 速度慢比如:nfs,samba
=====================================================
NFS:Network File System 网络文件系统,NFS 和其他文件系统一样,是在 Linux 内核中实现的,因此 NFS 很难做到与 Windows 兼容。NFS 共享出的文件系统会被客户端识别为一个文件系统,客户端可以直接挂载并使用。
?
#NFS 文件系统仅支持基于 IP 的用户访问控制,NFS 的客户端主要为Linux。因为NFS有很多功能,不同的功能需要使用不同的端口。因此NFS无法固定端口。而RPC会记录NFS端口的信息,这样就能够通过RPC实现服务端和客户端的RPC来沟通端口信息。
?
那RPC和NFS之间又是如何之间相互通讯的?
?
首先当NFS启动后,就会随机的使用一些端口,然后NFS就会向RPC去注册这些端口。RPC就会记录下这些端口。并且RPC会开启111端口,等待客户端RPC的请求,如果客户端有请求,那服务端的RPC就会将记录的NFS端口信息告知客户端。
服务端配置
1.安装nfs-utils与rpcbind服务
yum -y install nfs-utils
yum -y install rpcbind
?
2.启动nfs-utils rpcbind
systemctl start nfs
systemctl start rpcbind
?
3.做共享目录
#添加硬盘
#格式化文件系统
mkfs.ext4 /dev/sdb因为没有创建磁盘分区直接挂载所以提示会有一个“”无论如何也要继续? (y,n)”的提示,我们直接y接可以了
?
#挂载
mount /dev/sdb /mnt
?
#制作nfs文件系统
vim /etc/exports
/mnt *(rw,no_root_squash,sync)(所有人为*,指定写IP或网段)配置完后重启nfs
?
可选参数注释:
ro:只读
rw:读写
*:表示共享给所有网段。
sync:所有数据在请求时写入共享
root_squash: 对于使用分享目录的使用者如果是root用户,那么这个使用者的权限将被压缩成为匿名使用者,只读权限。
no_root_squash:使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限
?
4.开机自动挂载
vim /etc/fstab
/dev/sdb/ /mnt ext4 defaults 0 0
?
5.检查开机自动挂载配置文件语法是否出错并让配置生效mount -a
?
6.开机自启
systemctl enable nfs??
systemctl enable rpcbind
客户端配置
1.同样首先安装nfs-utils与rpcbind服务
yum -y install nfs-utils
yum -y install rpcbind
?
2.启动nfs-utils rpcbind
systemctl start nfs
systemctl start rpcbind
?
3.挂载
mount -t nfs (服务端IP)10.12.155.51:/mnt?? /mnt(客户端挂载点)参数注释
-t:指定文件系统类型?
4.查看是否挂载
df -Th
?
5.开机自动挂载
vim /etc/fstab
(服务端IP)10.12.155.51:/mnt /mnt nfs defaults 0 0 保存退出mount -a
?
6.测试
在客户端/mnt下创建文件或目录,然后在服务端/mnt下查看,若有在客户端创建的文件或目录,则测试成功。
?
7.开机自启
systemctl enable nfs
systemctl enable rpcbindftp及lftp
ftp配置
ftp基础
软件包: ? ? ? ?vsftpd
FTP端口: ? ? ? 控制端口:21/tcp
配置文件: ? ? ? /etc/vsftpd/vsftpd.conf1. ftp主动模式
ftp主动模式:客户端开启一个端口N(>1023)向服务端的21端口,建立连接,同时开启一个N+1,告诉服务端,我监听的是N+1端口,服务端接到请求之后,用自己的20端口连接到客户端的N+1端口,进行传输
?
21端口建立连接
20端口传输数据2. ftp被动模式
ftp被动模式:客户端同时开启两个端口(1024,1025),一个端口(1024)跟服务端的21端口建立连接,并请求,大哥,我连上了,你再开一个端口呗。服务端接到请求之后,随机会开启一个端口(1027)并告诉客户端我开启的是1027端口,客户端用另一个端口(1025)与服务端的(1027)端口进行连接,传输数据
ftp服务端配置
1.安装vsftpd
yum -y install vsftpd
?
2.启动vsftpd
systemctl start vsftpd
?
3.开机自启
systemctl enable vsftpd
?
4.创建自己的共享目录
cd /var/ftp (ftpd默认共享目录)
mkdir upload?
?
5.修改根目录的属主与属组
chown -R ftp.ftp ./*
?
6.修改vsftpd的配置文件
vim /etc/vsftpd/vsftpd.conf
添加anon_upload_enable=YES ?-------允许匿名用户上传文件
anon_mkdir_write_enable=YES-----允许匿名用户创建文件
anon_other_write_enable=YES-----允许匿名用户对目录进行操作,为新添加配置
?
7.重启vsftpd
systemctl restart vsftpd
客户端配置
1.安装lftp
yum -y install lftp
?
2.登录服务端
lftp 10.12.155.51(服务端IP)
?
注:登录上使用的命令 ?
get 下载单个文件
mget 下载多个文件
mirror 下载目录
put 上传单个文件
mput 上传多个文件
mirror -R 上传目录
mkdir 创建目录
rm -rf 删除文件或者目录
ftp配置本地用户登录
服务端
1.创建测试用户lisi wangwu
useradd lisi
useradd wangwu
?
2.修改lisi密码
echo "密码" | passwd --stdin lisi
?
3.修改vsftpd的配置文件
vim /etc/vsftpd/vsftpd.conf ?---添加注释并修改
anonymous_enable=NO ? ? ? ? ? #将允许匿名登录关闭
#anon_umask=022 ? ? ? ? ? ? ?? #匿名用户所上传文件的权限掩码
#anon_mkdir_write_enable=YES ? #允许匿名用户创建目录
#anon_other_write_enable=YES ? ?#是否允许匿名用户有其他写入权(改名,删除,覆盖)
103 chroot_list_enable=YES ? ? #启用限制登陆用户在主目录里面
104 # (default follows)
105 chroot_list_file=/etc/vsftpd/chroot_list ?#限制登陆的用户在这个文件列表中,一行一个用户
106 allow_writeable_chroot=YES ?#允许限制的用户对目录有写权限
新添加
local_root=/home/lisi ? ? ? # 设置本地用户的FTP根目录,一般为用户的家目录
local_max_rate=0 ? ? ? ? ? ? ? ?# 限制最大传输速率(字节/秒)0为无限制
4.vim /etc/vsftpd/chroot_listlisi #授权用户
5.重启vsftpd
systemctl restart vsftpd6.测试本地windows连接
输入连接服务器ip
输入授权用户密码
连接好以后就可以共享储存了
感谢观看!希望能够帮助到大家!
文章来源:https://blog.csdn.net/yz2322944912/article/details/135209309
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!