FTP服务配置

       文件传输协议 (File Transfer Protocol,FTP),用于在网络上进行文件传输的协议。如果用户需要将文件从本机发送到另一台计算机,可以使用FTP上传操作;反之,用户可以使用FTP从其他计算机将文件下载到本机。基于C/S架构

建立两种类型连接:

      数据连接:20端口用于建立数据连接,并传输文件数据;控制连接:21端口用于建立控制连接,并传输FTP控制命令

数据传输模式

     主动模式(PORT模式):服务器主动发起数据连接;被动模式(PASV模式):服务器被动等待数据连接

FTP服务器的用户

匿名、本地、虚拟用户

 


 

安装与配置FTP服务器

vsftpd(very secure FTP daemon)是一款免费、开源的FTP服务器软件。

一、配置网络、配置本地yum仓库,并安装vsftpd软件包

yum -y install vsftpd

二、更改配置文件

vsftpd的配置文件

文件名: 说明:

/etc/vsftpd/vsftpd.conf

FTP服务器主配置文件
etc/vsftpd/ftpusers 禁止登陆FTP服务器的用户列表(黑名单) 
etc/vsftpd/user_list 禁止或允许登陆FTP服务器的用户列表 (白名单)
/etc/vsftpd/chroot_list 限制/排除名单,控制用户能否切换到自己根目录之外 

cd /etc/vsftpd

cp vsftpd.conf vsftpd.conf.bak                 # 备份

设置匿名用户访问FTP服务(最大权限)

anonymous_enable=[YES|NO] 是否允许匿名用户访问
local_enable=[YES|NO 是否允许本地用户登录FTP;主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问。
write_enable=YES  是否启用写入权限
anon_umask=022  匿名用户上传文件的umask值
anon_upload_enable=[YES|NO]  是否允许匿名用户上传文件
anon_mkdir_write_enable[YES|NO]   是否允许匿名用户创建目录
anon_other_write_enable=[YES|NO] 是否开放匿名用户的其他写入权限(包括重命名、删除等操作权限)
anon_root=/ftp  指定匿名用户的主目录

 

或:在配置文件最上面一行添加:anon_root=/mnt(为mkdir创建路径文件) 

修改目录权限:为匿名访问ftp的根目录下的pub子目录设置最大权限,以便匿名用户上传数据

三、设置权限、关防火墙、重启

cd /var/ftp

chmod -R 777 /var/ftp/pub

systemctl stop firewalld 

setenforce 0

systemctl restart vsftpd

查看21号端口是否被监听,确认vsftpd服务正常运行:

netstat -ntlp | grep vsftpd 

 四、测试

client:匿名访问测试---在Linux创建文件:

yum -y install ftp

 

在windows上创建文件:

 

或:在此电脑 》 ftp://IP地址 

 

设置本地用户验证访问ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)

 

 

设置用户并测试

useradd lll

passwd 123456

 

 设置黑名单、白名单并测试

 

posted @   刘盘明  阅读(392)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示