← 返回首页

FTP与SFTP对比:文件传输协议详解

FTP(File Transfer Protocol,文件传输协议)和SFTP(SSH File Transfer Protocol,SSH文件传输协议)是两种常用的文件传输协议。虽然它们的功能相似,但在安全性、工作原理和使用场景上有很大区别。

FTP协议

FTP是一种传统的文件传输协议,诞生于1971年,是互联网上最古老的协议之一。

FTP 双端口连接模式

sequenceDiagram
    participant C as FTP客户端
    participant S as FTP服务器
    Note over C,S: 控制连接 (端口21)
    C->>S: CONNECT 21
    S->>C: 220 Ready
    C->>S: USER anonymous
    S->>C: 331 Guest login ok
    C->>S: PASS email@example.com
    S->>C: 230 User logged in
    Note over C,S: 数据连接 (动态端口)
    alt 主动模式 PORT
        C->>S: PORT 5000
        S->>C: 200 PORT command okay
        S->>C: CONNECT 5000
    else 被动模式 PASV
        C->>S: PASV
        S->>C: 227 Entering Passive Mode (192,168,1,100,117,56)
        C->>S: CONNECT 192.168.1.100:30000
    end
    S->>C: 150 Opening data connection

FTP的特点