FTP(文件传输协议)是用于在网络上传输文件的标准协议,其核心功能如下:
一、基本文件传输功能
- 上传文件(Put/Upload)
客户端可将本地文件传输到远程服务器。 - 下载文件(Get/Download)
客户端可从服务器获取文件到本地。 - 多文件批量传输
支持同时传输多个文件或整个目录。
二、目录与文件管理
- 目录操作
- 列出远程目录内容(LIST?命令)。
- 创建/删除目录(MKDIR?和?RMDIR)。
- 切换当前工作目录(CWD)。
- 文件操作
- 删除文件(DELE)。
- 重命名文件(RNFR?和?RNTO)。
- 检查文件属性(如大小、修改时间)。
三、连接与传输模式
- 主动模式(PORT)
服务器主动连接客户端的数据端口(默认使用端口20)。 - 被动模式(PASV)
服务器开放随机端口等待客户端连接,适用于防火墙后的客户端。 - 传输类型
- ASCII模式:传输文本文件(自动转换换行符)。
- 二进制模式:传输图片、程序等非文本文件。
四、身份验证与权限
- 用户认证
- 通过用户名和密码登录(明文传输,安全性低)。
- 匿名访问(用户名为?anonymous,通常无需密码)。
- 文件权限管理
部分服务器支持通过?CHMOD?命令修改文件权限(需服务器支持)。
五、扩展功能
- 断点续传
支持在传输中断后从中断点继续传输(需客户端和服务器支持)。 - 代理服务器支持
可通过代理服务器连接FTP,适用于企业网络环境。 - 日志记录
服务器可记录用户操作日志,便于审计。
六、相关协议与安全性
- FTPS:基于SSL/TLS加密的FTP扩展,保障传输安全。
- SFTP:基于SSH协议的文件传输,与FTP无关但功能相似。
- 局限性:FTP默认使用明文传输,易被窃听,建议在内部网络或配合VPN使用。
总结
FTP的核心是高效的文件传输和目录管理,但因安全性问题,逐渐被FTPS、SFTP或云存储替代。理解其功能有助于在特定场景(如本地服务器维护)中合理使用。