ファイル転送とファイル共有
グループ 1 岩本祥平 田口龍一 田中 忍 日高大樹 酒井瑞樹ファイル転送の背景
コンピュータに記憶された情報を他のコンピュータで扱う 内蔵HDDを外して直接渡すのは実用的ではない 外付けHDDを持ち運ぶのは実用的ではない 情報を転送する方法が必要 当初あった技術、ネットワークを使った解決手段 種類の違うOS間でのファイル管理を考慮 ファイル単位での通信が必要 ファイル転送が開発 2ファイル転送の目的
異なるOS 間でも使用できる情報の転送システム Windows-UNIX間、等 遠隔のファイルにアクセスし操作 ファイルの確認、読み出し、書き込み 規定が違うファイルの内容でも転送可能なシステム 文字コードなど 確実にデータを転送する 3ファイル転送の条件と方式
ファイル転送の条件
送信側と受信側で同じプロトコルが必要
ファイル転送の方式
FTP(File Transfer Protocol)
TFTP(Trivial File Transfer Protocol)
WebDAV(Web Distribute Authoring and Versioning)
FTP(File Transfer Protocol)
目的 確実にデータを転送 ファイルを受け送りする2者を、 第3者から制御 概要 ネットワークでファイルの転送を行うためのプロトコル IETF(Internet Engineering Task Force)によってRFC 959で定義
クライアントサーバ型プロトコル 二つのポートを標準で使用
データ転送用ポート 20番(アクティブモード),任意(パッシブモード)
データ転送ポート・制御用ポート
6 クライアント サーバA サーバB :データ転送用 :制御用FTPの機能
ユーザの認証機能 ユーザ名とパスワードによる認証 匿名で利用可能→ anonymousFTP ファイルシステムの操作 getコマンドやputコマンドなど 転送モード ASCIIモード: テキスト関連 テキストの改行コードを転送元システムのものから転送先システムのものに変換 バイナリモード: 画像や動画,圧縮ファイル テキストも転送できるが改行コードを変換せず、そのまま転送 接続モード アクティブモード パッシブモード 7anonymous FTP
目的 アカウントを作成せずにFTPのサービスを利用 認証作業を意識させない 匿名でのFTPを利用可能にする機能 どのFTPサーバーでも設定を行うことにより anonymousFTPの機能が使用可能となる 使い方 アカウント名にanonymousと入力 パスワードはメールアドレスを入力 8FTPの動作
9 ファイル システム ファイル システム サーバの 制御プロセス サーバのデータ 転送プロセス クライアントの データ転送プロセス クライアントの 制御プロセス ユーザ インターフェース FTPサーバ FTPクライアント データの送受信 の指示.管理 データの送受信 の指示.管理 制御用 データ用 コマンドと応答 ファイルの送受信get
指示
FTPの接続モード(アクティブ・モード)
アクティブ・モード(ポートモード) サーバからクライアントにむけてTCP接続開始 アップロードもFTPサーバからコネクションが始まる 使用するポート番号は決まっている データ転送ポートTCP:20番 制御用ポートTCP:21番 10アクティブモード通信の概略
11 クライアント サーバ 3001 3002 21 20 PORT command OK data connectionSend OK. data connection close OK
FIN FIN
PORT 10.2.3.200:3002
NLIST
Status OK. To send data
directory list send
(1) (2) (3) (4) (5) (6) (7) (8) アクティブモード NLISTコマンド
アクティブモード
メリット ポート番号が決まっていて、他のポートを開ける必要 がない デメリット クライアントがファイアウォール内に存在する場合 接続できない場合ある クライアント側のポートは任意なため,必要以上にポー トを開ける場合がある 12FTPの接続モード(パッシブモード)
パッシブ・モード クライアントからサーバにむけてTCP接続開始 接続の方向は常にクライアントからサーバへ向けて確立 接続要求のパケットを常にクライアントから送信 使用するポート番号 データ転送ポートTCP:任意 制御用ポートTCP:21番 13パッシブモード通信の概略
14 クライアント サーバ 3001 3002 21 5001 Enter PASV 10.2.3.234. 5001Send OK. data connection close OK
FIN FIN
PASV
NLIST
Status OK. To send data
directory list send
(1) (3) (4) (5) (6) (7) (8) (9) data connection (2) パッシブモード NLISTコマンド
パッシブモード
メリット クライアントがファイアウォールの内部に存在した場合でも、 問題なく接続できる データ転送用ポートもランダムのため,セキュリティが アクティブモードと比べて高い デメリット FTPサーバが任意の一時的にポート番号を開ける 15TFTP(Trivial File Transfer Protocol)
目的 ディスクレスのコンピュータの起動 ネットワーク機器などのファームウェアのバージョンアップ 通信にはUDPを利用 ポート番号69使用 受信側が応答確認 ユーザ認証機能は無い FTPと比べて機能は少ない コマンドは読み出しと書き込み、応答確認のみ 16WebDavとは
分散環境におけるwebコンテンツ等の編集や管理
を目的に作られた
wwwの通信プロトコルであるHTTPの拡張機能で
ある。HTTPを用いてファイルの転送や共有が可
能。
- webサーバのフォルダおよびファイルの管理を
webクライアントから行える。
使用するにはサーバとクライアント両方が
WebDavに対応している必要がある
17W
EBDAVの動作
サーバ クライアント アクセス ファイルをコピー 18WebDavの利点
セキュリティの向上が比較的容易 HTTPの拡張仕様であるため、SSLによる暗号化や プロキシなどをそのまま利用することができる。 特定のOSに依存しない WebDavはHTTPの拡張機能なのでOSや機種に依存 する特別な仕組みはない。 19WebDavの機能
・クライアントで作成された文書をサーバに送信し て公開する サーバ上のファイルやフォルダの一覧を取得し たり、ファイル・フォルダの複製・移動・削除が 行える 編集中の文書を他のユーザが書き換えられないよ うに保護する機能、ファイルの修正情報を管理 20WebDavのデメリット
丌特定多数にWebDavでファイルアクセスを許すと 危険 理由 WebDavを持っていたら誰でもアクセスできてしまい勝 手にファイルを見られたり、内容を書き換えられてし まう可能性があるため。 解決策 ユーザ名とパスワードによるユーザ認証を行う。 21ファイル転送の問題点
リモートディスクのファイルを
直接、表示・編集丌可能
⇒リモートからローカルへファイルの転送が必要
さらに編集を更新するには再転送の必要
22ファイル共有を使用することで解決
ファイル転送とファイル共有の違い
23 copy ファイル転送 ファイル再転送 FTPクライアント ファイルサーバ NFSクライアント ファイルに直接アクセス 表示・編集 表示・編集 copyファイル共有の概要
ファイル共有技術によって、
リモートファイルへの直接アクセスが可能
利点
リモートファイルがローカルファイルのように見える アクセスのために他のシステムにログイン丌必要 集中管理によりデータ管理が簡単 ファイルの編集更新が即時⇒ NFS、Samba、NASをあつかう
24NFS(N
ETWORKF
ILES
YSTEM)
UNIX間のディレクトリやファイルを共有するための サーバ/クライアント型の分散ファイルシステム、 かつプロトコル⇒
Sun Microsystems社によって開発され、 ほとんどのUNIXのシステムで使用 分散ファイルシステム ネットワーク上の複数のコンピュータで ファイルを相互に共有するシステム 25NFSプロトコルの階層
NFSプロトコルは3つの層からなる 26 UDPまたはTCP NFS RPC XDR ア プ セ ト リモートとの手続きの 実行を可能にする ローカルコンピュータ側で データ形式の再変換を行う ファイル共有サービスを実行NFSで必要な設定(サーバ側)
公開ディレクトリ「export」の作成
クライアントの指定
デーモンの起動
nfsd ⇒ RPC要求を受け入れ、実行 m0untd ⇒ マウント要求を取り扱う rpcbind ⇒ ポート111を開けて要求を待ち受け 要求に応じたプログラムを実行 27NFSで必要な設定(クライアント側)
共有ディレクトリ「share」の作成
⇒ 公開ディレクトリ「export」の中身をshareに
組み込む
マウント
⇒ システムにデータを認識させ、利用可能に 28export export
マウントでのファイル共有
29 さ れ / etc home usr home2 /etc home usr
home2
マウントポイント
Server Client
share マウント要求
マウントするまでのプロセス
30 クライアント サーバ rpcbind mountd nfsd mountdのポートは? mountdのポート番号 /exportのファイルハンドルは? ファイルハンドル=0x123456 nfsdのポートは? nfsdのポート番号 0x123456、”index.html”のルックアップ ファイルハンドル=0x123457 ファイルハンドル=0x123457の読み取りデータ
SMBFS(SMB File System)
概要 Microsoft社が開発 Windowsのファイルやプリンタを共有するためのクラ イアント/サーバ方式の分散ファイルシステム 使用プロトコル SMB(Server Message Block)
NetBIOSインタフェース(TCP/UDP-137,UDP-138,TCP-139)
NetBIOSインタフェースとされるプロトコル
NetBIOS over IPX/SPX NetBEUI
NetBIOS over TCP/IP
SMBFSの問題点
問題点 NetBIOSを必要とすること 通信相手のサーバを見つける場合NetBIOSのネームサービスを 利用しなければならない また、NetBIOSが通信できるようネットワーク環境を整えなけ ればならない 複数のポートを必要とすること CIFS(Common Internet File System) TCPポート 445番を使用 またはSMB over TCP/IPともよばれるプロトコル Windows独自のネットワークプロトコル(NetBIOS)を使用 していない CIFSを用いたソフトウェア Samba 32
SMBとCIFS
TCP/IP コネクション確立 NetBIOS名前解決 SMBセッション確立 認証後リソースにアクセス TCP/IP コネクション確立 SMBセッション確立 認証後リソースにアクセス SMB CIFS 33SMBセッション
Samba
開発動機
多く利用されるWindowsと異なるOS間でファイル共有を行
うため
概要
ANU(Australian National University)のAndrew Tridgell氏ら
によって開発されたフリーウェア UNIXでSMB(CIFS)を用いるクライアント/サーバ方式の ファイル共有ソフトウェア UNIX-Windows間でのファイル共有を実現 共有フォルダに対するアクセス制限機能 35
Sambaの問題点
UNIXからWindowsのプリンタドライバ利用するこ とができないこと → プリンタドライバがUNIX側に必要 ファイル名に関する問題 Windowsがアルファベットの大文字と小文字を区別で きない 36OSが混在する環境でのファイル共有
ファイル共有
UNIX環境:NFS Windows環境:SMB/CIFS OSが混在する環境でのファイル共有
別々のサーバを用意 ソフトウェアをインストールNASの開発
解決策 37NAS(Network Attached Strage)
目的
NFS/CIFSの双方のサービスを提供 概要
NFS/CIFSを用いたファイルサーバ専用機 安全性を確保するためにRAIDを採用NAS
Linux Mac Windows
RAID
(Redudant Arrays of Inexpensive
Disks)
目的
冗長性のあるデータによるデータ保護 概要
複数のHDDを用いて、1個の仮想的なHDDを構 築する技術 UCBの研究者が考案 RAID0から6の7種類 39RAID0
データを単純に分散(ストライピング)
利点
RAIDの中では読み書きが高速 欠点
1台のHDDが故障したら、データが復元できないABCDEF A D B E C F 40
RAID1
2台のハードディスクが同じデータを格納
(ミラーリング)
利点
1台のハードディスクが故障してもデータの復元可能 欠点
書き込み性能が低下ABCD ABCD ABCD 41
RAID3
データの排他的論理和(xor)で生成した誤り訂正符号パリ ティを1つのHDDに格納 利点 パリティによるデータ復元 欠点 パリティ格納用のHDDに書き込み集中 ABCD A C B D P1 P2 P1=A xor B P2=C xor D 42RAID5
パリティを全てのHDDで分散して格納
利点
RAID3の欠点を解消 欠点
書き込み性能が低下ABCDEF A B C D P1 P2 P3 E F P1 = A xor B P2 = C xor D P3 = E xor F 43
今回の課題
44
NFSの構築を行う
Sambaのインストールを行う
参考文献(1)
マスタリングTCP/IP応用編, Philip Miller. 株式会社オーム
社,1998年 FTPとTELNET,川上峻史,工学図書株式会社,1995年 SAN&NASストレージネットワーク管理, W.CurtisPreston著, オライリージャパン, 2002年 ディスクアレイテクノロジ RAID ,宇野俊夫著,エーアイ出版, 2000年 コンピュータネットワークハンドブック ,Jr.,Frank J.Derfler 著, オライリージャパン,2002年 コンピュータの構成と設計:ハードウェアとソフトウェアの
インターフェース 第3版 ,David A. Patterson ,John L. Hennessy著, 日経BP社,2006年
NFSバイブル, Brent Callaghan,株式会社アスキー,2001年
参考文献(2)
SAMBAでRUMBA! PC UNIX&Win&Mac接続ガイド,
安達浩次,奥乃美,竹岡尚三,秀和システム,1998年
Samba リファレンス,John D. Blair,翔泳社,1999年 RFC 2518