情報システム管理 情報システム管理
第12回 ファイル共有
水野嘉明
2
1 . Samba
Samba の仕組と設定について
2 . NFS
NFS
の仕組と設定について3 . NIS
NIS の仕組と設定について
本日の内容
1 . Samba
1 . 1 Samba の機能
1 . 2 Samba の仕組み
1 . 3 Samba のインストール 1 . 4 Samba の設定
1 . 5 Samba ユーザの作成 1 . 6 Samba の起動
3
1 . Samba
Samba
とは Linux
やUNIX
マシンを、Windows
のファイルサーバ/プリントサーバ とすることができるソフト UNIX
とWindows
が混在する環境で、手軽に情報共有を行えるようにな る
4
1 . 1 Samba の機能
Samba は、いくつかの機能を持つ
ファイルサーバ
プリントサーバ
クライアントの認証
ドメインコントローラ
Windows Active Directory
5
これを説明
1 . 2 Samba の仕組み
Windows から直接 UNIX のファイ ルをアクセスすることは出来ない
6
Windows
クライアン トUNIX
サー バ7
Windows と UNIX を橋渡しするソ フトが必要
Windows
クライアン トUNIX
サー バソフト専用
★ クライアント毎にソフトが必 要 通常、クライアントの方が数 が多い
1 . 2 Samba の仕組み
8
Samba は、クライアントに対して
UNIX を Windows サーバのよう に見せる
Windows
クライアン トUNIX
サー バS am ba
1 . 2 Samba の仕組み
9
Samba
には、ユーザを登録する
サーバ(UNIX
)のユーザとSamba
のユーザは、ユーザ名を同じに
Samba
にアクセスしてきたユーザは、サーバのファイルにアクセス するため
パスワードは、別に管理する
パスワードの暗号化方式が異なる1 . 2 Samba の仕組み
1 . 3 Samba のインストール
Samba
関係のパッケージ samba
samba
サーバ smbclient
samba
のクライアント samba-common
samba/smbclient
の両方から利 用される共通ファイル10
1 . 4 Samba の設定
Samba の設定ファイル /etc/samba/smb.conf
smb.conf は、大きく3つのセ クションと共有毎のセクション に分けられる
11
12
smb.conf のセクション
[global]
Samba の全体的な設定
[printers]
共有プリンタの設定
1 . 4 Samba の設定
13
[homes]
ユーザ毎のホームディレクト リの設定
その他
共有フォルダ毎の個別設定
1 . 4 Samba の設定
14
[global] セクション
Windows のワークグループ名
Windows で表示される名前
workgroup = office
server string = My Samba Server
1 . 4 Samba の設定
15
アクセス制御192.168.12.
xx と192.168.13.
xx からのみ アクセスが可能アクセスを拒否するホストのリスト
hosts allow = 192.168.12. 192.168.13.
hosts deny = pirate bandit
1 . 4 Samba の設定
16
セキュリティモード
(クライアント毎に認証)
security = user
1 . 4 Samba の設定
user の他に、次のモードがある
• share (共有モード) ×
• server (サーバモード) ×
• ADS ( Acitive Directory モ-
ド) • domain (ドメインモード)
17
[homes] セクション
[homes]
comment = Home Directories browseable = no
read only = no
1 . 4 Samba の設定
18
設定ファイルのチェック
設定内容を表示し、チェックす るツールがある
$ testparm
1 . 4 Samba の設定
19
testparm の実行結果例
[root@localhost samba]# testparm
Load smb config files from /etc/samba/smb.conf Processing section "[homes]"
Processing section "[printers]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions [global]
workgroup = HOME
netbios name = MIZUNONOTE
server string = Samba Server Version %v security = USER
log file = /var/log/samba/log.%m
1 . 4 Samba の設定
1 . 5 Samba ユーザの作成
Sambaユーザを作成し、パスワードを設定する
Samba上のパスワードを変更
rootは、任意のユーザのパスワードを変更可。一般ユーザは、自分のパスワードのみ変更可。
$ pdbedit -a -u username $ smbpasswd [username]
20
1 . 6 Samba の起動
smbd
とnmbd
の二つのデーモン
サービス制御スクリプトはsamba
(
smb
とnmb
の二つのこともある)$ invoke-rc.d samba start
$ update-rc.d samba defaults
21
2 . NFS
2 . 1 NFS の仕組み
2 . 2 NFS サーバのインストール 2 . 3 NFS サーバの設定
2 . 4 NFS クライアントの設定
22
2 . NFS
NFS とは、
ネットワークを介して、リモー ト・ホストのファイルシステム を利用するためのシステム
23
2 . 1 NFS の仕組み
NFS (Network FIle System)
UNIX
系OS
で、ファイルを共有する 手段として広く利用されている(
Samba
:Windows→UNIX
、NFS
:UNIX→UNIX)
サン・マイクロシステムズ社が開発24
25
Sun RPC
により実現 RPC (Remote Procedure Call)
別のマシンにある手続きを呼出し 結果をもらう
プログラムは、通信を意識しない2 . 1 NFS の仕組み
26
セキュリティは、弱い
インターネット向けのサーバで は利用を避け、限られた範囲の ネットで使用すること
2 . 1 NFS の仕組み
27
サーバのディレクトリを、クライ アントが
マウント(ディレクト リ・ツリーに割り当て)する
NFS
サーバ/ usr etc
export
NFS
クライアン ト/ usr etc
import
NFS
マウントhoge.txt hoge.txt
2 . 1 NFS の仕組み
28
サーバが提供(エクスポート)
するファイルシステムを、クラ イアントは自マシンのディレク トリ・ツリーに割り当てる
クライアントは、自分のディス クと変わりなくアクセスできる
実際にアクセスされるの
は、 NFS サーバのディスク
2 . 1 NFS の仕組み
2 . 2 NFS サーバのインスト ール nfs に必要なパッケージ
通常は、標準でインストール済み Debian
系nfs-kernel-server
RedHat
系nfs-utils
29
2 . 3 NFS サーバの設定
NFS
を利用するには、サーバ側と クライアント側の両方に設定が必要/etc/exports
マウン ト
サーバ クライア ント
30
/etc/fstab
2 . 3 NFS サーバの設定
/etc/exports
ファイルに、NFS
で共有す るディレクトリの情報を記述する①
クライアントに公開するディレクトリ②
ディレクトリへの接続を許可するクラ イアントのリスト③
クライアントがマウントする時のオプ ション31
32
クライアントホストをIP
アドレスで 指定①
/export/home
を公開②
192.168.1.1
~192.168.1.254
が接 続可能③ オプション(読書き可、即時書き 込み)
/export/home 192.168.1.0/24(rw,sync)
① ② ③2 . 3 NFS サーバの設定
33
クライアントホストをホスト名で指定② ホスト名を指定。ワイルドカード が使用可
/export/home
*.foo.co.jp(ro)
① ② ③2 . 3 NFS サーバの設定
2 . 4 NFS クライアントの設 定 起動時に、 NFS
サーバの公開ディ
レクトリを自動的にマウントする
/etc/fstab
に記述 mount
コマンドにより、手動で マウントすることも可能34
35
自ディスクのマウントと、書き方はほ とんど同じ① サーバのホスト名とディレクトリ 名
② クライアント側のマウントポイン ト
③ ファイルシステムの種類 =
NFS
④ マウントオプション、その他
foo:/export/home /home1 nfs bg 0 0
① ② ③ ④2 . 4 NFS クライアントの設
定
3 . NIS
3 . 1 NFS と NIS 3 . 2 NIS の機能
3 . 3 NIS の仕組み
3 . 4 NIS のインストール 3 . 5 NIS サーバの設定
3 . 6 NIS クライアントの設定
36
3 . NIS
NIS (Network Information Service)
複数のUNIX
コンピュータ間でユー ザ情報を共有するシステム
アカウント情報
ホスト名情報
ネットワーク関連の情報、その他
ディレクトリサービス の一種37
3 . 1 NFS と NIS
NFS と NIS
は、組み合わせて使う ことも多い
どちらも、サン・マイクロシステ ムズが開発 RPC
機能を利用
アカウントを共有し、ホームディ レクトリを共有すると、どのマシ ンでも同じ環境で作業できる38
3 . 1 NFS と NIS
例
39
NFS/NIS クライアン サーバ
ト
どのクライアントで
も、同じ環境で作業
できる
3 . 2 NIS の機能
アカウント情報の共有
各マシンでアカウントを管理する必要がない
パスワードも、一箇所で変えれ ば OK
40
41
自動マウント関連 NFS
で共有するディレクトリの設 定などを、各マシンで共有
ホスト名⇔IP
アドレス対応の共有 /etc/hosts
ファイルを共有(現在は、
DNS
があるので不要)3 . 2 NIS の機能
3 . 3 NIS の仕組み
NIS
独自にドメインを定義して、その単位で管理
同一ドメイン内に複数のサーバを 設置することも可能
マスタサーバ、スレーブサーバ
サブネットを越えては動作しない
42
43
NIS の利点
ほとんどの Unix 系 OS が対応
導入が簡単
文献が豊富
欠点 サブネットを越えて動作しない
セキュリティ上の問題がある
3 . 3 NIS の仕組み
3 . 4 NIS のインストール
NIS のパッケージ
ypserv - NIS サーバ機能
ypbind - NIS クライアント機 能
yp-tools - NIS 関連のコマンド
群44
3 . 5 NIS サーバの設定
NIS
ドメイン NIS
クライアントとサーバは、同じ
NIS
ドメインに属していな ければならない NIS
ドメインはDNS
のドメイン とは関係ない
階層構造も持っていない45
46
次の設定ファイルに、NISDOMAIN
行を追加しておく/etc/sysconfig/network
NISDOMAIN=MyDomainName
3 . 5 NIS サーバの設定
47
ypdomainname コマンドで、設 定・表示が出来る
$ ypdomainname MyDomain
3 . 5 NIS サーバの設定
$ ypdomainname
MyDomain
48
NIS
マップの作成 NIS
のデータベースを、NIS
マップ またはYP
マップと呼ぶ
ディレクトリ/var/yp
に置かれる3 . 5 NIS サーバの設定
49
/var/yp の Makefile を、環境に
合わせて適宜変更する ypinit コマンドにより、 NIS マップを作成する
$ /usr/lib/yp/ypinit -m
3 . 5 NIS サーバの設定
50
NIS
マップ(NIS
データベース)の更 新 /etc
の各種ファイルを編集(例えば、ユーザを追加、パスワー ドを変更、
NFS
の設定を変更など) /var/yp
ディレクトリにて、make
を実行3 . 5 NIS サーバの設定
3 . 6 NIS クライアントの設 定
NIS
サーバと同様、ドメインを設定 /etc/sysconfig/network
/etc/sysconfig/authconfig
/etc/yp.conf
/etc/nsswitch.conf
など authconfig
ツールを使用するのが簡単 でよい51
52
authconfig の画面例 (1)
3 . 6 NIS クライアントの設
定
53
authconfig の画面例 ( 2 )
3 . 6 NIS クライアントの設
定
54
authconfig が終了すると、 NIS 関連のサービスが再起動される
3 . 6 NIS クライアントの設
定
【付録 】 ディレクトリサービ ス
ディレクトリサービスとは
複数のホストで、ユーザ情報を 共有する
代表的ディレクトリサービス NIS
NIS+
LDAP
Active Directory
55
【付録 】 ディレクトリサービ ス
NIS+
NIS
の後継として、サン・マイクロシ ステムズ社が開発
セキュリティ等が強化されている
あまり普及せず、消滅の方向へ
サンも開発中止(LDAP
に移行)
バグが残っている(らしい)56
57
LDAP
(Lightweight Directory Access Protocol)
ディレクトリサービスのためのプロ トコル
実装はOpenLDAP
等 いろいろ Unix
系ホストのNIS
に変えての運 用が可能
暗号化等、NIS
の欠点を克服【付録 】 ディレクトリサービ
ス
58
Active Directory
マイクロソフト製 Wondows
サーバ上で動作
代表的なプロトコルをサポート
名前解決用:DNS
検索用:LDAP
認証用:Kerberos
★ 独自拡張されているため、
相互運用時には注意が必要