> 网络管理 > ftp

ftp: 文件传输协议客户端

ftp 命令是一个命令行客户端,用于连接到 FTP(文件传输协议)服务器并上传或下载文件。尽管它是一个较旧的协议,但在某些环境中仍然使用,对于简单的文件传输任务非常有用。

概述

FTP 是用于通过互联网在不同主机之间传输文件的标准网络协议。ftp 命令是使用此协议的客户端,可以连接到远程服务器,执行列出、传输和删除文件等操作。然而,FTP 在数据传输时不加密,因此存在安全漏洞。建议在传输敏感文件时使用基于 SSH 的 `sftp` 或 `scp`。

主要特点

ftp 命令的主要特点如下:

  • 基于命令行的 FTP 客户端。
  • 连接到远程 FTP 服务器并传输文件。
  • 通过交互模式可以连续执行多个命令。
  • 提供文件列表查看 (`ls`)、文件上传 (`put`)、文件下载 (`get`) 等功能。

FTP 与 SFTP

FTP 和 SFTP 在文件传输方式和安全性方面存在显著差异。

  • FTP (文件传输协议): 以明文形式传输数据,安全性较差。使用端口 21,数据传输需要额外的端口。
  • SFTP (SSH 文件传输协议): 通过 SSH (安全外壳) 加密传输数据,因此更安全。使用端口 22,所有通信都通过单个端口处理。

主要选项

ftp 命令通常在不带参数的情况下运行以进入交互模式,或者与特定的服务器地址一起运行。交互模式下可用的内部命令更为重要。

1) 执行选项

2) 交互模式内部命令

生成的命令:

请尝试组合命令。

描述:

`ftp` 执行命令。

通过组合这些选项,您可以与 AI 一起虚拟地执行命令。

使用示例

通过 ftp 命令的各种使用示例来熟悉其功能。

连接 FTP 服务器

ftp ftp.example.com

连接到 `ftp.example.com` 服务器。连接后需要输入用户名和密码。

匿名 FTP 服务器访问

ftp ftp.example.com
Name: anonymous
Password: your_email@example.com

连接允许匿名 FTP 的服务器时,使用 `anonymous` 作为用户名,并输入电子邮件地址作为密码。

文件下载与上传

ftp ftp.example.com
... (접속 후)
get remote.txt
put local.txt

连接到服务器后,使用 `get` 命令下载 `remote.txt`,使用 `put` 命令上传 `local.txt`。

上传多个文件 (mput)

ftp ftp.example.com
... (접속 후)
mput *.jpg

使用 `mput` 命令一次性上传多个文件。`mget` 的使用方式类似。

安装

ftp 通常在大多数 Linux 发行版中作为 `ftp` 或 `inetutils-ftp` 包默认包含。如果缺失,可以使用以下命令安装。

Debian/Ubuntu

sudo apt update
sudo apt install -y ftp

RHEL/CentOS/Fedora

sudo dnf install -y ftp

Arch Linux

sudo pacman -S --needed ftp

提示与注意事项

总结了使用 ftp 命令时应注意的事项。

提示

  • ftp 的安全性较差,因此在传输敏感信息时,建议使用 `sftp` 或 `scp`。
  • 在交互模式下输入 `help` 可以查看所有内部命令列表。
  • 有些 FTP 服务器需要使用被动模式 (passive mode) 才能正常连接。在 `ftp` 命令中添加 `-p` 选项通常可以解决此问题。

相关命令

功能上相似或经常一起使用的命令。


相同类别命令