概述
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) 互動模式內部命令
生成的命令:
請試著組合命令。
這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。
`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` 選項通常可以解決此問題。