网络文件共享服务(ftp和nfs)和如果用局域网搭建yum仓库

本文详细介绍了存储类型(DAS,SAN,NAS)的概念,以及FTP的工作原理、协议端口和VSFTPD服务配置。还涵盖了NFS服务的原理、安装与配置,以及如何在局域网中通过HTTP和FTP搭建yum仓库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

存储类型

存储类型分三种

1.直连式存储:DAS

2.存储区域网络:SAN

3.网络附加存储:NAS

FTP文件传输协议

软件要利用协议,协议时通过应用程序实现的

各协议端口

  • ftp :20(数据) 21(命令)

  • ssh:22

  • http:80

  • https:443

  • telnet:23

  • mysql:3306

  • redis:6379

FTP工作原理

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

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

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

两种模式(从服务器角度)

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

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

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

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

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

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

三种用户类型:

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

  • 系统用户:Linux用户,用户/etc/passwd,密码/etc/shadow(可以去任何地方)

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

FTP相关软件:vsftpd

由 vsftpd 包提供,不再由xinetd管理

用户认证配置文件:/etc/pam.d/vsftpd

配置文件位置:/etc/vsftpd/vsftpd.conf

用户和其共享目录

  • 匿名用户(映射为系统用户ftp )共享文件位置:/var/ftp

  • 系统用户共享文件位置:用户家目录

  • 虚拟用户共享文件位置:为其映射的系统用户的家目录

vsftpd基础操作

安装FTP服务端(服务端和客户端的防火墙都需要关闭)

 yum install ftp  -y      #安装ftp客户端
 yum install vsftpd -y    #安装ftp服务端
​
 systemctl   start    vsftpd      #开启服务

客户端连接服务端

ftp 192.168.116.30(服务端ip地址)

修改默认命令端口

vim /etc/vsftpd/vsftpd.conf  修改配置文件

在服务器的配置文件中添加任意一行
llisten_port=233     修改默认端口为233
修改完后保存退出重启服务
systemctl restart vsftpd
修改完之后不加端口号会被拒绝
ftp  192.168.116.40  233 如此才可进入

vsftpd服务常见配置

vim /etc/vsftpd/vsftpd.conf

listen_port=2121              #默认21端口
connect_from_port_20=YES      #主动模式端口为20
ftp_data_port=20              #指定主动模式端口为20
pasv_min_port=6000      #被动模式端口为6000 0为随机分配,端口范围会影响客户端的并发数
use_localtime=YES             #使用当地时间
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中用户禁锢,即黑名单

ftp匿名用户登录

[root@localhost ~]# ftp 192.168.116.40      #连接服务器
Connected to 192.168.116.40 (192.168.116.40).
220 (vsFTPd 3.0.2)
Name (192.168.116.40:root): ftp       #匿名用户ftp
331 Please specify the password.
Password:                           #默认没有密码直接回车
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
exit               #退出

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES #支持匿名用户,CentOS8 默认不允许
no_anon_password=YES #匿名用户略过口令检查 , 默认NO
anon_upload_enable=YES  #匿名上传 注意:文件系统权限
chmod   777   /var/ftp/pub
anon_mkdir_write_enable=YES 匿名建目录
​
匿名用户下删除文件
anon_world_readable_only=NO  只能下载全部读的文件, 默认YES
anon_umask=0333              指定匿名上传文件的umask,默认077,注意:0333中的0不能省略
anon_other_write_enable=YES  可删除和修改上传的文件,默认NO
​
指定匿名用户上传文件的默认所有者和权限
chown_uploads=YES        #默认NO
chown_username=zhangsan
chown_upload_mode=0644
​

如果你想在网络共享服务种 有上传或者写的权限

  1. 注意应用程序有没有开发

  2. 注意该目录有没有开发写的权限

软件包查询、安装、卸载

1.查询软件包

yum    list   软件名 
​
yum  list   httpd

2.安装软件

yum  install  软件名 -y
yum  groupinstall  包组名

3.升级软件

yum  update  软件名
​
yum  groupupdate    软件名

4.软件卸载

     yum remove 软件名
​
软件卸载(卸载干净)
​
•    用yum history查看软件的ID
​
•    yum history info ID  查看具体的信息
​
•    yum history undo ID删除
​
•    yum history redo ID还原
​
​

