文章目录

  • 一、FTP简单介绍
  • 二、FTP安全问题
  • 相关链接

一、FTP简单介绍

文件共享协议有两大类,一类是复制整个文件,另一类是联机访问。FTP是文件传送协议,属于文件共享协议中复制整个文件。(NFS是网络文件系统,属于文件共享协议中的联机访问

FTP传送一个文件需要建立两个TCP连接,即控制连接数据连接。控制连接的服务器

控制连接 数据连接
服务器使用21号端口 服务器使用20号端口
客户机主动请求建立控制连接,服务器接受请求并打开21号端口 客户使用PORT命令从控制连接上把自己的临时数据端口号发向服务器,服务器主动向客户机的该端口发送数据连接请求
在客户-服务器连接的全过程中,控制连接一直保持着,始终等待客户与服务器之间的通信 数据连接根据需求随时建立、断开连接

Host Requirements RFC建议使用流方式的FTP客户在每次使用数据连接前发一个PORT命令来启用一个非默认的端口号。如果客户没有向服务器发出PORT命令,来指明客户数据连接端的端口号,服务器就用与控制连接正在用的相同的端口号给数据连接。这会给使用流方式的客户带来一些问题:服务器20端口与处于2MSL等待状态的连接不成功。问题的原因是TCP规定禁止服务器发送同步信息(SYN),无法跨过插口对的2MSL等待状态来重用相同的插口对。

常见FTP客户端:FileZilla、VSFTP、WinSCP、IIs7服务器管理工具 、FireFTP、Transmit等。

二、FTP安全问题

  • 匿名访问
  • 弱口令
  • 未限制登录用户访问目录权限
  • 密码和文件内容都使用明文传输
  • ……

相关链接

FTP安全——阿里云
浅谈运维中的安全问题-FTP篇
FTP匿名登录或弱口令漏洞及服务加固——阿里云

FTP协议及其安全问题相关推荐

  1. ftp协议分析(一)

    作者: 肖建彬 | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明 网址:http://www.xiaojb.com/archives/it/ftp.shtml 根据是使用po ...

  2. FTP协议的分析和扩展

    2019独角兽企业重金招聘Python工程师标准>>> FTP协议的分析和扩展 出处: http://elly.blogdriver.com/index.jsp >> 1 ...

  3. FTP协议主动(Port)模式和被动(Passive)两种模式详解

    FTP协议主动(Port)模式和被动(Passive)两种模式详解 FTP(File Transfer Protocol)是文件传输协议的简称. 正如其名所示: FTP的主要作用,就是让用户连接上一个 ...

  4. day34 异常处理、断言、socket之ftp协议

    Python之路,Day20 = 异常处理.断言.socket之ftp协议 参考博客:http://www.cnblogs.com/metianzing/articles/7148191.html 1 ...

  5. [C# 网络编程系列]专题十一:实现一个基于FTP协议的程序——文件上传下载器...

    引言: 在这个专题将为大家揭开下FTP这个协议的面纱,其实学习知识和生活中的例子都是很相通的,就拿这个专题来说,要了解FTP协议然后根据FTP协议实现一个文件下载器,就和和追MM是差不多的过程的,相信 ...

  6. FTP协议的命令的使用(转)

    FTP 协议命令 如果想自己编写一个FTP客户端程序,首先得搞清楚FTP协议中的这些命令和用法. FTP COMMANDS The following are the FTP commands: US ...

  7. winscp 服务器拒绝了SFTP连接,但它监听FTP连接。 想要用FTP协议来代替SFTP吗?最好是用加密的。

    winscp 服务器拒绝了SFTP连接,但它监听FTP连接. 想要用FTP协议来代替SFTP吗?最好是用加密的. 在用Winscp 连接Ubuntu是出现: 原因是Ubuntu上没有安装sshd 解决 ...

  8. 马哥教育第二十四ftp协议、vsftpd的高级应用、rpc概念及nfs的基本应用、samba及其基本应用...

    1.ftp协议及vsftpd的基本应用          文件共享服务:                  工作在应用层:ftp(file transfer protocol)             ...

  9. ftp协议是一种用于_______的协议_网工知识角|快速理解FTP和TFTP的区别,实用收藏...

    点上方蓝字关注公众号,坚持每天技术打卡 学网络,就在IE-LAB 国内最著名的高端网络工程师培养基地 FTP和TFTP的区别是什么 CCNA零基础入门必学 FTP(FileTransfer Proto ...

最新文章

  1. Linux在shell终端中清空DNS缓存,刷新DNS的方法(ubuntu,debian)
  2. open a BP will trigger text load - COM_TEXT_MAINTAIN - READ_TEXT
  3. 附录:更多字典操作命令
  4. Vue 自定义组件 —— slot插槽
  5. 软件技术债务是什么_为什么我爱技术债务
  6. python安装方法_Python如何批量更新已安装的库,为你介绍六种方法!
  7. echarts年龄饼图_解决echarts饼图显示百分比,和显示内容字体及大小
  8. 通过zabbix_sender实现批量传递key值
  9. 韩犯罪团伙雇朝鲜***从中国发动***
  10. Window平台编译log4cpp使用方法记录 (一)
  11. 在linux上下载图片,在Linux上使用4k Stogram下载Instagram图片库 | MOS86
  12. 妈妈!我也会做植物大战僵尸啦!
  13. python隐藏窗口_python怎么隐藏界面?
  14. png图片怎么转换成jpg
  15. 悼念蓝色理想FLASH区版主:手工感情==生命如此之脆弱
  16. 6种方法计算神经网络参数量Params、计算量FLOPs、Macs简单代码
  17. java获取首字母_【Java】获取中文首字母
  18. Python爬虫爬取古诗文网站项目分享
  19. 【图片新闻】以色列著名军火商Rafael公司发布令人震撼的未来装甲战争假想视频
  20. Android内核模式下对当前进程的cred结构的获取方式

热门文章

  1. MarchingCubes算法
  2. 由浅入深,谈谈文件上传的优化思路
  3. 重装机器后,发现HP打印机无法打印多份
  4. python与单片机如何进行串行口通信_51单片机的串行口通信方式
  5. Christine Everhart
  6. sql 语句 中的 exits 和 in 关键字
  7. 动态规划之背包类问题详细介绍(代码模板)和例题练习
  8. m3u8及TS文件下载解密:m3u8文件下载及分析(三)
  9. 微信小程序:实现可拖动悬浮图标(包括按钮角标的实现)
  10. Microsoft visual Studio 2015 下的俄罗斯方块源程序以及修改过程