FTPサーバ紹介 2005年5月27日(金) 高玉 孝平@海洋気候物理学研究室B4 ~ ~ お品書き 1. FTPの概要と歴史 2. FTPの目的 3. FTPの仕組み 4. FTPサーバの利用例 5. epftpサーバの紹介 FTPの概要と歴史(1) ■そもそもFTPとは FTPとはFile Transfer Protocol の略 ネットワークで繋がった異なるマシン間でファイルを転送する ためのプロトコル(=約束事)のひとつ。 非常に古くからあり、マルチプラットフォーム(OSの種類に依 存しない)でファイル転送を実現するプロトコルとして、現在で も標準的に利用されている。 とりあえず,これだけは 覚えよう FTPの概要と歴史(2) ■FTPの歴史 とにかく古い! ・1970年ごろ 異なるホスト間でファイル転送が実現。 FTPの前身となる。 ・1973年 FTPの最初の仕様RFC454が発表。 現在用いられる基本的な仕組みが完成。 ・1985年 現在の仕様RFC959(STD9)が発表。 TCP/IPに対応。 ・1989年 RFC1123がRFC959の機能 を拡張。 その他,インターネットに関係する 代表的な出来事 ・1969年:ARPANET開始 ・1974年:TCPが発明 ・1982年:ARPANETがTCP/IPを使用 ・1983年:OSIが成立 ・1990年:ARPANET終了 ・1991年:WWWの仕組みが発明 ・1993年:最初のWebブラウザが発明 The Internet が出来るか,出来ない かくらいの頃から使われている. 補足1 ■RFCとSTDについて RFCとはRequest For Commentの略. IETF(インターネットに関係する技術の標準を定める組織)が発行する文書. RFCの分類 ・インターネットに関係する技術の仕様 例)FTP(RFC959,1123),HTTP1.1(RFC2068),SMTP(RFC851,1869) ・インターネットに関係する知識 例)匿名FTPの使い方(RFC1635),計算機の名前の付け方(RFC1178) ・ジョーク 例)伝書鳩による IP データグラムの伝送規格(RFC1149), ハイパーテキストコーヒーポット制御プロトコル(RFC2324) だれでも書くことができ,膨大な量がある. そのため,とくに大事な,標準として認められたRFCにはSTDという別の 番号もつけられる. 例)FTP(STD9),IPv4(STD5),UDP(STD6),TCP(STD7) FTPの目的(1) ■目的 (1) ファイル(コンピュータープログラムやデータ等)を共有することの助けと なり、 (2) プログラムを通して、間接的に、もしくは意識せずに遠隔地にあるコン ピュータを使用することの助けとなり、 (3) ホストのファイルの保管システムの変化から使用者を保護し、 (4) 確実かつ能率的にデータを移動する (RFC959日本語訳版 第1章から引用) (1),(2),(4)は言うまでもない. 実は(3)(=OSや機種によらない,統一的な仕組みの提供)が特徴. FTPの目的(2) ■どうしてファイル共有のための統一的な仕組みが必要なのか ⇒コンピュータは機種によってデータの扱い方が異なるため, その差異を吸収するようなプロトコルがあると便利 おなじ種類のマシンであれば, データの共有は比較的簡単 ○ × ○ 異なる種類のマシン間では データの共有が難しい × × ○ 例)異なるOSではファイル共有 に用いるプロトコルも違う ・Windows9x:NetBEUI ・Mac:Apple Talk ・Unix:TCP/IP FTPの仕組み(1) ■FTPはサーバクライアントモデル ・ファイルリスト(一覧)の要求 ・ファイルのプット(アップロード) ・ファイルのゲット(ダウンロード)要求 etc etc・・・・・・ クライアント クライアント 代表的なクライアントソフト ・IE等のWEBブラウザ ・FFFTP ・NextFTP サーバ ・ファイルリスト送信 ・ファイルの送信 etc etc・・・・・・ クライアント たくさんの ファイルが 置いてある 代表的なサーバソフト ・proftpd ・vsftpd ・Tiny FTP Daemon FTPの仕組み(2) ■FTPは二重構造:HTTPなどと比べて,少し複雑 FTP 任意のポート ● 各種制御,実行結果の応答 コントロールコネクション 21番ポート ● クライアント サーバ ● 任意のポート HTTP データコネクション ファイルやファイルリ ストの送受信 任意のポート クライアント ● ● 20番ポート(標準) 80番ポート(標準) コネクション リクエストとレスポンスを1 つのコネクションで行う ● サーバ FTPの仕組み(3) ■ユーザ名とパスワードによる認証が必要 利用者が登録されたユーザ名と,それに対応したパスワードを送信して きたときのみ,ファイルやファイルリストの転送,アクセス制御などの実 行を許可する. 一般公開されているFTPサーバは特別なユーザ名「anonymous」を使って 利用する.(anonymousは「匿名」の意味) このとき,パスワードには自分のメールアドレスを入力するのが礼儀. FTPクライアントとして,WEBブラウザを用いると, AnonymousFTPサーバからのダウンロードに対して, 自動的に「user:anonymous」「pass:メールアドレス」を 用いるので,意識しないうちにFTPを利用しているかも. 補足2 ■FTPのセキュリティ問題について FTPでは全ての通信が平文で(暗号化されずに)流れるため,パスワード を盗み聞きされる危険性がある. 対策 ・盗み聞き前提でFTPを使う. ⇒OTP(One Time Password)の利用 別名「使い捨てパスワード」. ログインのたびに,サーバからパスワードの種を受け取り, それで暗号化されたパスワードを送信する. ・もっとセキュリティの高いプロトコルを用いる ⇒SCP(Secure CoPy)など FTPサーバの利用例(1) ■ミラー・サイト ミラー(ミラーリング)とは,ネットワーク上の別のコンピュータの情報をコ ピーすること. FTPではファイルの一覧を入手することができるので,容易にミラーリング が可能.(HTTPではファイル名やディレクトリをあらかじめ知っていないと, ファイルをダウンロードできない.) ミラー・サイトは特定のマシンへの負荷を軽減させるために利用される. 負荷:小 負荷:大 負荷:小 負荷:小 負荷:小 負荷:小 通常 ミラーサイトの利用 FTPサーバの利用例(2) ■特定の人とのファイルのやりとり FTPではファイルの配布だけではなく,アップロードも簡単にできる. Webページとして公開したいファイルをWebサーバへアップロードする時な どによく用いられる. また,メールで添付して送るには適さないような大容量のファイルを容易 に転送することもできる. 不特定多数の人とのファイル交換は著作権を侵害する 恐れがあるので,基本的に,やってはいけません!! epftpサーバの紹介(1) ■epftpサーバとは? 北海道大学地球惑星科学専攻サーバ群の1つ AnonymousFTPサーバとして運用されている. 本務機の名前は green 予備機の名前は midori 毎年入れ替えを行って,FTPサーバ管理者を育成します. アドレスは ftp.ep.sci.hokudai.ac.jp (green.ep.sci.hokudai.ac.jpでもアクセスできます.) epftpサーバの紹介(2) ■こんなことをしています. 色々な需要のあるファイルをミラーリングして,地球惑星科学専攻の皆さ んに提供. 現在のミラーリング対象は・・・ ・apache(Webサーバソフト) ・bind(DNSサーバソフト) ・CPAN(Perlモジュール) ・CTAN(TeX関係) ・Debian(Linuxディストリビューションの一 つ) ・Vine (Linuxディストリビューションの一つ) ・各種mailサーバソフト ・namazu(全文検索システム) ・inn(ニュースサーバソフト) ・openssl(フリーのsslツールキット) ・proftpd(FTPサーバソフト) ・teraterm(Windows用通信ソフト) ・XFree86(XwindowSystemを提供) ミラーリングに追加してほしいものがあれば,お気軽にどうぞ おしまい ■参考文献 ・RFC959 : FTPの定義 ・RFC1123 : 第4章でRFC959の拡張 ・RFC1635 : AnonymousFTPの利用法 ・最新TCP/IPハンドブック(2002年,若林宏,秀和システム) ・TinyFTPDaemonのページ http://hp.vector.co.jp/authors/VA002682/tftpd_frame.htm ・@IT ーHTTPとFTPはどっちがファイル転送向き? http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=11&topic=2385 ・@IT ー過去からの贈り物「FTP~前編」,「FTP~後編」 http://www.atmarkit.co.jp/fnetwork/rensai/netpro10/netpro01.html ・JPNIC RFC-JP http://rfc-jp.nic.ad.jp/introduction/ ・Green,FTPserver(epftpのサイト) http://www.ep.sci.hokudai.ac.jp/~epftp/
© Copyright 2024 ExpyDoc