2005 年度 情報システム構成論 第 9 回 分散ファイルシステム
DESCRIPTION
2005 年度 情報システム構成論 第 9 回 分散ファイルシステム. 西尾 信彦 [email protected] 立命館大学 情報理工学部 情報システム学科 ユビキタス環境研究室. ユーザ情報を共有する場合の問題. 複数のサーバ上でユーザ環境 ( 個人用設定ファイル等 ) を同様に構築することが困難 必要なファイルをあちこちに分散したくない 必要なファイルを統一的に扱いたい 分散ファイルシステムを利用する. NFS(Network File System). Unix 系 OS でほぼ確実に実装されている分散ファイルシステム - PowerPoint PPT PresentationTRANSCRIPT
ユーザ情報を共有する場合の問題
• 複数のサーバ上でユーザ環境 ( 個人用設定ファイル等 ) を同様に構築することが困難
• 必要なファイルをあちこちに分散したくない
• 必要なファイルを統一的に扱いたい
• 分散ファイルシステムを利用する
NFS(Network File System)
• Unix 系 OS でほぼ確実に実装されている分散ファイルシステム
• バイナリ特化のディレクトリサービスと言えなくもない
• Linux kernel 1.2 のころから Version2 が実装されている
• 歴史が古く、文献が豊富である
各自の Home として NFS を使う
• 各自の Home(/home 以下 ) を NFS に置くことで可能
• 複数のホストで同一ユーザディレクトリサービス (NIS や LDAP) と同一 NFS を利用することによって、複数のホストを同一の環境で利用することができる。
• 疑問点– なぜ、同一ディレクトリサービスと同一 NFS の組で
利用する必要があるのか
Unix 系のファイル権限の基礎• Unix 系 OS では『ユーザ ID 』によって所有
者を見分けている。• 『ユーザ名』によってではない
つまり• ユーザ名とユーザ ID のペアが同一のユーザ
情報を利用してアクセスする必要がある
• 同一ディレクトリサービスと同一ファイルシステムのペアを利用する必要がある
NFS の特徴
• 古いバージョンでは 2GB のファイルまでしか利用することができない
• 2GB 以上のファイルを利用する場合は Linux kernel 2.4.x と glibc version 2.2.x が必要
• 原則的にファイルアクセスの判断は– NIS に管理されたユーザ ID のみに頼っている– NIS のドメインでは透明に統一的な扱いになるが– ユーザ ID を詐称されないようなガードが必要
NFS の問題点
• 通信経路暗号化が存在しない– 通信内容が丸見えである
• 接続ホスト認証機構がない– サーバは接続元アドレスを元に接続の可否を決定する
(/etc/exports) ため、接続を許可しているネットワーク内にノートパソコンなどを持ち込まれ,ユーザ ID を詐称されるとフルアクセスされてしまう危険性がある
– また、ユーザ別に接続許可を設置することができない• 通信途中で回線切断などが起こると操作中の
ファイルが壊れる可能性がある• ネットワーク的に切断されているときは,
キャッシュ以外は一切利用できない
AFS(Andrew File System)
• Andrew Project (CMU) の成果• NFS に Kerberos 認証を付加し、個人認証機構
と通信暗号化を付加したもの• 世界中で共通のルート /../ をもつ
– Multi-institutional ファイルシステム• klogin による期限つきトークンの生成• ファイル ( ディレクトリ ) 操作を詳細に区別
– コピー,修正,削除を区別する• CMU -> Transarc -> IBM
CFS(Coda File System )
• AFS2 を基本として、モバイル環境に特化した分散ファイルシステム– CMU の Satiya の研究グループによる成果
• ネットワークから一時的にクライアントが切断されても利用可能– 以前利用されたファイルなどをキャッシュとして
保持し、切断などでアクセスできない場合はキャッシュにアクセスする
– 復旧時にはマージ処理を行う
Windows でのファイル共有• Windows 独自のファイル共有
– 右クリックからフォルダの共有– SMB プロトコル
• Windows 以外とのファイル共有– NFS クライアントを利用する
• NFS を Windows で利用する (SFU)• ユーザ ID マッピングを行う必要がある
– ほとんどの場合 NFS クライアントについている
– Samba を利用する• Windows のファイル共有と同等の方法 (SMB) でファイ
ルを共有する UNIX 上の分散ファイルシステム• Unix 系で利用可能な SMB インプリメントである
Samba が利用できる
Windows ファイル共有用プロトコル
• SMB– ファイルが共有可能– プリンタも共有可能– 下位のプロトコルとして NetBIOS を使う– MS-DOS 時代の LAN Manager から利用されてい
るプロトコル
• CIFS– SMB を拡張し、 TCP/IPベースで NetBIOS を利用
する必要がない– 現在の Samba や Windows で利用されているプロ
トコル
Samba
• SMB/CIFS の UNIX 系インプリメンテーション• ほとんどすべての Unix 系 OS でサポートされ
ている– 公式サイト情報より
Sun Solaris,Sun OS, HP-UX, IBM AIX, IBM MVS, SGI IRIX, NEC UX/4800,SCO UnixWare, Compaq Tru64 UNIX, Linux, FreeBSD, NetBSD, MachTen など他多数
• 認証に NIS 、 LDAP などを利用することができる
Samba の問題点
• セキュリティ的に脆弱– 通信経路の暗号化がない– 構造上、 Windows が提供しているのと同程度の
セキュリティしか確保できない– ユーザ名・パスワードなどの送信時に暗号化され
ないため、平文で流れてしまう。
WebDAV(Web-based Distributed Authoring
and Versioning)• Web アクセス (HTTP) を拡張して、閲覧だけ
ではなくファイル操作 (書き込み、削除、変更 ) を可能にしたもの
• HTTP(80 port) のみ公開することで利用できるため、ファイアウォール等の設定が安易
• 通信経路の暗号化などは、既存の Web技術を利用することによって可能 (SSL 等 )
• HTTP を利用するため、 OS やサーバ実体に依存しない
P2P(Peer to Peer)
• 最近 ( いろいろと )騒がれている分散ファイルサービス
• 二つのノード間で直接ファイルをやり取りする
P2P の形式比較• 中央サーバが接続しているノードとその提供ファ
イルのリストを管理する方式 (Napstar方式 )– 利用者管理が安易– 不正ファイルなどを監視することが可能– 中央サーバが停止すると全体が停止する
• 不特定多数のノードがバケツリレー方式で提供ファイルリストのマージやファイル送信を行う方式 (Gnutella/FreeNet など )– どこかのノードが停止しても、システム全体が停止する
ことはない ( 別ノード経由で利用することができる )– 不正ファイルなどが提供されていても監視することが困
難– 利用者管理は困難
分散ファイルシステムまとめ
• 複数のホストで同一ファイルシステムを扱う– NFS,AFS,CFS など
• 異なる OS や実装上で統一的にファイルを扱う– NFS,AFS,CFS,Samba,WebDAV,P2P
• 分散しているファイルを統一的に扱う– P2P
• 将来的には一部が停止しても全体が停止しない堅固な分散ファイルシステムが重要になる
DNS
DNS(Domain Name Service)
• 分散配置型データベース、ディレクトリサービスの一種
• 一組織 ( いわゆるドメイン )単位で自身が管理する範囲の情報を持つサーバを設置・管理する
• 自身のわからない部分に関しては他のサーバに問い合わせるということを繰り返して、目的の情報にたどり着く
• 日本の大本は JPNIC– JPNIC で Whois を実行すれば(WhoisCGI がある)、登録されているドメイン⇔ DNS サーバアドレスが検索できます
DNS の仕組み
DNS の動き
DNS レコード• DNS が保持できる主要情報の種類
– SOA レコード (Start of Authority)• ゾーンの情報(更新頻度、シリアル番号など)
– NS レコード• 対象ドメインの DNS サーバ名を指定する
– PTR レコード• IP アドレスに対するホスト名を指定する
– A レコード( IPv6 の場合 AAAA レコード)• ホスト名に対応する IP アドレスを指定する
– CNAME レコード• ホスト名の別名(エイリアス)を指定する(できるだけ使わないほうがよい)
– MX レコード• 対象ドメイン宛メールの受け取りサーバを指定する
DNS の問題点
• プロトコル自身にセキュリティ機構が存在しない– DNS応答自身に信頼性がない– 悪意ある第三者が DNS の返答を偽ることができる– 返答を偽ることができた場合、正常な通信を別経路に引き込むことができる
• システム的問題ではないが、非常に重要かつ被害が広範囲に及ぶにもかかわらず、管理が軽視されがち– DNS レコード操作には細心の注意を払うべき
DynamicDNS
• 動的に登録してあるホスト名⇔ IP アドレスを変更することができる
• 無料サービスが多数存在している– zive,ddo.jp など
• 家庭で(ダイアルアップ環境で)サーバを立てるならば重要