当前位置: 首页 > java >正文

FTP与NFS服务实战:从配置到应用

一、FTP服务进阶:客户端工具与访问控制

1. FTP客户端工具对比

在Linux中,ftplftp是常用的FTP客户端工具,功能各有侧重:

工具特点适用场景
ftp基础命令交互,需手动输入用户名/密码简单文件传输
lftp支持多协议、批量操作、目录同步复杂任务(如批量上传下载)
基础命令示例
# 安装客户端工具  
yum install ftp lftp -y  # 使用ftp连接服务器  
ftp 192.168.66.138  
Name: kefu  
Password: 123  # 使用lftp连接(支持批量操作)  
lftp kefu@192.168.66.138  

2. FTP访问控制:黑名单与白名单

通过配置文件实现用户访问权限管理:

黑名单机制(默认)
  • 文件路径

    • /etc/vsftpd/ftpusers:永久黑名单,禁止列出的用户登录。

    • /etc/vsftpd/user_list:默认黑名单,可切换为白名单。

白名单配置
vim /etc/vsftpd/vsftpd.conf  
userlist_deny=NO        # 将user_list设为白名单  

注意:用户若同时在ftpusersuser_list中,ftpusers优先级更高。


3. FTP流量控制

限制用户上传下载速度,避免带宽占用过高:

vim /etc/vsftpd/vsftpd.conf  
local_max_rate=1024000  # 限制速度为1MB/s(单位:字节)  

重启服务生效:

systemctl restart vsftpd  

二、NFS服务:跨服务器文件共享解决方案

1. NFS核心概念

  • 作用:实现跨服务器文件共享,适用于静态资源存储、集群数据同步等场景。

  • 组成

    • rpcbind:负责RPC通信(端口111)。

    • nfs-utils:管理共享目录及权限。

2. NFS服务部署

安装与启动
# 服务端安装  
yum install rpcbind nfs-utils -y  
systemctl start rpcbind nfs  
systemctl enable rpcbind nfs  # 客户端安装(Web服务器)  
yum install nfs-utils rpcbind -y  
systemctl start rpcbind  
配置共享目录

编辑服务端配置文件 /etc/exports

/share 192.168.66.0/24(rw,sync,no_root_squash)  
  • 参数说明

    • rw:读写权限。

    • sync:实时同步数据到磁盘。

    • no_root_squash:允许root用户保留权限。

生效配置
exportfs -rv  # 重新加载配置  
showmount -e  # 查看共享目录  

3. 客户端挂载NFS共享

在Web服务器挂载NFS共享目录:

mkdir /var/www/html/media  
mount -t nfs 192.168.66.138:/share /var/www/html/media  # 验证挂载  
df -Th | grep nfs  
自动挂载配置

编辑 /etc/fstab 实现开机自动挂载:

192.168.66.138:/share  /var/www/html/media  nfs  defaults,_netdev  0 0  

三、实战案例:Web服务器与NFS集成

1. 场景描述

  • 需求:将Web服务器的静态资源(如图片、CSS)存储在NFS共享目录。

  • 架构

    • NFS服务器(192.168.66.138):提供 /share 目录共享。

    • Web服务器(192.168.66.143):挂载NFS目录至 /var/www/html/media

2. 操作步骤

  1. NFS服务端

    • 创建共享目录并配置权限。

    • 启动NFS服务,设置开机自启。

  2. Web客户端

    • 挂载NFS共享目录到Web项目路径。

    • 配置Apache服务,验证资源访问。

# 在Web服务器测试资源访问  
curl http://localhost/media/test.jpg  

四、常见问题与解决方案

1. FTP用户无法登录

  • 检查项

    • 用户是否在黑名单(ftpusersuser_list)。

    • 目录权限是否正确(chmod 755 /data/kefu)。

2. NFS挂载失败

  • 错误提示Connection refused

    • 解决:确保服务端 rpcbind 和 nfs 服务已启动。

3. 文件写入权限问题

  • NFS共享目录权限

    chmod -R 777 /share  # 临时放宽权限(生产环境慎用)  
http://www.xdnf.cn/news/6946.html

相关文章:

  • 考公知识总结
  • 怎么用Origin画出MATLAB效果的3D时频图
  • [ctfshow web入门] web77
  • Python基于Django的校园招聘系统【附源码、文档说明】
  • 寻找树的中心(重心)
  • Mysql 索引概述
  • 通过多线程同时获取H264和H265码流
  • 本地缓存更新方案探索
  • 多模态模型如何处理任意分辨率输入——Tiling与Packing技术详解
  • CentOS 下 FTP 与 NFS 服务深度解析:从基础配置到实战应用
  • css 中 content: “\e6d0“ 怎么变成图标的?
  • 2000 元以下罕见的真三色光源投影仪:雷克赛恩Cyber Pro1重新定义入门级投影体验
  • 南航无人机大规模户外环境视觉导航框架!SM-CERL:基于语义地图与认知逃逸强化学习的无人机户外视觉导航
  • STM32F10xx 参考手册
  • ALIENTEK精英STM32F103开发板 实验0测试程序详解
  • 信息安全的基石:深入理解五大核心安全服务
  • NPN、PNP三极管的应用
  • 企业级电商数据对接:1688 商品详情 API 接口开发与优化实践
  • Pandas 掌握Matplotlib基础绘图①
  • 6to4、6over4的类比解释
  • MAUI之XAML标记扩展
  • Linux:计算机的层状结构
  • .NET 中管理 Web API 文档的两种方式
  • 指定elf文件dwarf 版本以及查看dwarf版本号
  • C++ 蓝桥 STEMA 真题模拟测试卷二
  • 程序中断方式好题分享
  • 日志系统**
  • 蓝桥杯11届国B 答疑
  • Redis内存管理深度解析
  • LeetCode --- 156双周赛