FTP------File Transfer Protocol 文件传输协议,明文传输
主要功能-----上传 , 下载 (服务器和客户端之间)
两种模式(对服务端来说的):主动模式 , 被动模式(推荐)
主动模式:服务端从20端口主动向客户端主动发起连接。
被动模式:服务端在指定范围内的某个端口被动等待客户端连接。
端口:
控制连接------TCP21 用于发送FTP命令
数据传输------TCP20 用于上传,下载数据
FTP服务的使用
1.安装:linux中 yum -y install vsftpd
2.开启ftp服务:systemctl start vsftpd.service
3.查看是否开启netstat -lntp
可看到21端口
4.关闭SELinux 和防火墙,自行百度
我实验中是清空了防火墙 iptables -F
5.客户端的使用
ftp IP
不支持目录的下载和上传,注意root用户不允许登录,因为是明文传输,所以像root这种用户权限太高,万一登录时密码被别人截获就很危险,所以实验中使用普通用户admin登录。
登录在用户admin的家目录下。
get 下载文件 mget 批量下载文件,下载的文件在C:\Users\c3814文件夹下
put上传文件 mput批量上传文件
-
2使用windows的对话框,支持目录上传下载
ftp://用户名@IP
弹出来
如上图,登录成功。,直接拖拽接文件就能传输文件 -
3第三方工具:WinSCP
接下来,演示一个获得用户名和密码的例子,我们知道ftp是明文传输,这也是为什么禁止用root和密码登录的原因,防止别人截取了登录的密码,现在已普通用户admin为例,演示获得admin密码的例子。
centos终端输入
tcpdump -i ens33 -nnX port 21 监听ens33网卡的21端口,nnX是转为16进制
这时,windows下通过上述的方式登录,发现获取了数据包,仔细观察数据包,里面有用户名和密码