[探索]Linux下实现简单的FTP服务器
Posted 草里藏珠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[探索]Linux下实现简单的FTP服务器相关的知识,希望对你有一定的参考价值。
网上查了很多资料,90%的代码运行后,用linux下ftp命令登录不了.
后来发现实验楼中有个项目是FTP服务器,于是不得已又花了400大洋买了会员,结果其代码运行后,ftp命令也登录不了,真TM坑!!!我的400大洋啊!!!!!
无奈,只能自己探索一番了!
一、抓包FTP连接过程
还好我有个服务器上有proftpd,因此,我准备先抓包剖析一下FTP的相关包.
打开wireshrk,打开ftp://xxx.xxx.xxx.xxx之后,看到了巨多的数据包跑了出来,筛选分析如下:
三次握手 server:220 成功连接! //浏览器默认执行了匿名登录 匿名登录 530登录错误 //匿名登录失败后,开始提示用户进行登录 //用户名 client:USER ... server:331 //密码 client:PASS ... server:230 成功登入! //请求系统相关信息 client:SYST server:215 //请求系统相关信息 client:FEAT server:211-Features server:211 End //设置编码格式 client:OPTS UTF8 ON server:200 UTF8 set to on client:PWD server:257 /ftp目录 client:TYPE I server:200 Type set to I client:PASV server:227 client: CWD /ftp目录 server: 250 CWD successful //显示当前文件列表 client:LIST server:FTPData //以二进制方式接受数据 client:150 server:226
二、用C语言模拟实现成功登录过程
以上是关于[探索]Linux下实现简单的FTP服务器的主要内容,如果未能解决你的问题,请参考以下文章
Linux技术专题系列「必备基础知识」一起探索和实践sftp配置之密钥方式登录
java实现FTP文件传输,linux之间,windows之间,以及windows和linux之间传输,实现代码是不是相同?
Linux下使用libcurl实现FTP单个文件上传下载功能