zoukankan      html  css  js  c++  java
  • android(十五) FTP的两种工作模式

      (一)PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链

    当需要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了一个1024+的随机端口,你过来连接我”。于是服务

    器从20端口向客户端的1024+随机端口发送连接请求,建立一条数据链路来传送数据。


      (二)PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。
    当需要传送数据时,服务器在命令链路上用 PASV命令告诉客户端:“我打开了一个1024+的随机端口,你过来连接我”。于是客户

    端向服务器的1024+随机端口发送连接请求,建立一条数据链路来传送数据。


      (三)FTP的port和pasv模式最主要区别就是数据端口连接方式不同,FTP port模式只要开启服务器的21和20端口,而FTP pasv需要开启服务器所有

    大于1024的端口和21端口。从网络安全的角度来看的话似乎FTP port模式更安全,而FTP pasv更不安全,那么为什么RFC要在FTP port基础再制定一个

    FTP pasv模式呢?其实RFC制定FTP pasv模式的主要目的是为了数据传输安全角度出发的,因为FTP port使用固定20端口进行传输数据,那么作为黑客

    很容使用sniffer等探嗅器抓取FTP数据,这样一来通过FTP port模式传输数据很容易被黑客窃取,因此使用pasv方式来架设FTP server是最安全绝佳方案。

    使用FTP pasv方式会给网络安全很大隐患,解决FTP Pasv模式的端口开放问题的两种方法:

    (1)使用漏洞扫描工具比如Xscan找出服务器开放的端口然后deny

    (2)使用具有状态检测防火墙开启FTP pasv的端口

  • 相关阅读:
    python 20 规范化目录
    python 19 包、logging模块
    python 17 Json、os、sys、hashlib等内置模块
    python 16 time、datetime、random模块
    python 15 带参装饰器
    python 14 装饰器
    [LeetCode]36. Compare Version Numbers版本号比较
    [LeetCode]35. Valid Parentheses有效括号
    [LeetCode]34. Add Binary二进制相加
    [LeetCode]33. Longest Palindromic Substring最长回文子串
  • 原文地址:https://www.cnblogs.com/yuyutianxia/p/3355321.html
Copyright © 2011-2022 走看看