fc2ブログ

決まってなし。

FTPとは

FTPの仕組み

ファイル(File)を転送(Transfer)するプロトコル(Protocol)。
FTPは他の通信(HTTP・POP3等)とは少し違う。コマンドの応答の接続のほかにもう1つ別の接続を用意し、それをデータ送受信専用に使います。
ファイルの転送に特化して考えて作られている。効率的にファイルの送受信が可能です。
ネットオークションにたとえるとわかりやすいかもです、メールで約束して郵便で送ってもらうイメージ。

簡単なフロー
→コマンド応答の接続
=>データ転送用の接続

クライアント          サーバー
①→繋いでいい?
                ←いいよ②
③→名前とパスワード
                ←確認したぞ④
⑤→住所はここです
                ←わかったー⑥
⑦→これが欲しい
                <=じゃあ郵便で送ります⑧
⑨→届きましたー

ここで問題なのが⑧の接続、
他は全てクライアントからの返事なのに対して、⑧だけサーバーからクライアントへの接続になる。
社内ネットワークなどセキュリティに厳しいとこだとこれで弾かれる。というか外部からの接続は可能な限り弾きたいはずです。
できれば出品者に住所は知られたくない。だからこっちから取りに行くよ。と
んでパッシブモードというものが使われています。

PASVモード

クライアント         サーバー
①→繋いでいい?
               ←いいよ②
③→名前とパスワード
               ←確認したぞ④
⑤→PASV使える?
               ←いいよー住所はここね⑥
⑦=>じゃあ行きますー
⑧=>あと欲しいものはあれね
               <=いらっしゃい⑧
               <=はいコレ渡したよ⑨

⑩→じゃあねー
               ←じゃあねー⑪

こんな感じにすればサーバーからクライアントに接続するわけでは無いので多少セキュアというか、セキュリティポリシーに引っかからないでできるわけです。

実際はこんな感じになります。(PASVじゃない)
Connected to aaa.
220 aaa FTP server Fri Aug 15 16:58:23 JST 2003) ready.
Name (aaa:yuichi): yuichi.
331 Password required for yuichi.
Password:
230 User yuichi logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful.
ftp> get find.before
200 PORT command successful.
150 Opening BINARY mode data connection for find.before (971 bytes).
226 Transfer complete.
971 bytes received in 0.041 seconds (23 Kbytes/s)
ftp> by
221-You have transferred 971 bytes in 1 files.
221-Total traffic for this session was 2848 bytes in 2 transfers.
221-Thank you for using the FTP service on aaa.
221 Goodbye.


スポンサーサイト



コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://uuuu1111.blog20.fc2.com/tb.php/63-1f1aecb9

 | HOME | 

Appendix

ゆういち

ゆういち

特にテーマも無いblog兼自分のメモです。
どうぞよろしく!

Monthly

Categories

Recent Entries

Recent Comments

Recent Trackbacks