- FTP概述
- FTP
- FPT传输模式
- FTP工作原理
- 主动模式
- 被动模式
- 匿名、系统、虚拟账户
- FTP服务安装与配置
- FTP服务安装
- 匿名用户登录
FTP 是因特网网络上历史最悠久的网络工具,从 1971 年由 A KBHUSHAN 提出第一个 FTP 的RFC(RFC114) 至今近半个世纪来,FTP 凭借其独特的优势一直都是因特网中最重要、最广泛的服务之一
FTP FPT传输模式FTP(File TransferProtocol,文件传输协议)是典型的C/S架构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输功能。FTP客户端和服务器之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。tcp协议:20,21端口。
21端口:用于传输指令
22端口:用于传输数据
FTP是一种文件传输协议,它支持两种模式,一种方式叫做Standard(也就是Active,主动方式),一种是 Passive(也就是PASV被动方式)。
Standard模式FTP的客户端发送PORT命令到FTPserver。Passive模式FTP的客户端发送 PASV命令到FTP Server
FTP工作原理FTP有两种工作模式,一种方式叫做Standard (也就是Active, 主动方式),一种是Passive(也就是PASV,被动方式)
主动模式服务器主动发起数据连接
首先客户端的高位端口向服务器的21端口建立FTP连接请求(连接请求包括:认证,用户,密码,连接模式,命令PORT端口); FTP服务器响应ACK确认,服务器的21号端口和客户端的高位端口建立ftp会话连接; FTP服务器从自己的20号端口连接客户端发送的连接请求是主动模式命令提供的端口; 客户端发送ACK确认,开始数据传输
客户端的防火墙未关,可被拦截
客户机主动发起数据连接
首先客户端的高位端口向服务器的21端口建立FTP连接请求(连接请求包括:认证,用户,密码,连接模式,命令PORT端口);
FTP服务器响应ACK确认,服务器的21号端口和客户端的高位端口建立ftp会话连接,并告诉客户端已开放20号端口,等你来连接;
客户端用自己的一个高位端口连接服务器响应的一个高位端口;
服务器给客户端发送ACK确认,开始数据传输
匿名账户
登录名为ftp或anonymous,不验证密码即可登录
系统账户
本身已经存在的账户、密码做验证
验证方式:
验证的是/etc/passwd和/etc/shadow;
验证的是用户列表(用户必须是系统创建),相当于白名单。
默认的root账户不允许登陆
虚拟账户
预定义的列表账户(以前系统从未创建过)
关闭防火墙和核心防护
查看信息
查看vsftpd信息,看看有没有安装,如果没有安装则使用yum安装
rpm -q vsftp #查询软件是否已安装 yum install -y vsftpd #安装软件 systemctl start vsftpd #开启服务 systemctl enable vsftpd #设置开机自启动
配置备份文件
cd /etc/vsftpd/ cp vsftpd.conf vsftpd.conf.bak #备份配置文件匿名用户登录
修改配置文件
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES //开启匿名用户访问,默认开启 write_enable=YES //开放服务器的写权限,默认开启 anon_umask=022 //设置匿名用户上传数据的权限(反掩码) anon_upload_enable=YES //允许匿名用户上传文件,默认注释 anon_mkdir_write_enable=YES //允许匿名用户创建(上传)目录,默认注释 anon_other_write_enable=YES //允许删除、重命名、覆盖等操作,需自行添加 # chmod 777 -R /var/ftp/pub/ //更改pub权限,否则匿名用户无法进行读写
编辑完成之后
systemctl restart vsftpd
cd /var/ftp/ mkdir xiayan #创建指定用户登录的默认目录 chown csdn.root xiayan #将目录属主更改为csdn
进入客户端连接



