BlackChen'site

FTP主动模式和被动模式

FTP的主动传输和被动传输

主动模式:

  • 客户端从端口N向服务器21端口发起连接.
  • 客户端再N+1端口监听服务器的连接.
  • 服务器从端口20 向客户端 N+1 端口发起连接.
    主动模式

被动模式:

  • 客户端从端口N向服务器21端口发起连接.
  • 服务端在X端口(X>1024)监听客户端的连接.
  • 客户端从端口N+1 向服务端 X 端口发起连接.
    被动模式

主动FTP:
  命令连接:客户端 大于1024端口 -> 服务器 21端口
  数据连接:客户端 大于1024端口 <- 服务器20端口

被动FTP:
  命令连接:客户端 大于1024端口 -> 服务器 21端口
  数据连接:客户端 大于1024端口 -> 服务器 大于1024端口

简要总结:

  • 主动FTP对FTP服务器的管理有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞掉。
  • 被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。

办法:

  • 既然FTP服务器的管理员需要他们的服务器有最多的客户连接,那么必须得支持被动FTP。我们可以通过为FTP服务器指定一个有限的端口范围来减小服务器高位端口的暴露。这样,不在这个范围的任何端口会被服务器的防火墙阻塞。虽然这没有消除所有针对服务器的危险,但它大大减少了危险.

参考: http://blog.csdn.net/wumenglu1018/article/details/54233826

评论