1. 概要

この記事では、Linuxでftpコマンドを使用して2つのシステム間でファイルを転送する方法を学習します。 ftp コマンドを使用して、サーバーからクライアントに、またクライアントからサーバーにファイルを転送できます。

FTPは暗号化を使用しません。 つまり、ユーザーの資格情報(ユーザー名とパスワード)とファイルデータはプレーンテキストとして送信されます。 その結果、クライアントとサーバー間の接続は、スニッフィング攻撃やスプーフィング攻撃などのさまざまなネットワーク攻撃に対して脆弱になります。 セキュリティを強化するために、暗号化を使用するSFTPまたはFTPSを使用できます。

2. FTPサーバーへの接続

FTPサーバーに接続するには、次のコマンドを使用できます。

$ ftp <ip address or domain name>

例えば:

$ ftp localhost

接続後、ユーザー名とパスワードの入力を求められます。 その後、ftp>プロンプトが表示されます。

$ ftp localhost
Connected to localhost.
220 (vsFTPd 3.0.3)
Name (localhost:baeldung): <enter username>
331 Please specify the password.
Password: <enter password>
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> 

これで、FTPサーバーに正常に接続されました。

3. 便利なコマンド

FTPサーバーに接続した後、次のコマンドを実行できます。

  • 得る
  • mget
  • 置く
  • mput
  • mkdir
  • rmdir
  • 消去
  • mdelete

それでは、それらの使用法を簡単に見てみましょう。

3.1. ファイルのダウンロード

getおよびmgetを使用して、FTPサーバーからファイルをダウンロードできます。

ftp> ls
200 EPRT command successful. Consider using EPSV.
150 Here comes the directory listing.
-rw-rw-r--    1 1000     1000       180103 Apr 24 08:29 file.pdf
226 Directory send OK.
ftp> get file.pdf
local: file.pdf remote: file.pdf
200 EPRT command successful. Consider using EPSV.
150 Opening BINARY mode data connection for file.pdf (180103 bytes).
226 Transfer complete.
180103 bytes received in 0.00 secs (109.0537 MB/s)

file.pdfが正常にダウンロードされました。

3.2. ファイルのアップロード

putおよびmputを使用して、FTPサーバーにファイルをアップロードできます。

ftp> put <new file name>

現在のローカル作業ディレクトリからサーバーにファイルをアップロードします。

3.3. ディレクトリの作成/削除

mkdir を使用して、新しいディレクトリを作成できます。

ftp> mkdir <new directory name>

そして、rmdirを使用してディレクトリを削除できます。

ftp> rmdir <directory name>

3.4. ファイルの削除

deleteまたはmdeleteを使用して、ファイルを削除できます。

ftp> delete <file name>

4. プロンプトを終了する

ファイルの転送が完了したら、exitまたはbyeを使用して終了できます。

ftp> exit

5. 結論

この短い記事では、FTPサーバーに接続し、いくつかのコマンドを実行し、FTPサーバーとの間でファイルを送信する方法を学びました。