ASH | サーバ | セキュリティ | Linux | FreeBSD | DB | Web | CGI | Perl | Java | XML | プログラム | ネットワーク | 標準 | Tips集

telnetでファイル転送?(FTP)

 このページでは、ファイル転送するときに利用するFTPプロトコルについて説明しています。

概要

 FTPプロトコルとは、FileTransferProtocolの略で、ファイル転送するときに利用しているプロトコルです。  FTPプロトコルは、TCP/IP上のプロトコルで、通常21番ポートと20番ポートを使ってアクセスします。  詳細な定義は、以下のRFCで定義されています。

 最初に、「telnetでFTP?」と言うタイトルですが、はっきり言ってできません。
 それは、FTPプロトコルでは、データ転送用のポートは、コマンド送信用のポートとは別のポートを利用するためです。 telnetでは、1つのポートを使った通信しか、サポートしていないからです。
 ただ、ユーザ名とパスワードを使った、ユーザ認証だけは、telnetでもできます。 そこで、以下に、telnetを使った、FTPのユーザ認証を行ってみましょう。

telnetでFTPのユーザ認証

 telnetでできるのは、FTPのユーザ認証だけですが、これを知っていると、FTPサーバの起動状態を調べたり、ユーザがログインできるかどうかを確認することができます。 ただし、ログイン後は、QUITコマンドを入力するぐらいのことしかできません。

Linux# telnet localhost 21
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ftp.ash.jp FTP server (Version 6.00) ready.

 まず、ユーザ名を入力します。

USER ftp
331 Guest login ok, send your email address as password.

 次に、パスワードを入力します。
 今回は、annonimous FTPを使いますので、マナーとして、メールアドレスを入力します。

PASS joe@ash.jp
230- Welcome to FTP server.
230 Guest login ok, access restrictions apply.

 telnetでは、他に何もできませんので、QUITします。

QUIT
221 Goodbye.
Connection closed by foreign host.

 残念ながら、telnetでできるのは、ここまでです。
 そこで、次のftpコマンドでファイル転送で、ftpコマンドを使って、FTPプロトコルの解析をしてみます。



Copyright (C)1995-2002 ASH multimedia lab.
mail : info@ash.jp