NFS

服务,端口号不固定

客户端可以访问

NFS工作原理

NFS:是基于内核的文件系统,可以挂载。通过使用 NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,基于RPC(Remote Procedure Call Protocol 远程过程调用)实现。

  1. 首先nfs服务端开启后,会在自己的RPC(远程过程调用 端口号111)注册相关信息

  2. nfs客户端想要连接nfs服务端,会先去找rpc注册中心,问nfs服务端的端口号是多少

  3. rpc会告诉客户端是多少,然后客户端知道端口号后会发起连接

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配置文件位置

不需要改动,直接默认

/etc/exports

NFS共享配置文件格式

/dir(本地文件夹) 主机(可以写多个主机)

#文件路径
/etc/eports 
#文件内容
/dir         主机1(选项)    主机2(选项)
​
如:
vim /etc/exports
/data *             //允许所有,访问共享目录data
共享文件夹         允许访问的主机(权限)
​
可以用通配符*表示任意客户机

默认选项:(ro,sync,root_squash,no_all_squash)

  1. ro,rw: 只读和读写

  2. async:异步,数据变化后不立即写磁盘,先写入到缓冲区中,过一段时间再写入磁盘,性能高,安全性低sync(1.0.0后为默认)同步,数据在请求时立即写入共享存储磁盘,性能低,安全性高

  3. root_squash: (默认)远程root映射为nfsnobody,UID为65534,CentOS8 为nobody,CentOS 7以前的版本为nfsnobody

  4. no_root_squash: 远程root映射成NFS服务器的root用户

  5. all_squash: 所有远程用户(包括root)都变成nfsnobody,CentOS8 为nobody

  6. no_all_squash: (默认)保留共享文件的UID和GID

  7. anonuid和anongid: 指明匿名用户映射为特定用户UID和组GID,而非nobody,可配合all_squash使用

NFS工具

exportfs

-v 显示本机的共享目录情况

-r 不影响当前使用情况下重新读取共享

showmount

-e 本机ip:显示共享的设备

NFS共享文件过程

在NFS服务端

关闭防火墙

yum install nfs-utils.x86_64 -y         #安装ufs服务

systemctl start  nfs                        #启动nfs

vim /etc/exports                 #只要修改共享的配置文件

共享目录,允许使用共享目录的主机

/opt     *               #将本机的opt 目录共享出去,允许任何主机使用

exportfs -v           #显示本机的共享目录情况

exportfs -e  ip           #显示共享的设备

在客户端

showmount -e                  #服务端地址 查看共享情况

yum install nfs-utils -y      #安装nfs服务

systemctl start nfs            #开启nfs服务

mount 192.168.116.40 :/opt /mnt

mount  服务端地址:共享目录   挂载点

df -h查看是否挂载成功

设置永久挂载:

vim /etc/fstab

192.168.116.40:/opt  /mnt  nfs  defaults,_netdev     0   0

局域网搭建yum仓库(http/ftp)

准备两台服务器:

​ 服务端:提供安装包 ​

 客户端:写配置文件

1.用http搭建

在服务端
​
1.yum install httpd -y  安装httpd
​
2.systemctl start httpd 开启httpd服务
​
3.mount /dev/sr0 /var/www/html提供安装包
​
在客户端

yum install httpd -y​

cd /etc/yum.repos.d
​
mkdir bak
​
mv *.repo bak
​
vim http.repo
​
[http]
​
name=http
​
baseurl=http://192.168.116.40/
​
gpgcheck=0
​
yum clean all
​
yum makecache
yum install tree

2.ftp

在服务端
​
yum install vsftpd -y
​
systemctl start vsftpd
​
cd /var/ftp
​
mkdir ky33
​
mount /dev/sr0  /var/ftp/ky33
​
到客户端
​
yum install vsftpd -y
​​
cd /etc/yum.repos.d
​
mkdir bak
​
mv *.repo bak
​
vim ftp.repo
​
[ftp]
​
name=ftp
​
baseurl=ftp://192.168.116.20/ky33
​
gpgcheck=0
​
yum clean all
​
yum makecache
​
yum install tree
​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值