[an error occurred while processing this directive]
Contents
Sambaとは?
Samba日本語版
ドキュメント
技術情報
紹介&リンク
Community
プロジェクト
メーリングリスト
イベント
ユーザー会
etc...
お問合せ
ご支援・ご協力
日本 Samba ユーザ会 (Samba Users Group Japan)

Samba 2.2とLinux (Kernel 2.4) によるWindowsネットワーク構築ガイド

(4) smb.confの設定

SWATを使えばディストリビューションやインストール方法によるsmb.confの場所の違いを意識せずにSambaの設定を行うことができる。
具体的な操作方法としては画面の上部にある以下のアイコンをクリックして行う。

●ホーム(HOME)

SWATの表紙を表示する。
日本語の説明や技術資料を簡単に見ることができる。

図6fig06.gif

●全体設定(GLOBALS)

Samba全体の設定を行う[GLOBAL]セクションの設定ができる。
セキュリティ モードもこの中で設定する。

図7全体設定(GLOBALS)画面

●共有設定(SHARES)

共有フォルダ毎の設定ができる。
ユーザホーム機能を提供する[homes]セクションもここで設定する。

図8共有設定(SHARES)

●プリンタ(PRINTERS)

プリンタ共有の設定をする。
プリンタ共有全体を提供する[printers]セクションもここで設定する。

図9プリンタ(PRINTERS)

●動作状況(STATUS)

Sambaデーモンの起動・終了ができる。加えて、誰が共有ファイルをアクセスしているか表示される。
ユーザのセッションを強制切断することも可能だ。

図10動作状況(STATUS)

●設定表示(VIEW)

smb.confの内容を表示する。
しかし、これはSWATが認識できたものであり、smb.confの内容そのままではない。トラブル時は実際のファイルも確認して欲しい。

図11設定表示(VIEW)

●パスワード(PASSWORD)

ユーザの追加・削除、パスワードの変更などを行える。
該当マシンのSambaユーザの追加・削除・パスワード変更に加え、リモート(別マシン)のWindows NT/2000 Server およびSambaユーザのパスワード変更も可能だ。Security=domainおよびserverを使っている場合はこの機能を使ってパスワード変更する。

図12パスワード(PASSWORD)

Sambaを使用するにあたってはSWATの表紙にある「導入編」にあるドキュメントは、必ず目を通しておこう。


◎セキュリティ・モードの決定

Sambaの設定に先だってまず以下の4つのセキュリティ・モードから1つを選ぶ必要がある。 

●security = user (ユーザ認証モード)

共有(ファイル/プリンタ)を個別のユーザを使ってアクセスする。
必ずUNIXアカウントが必要なので、新規ユーザのためには新しくアカウントを作成する必要がある。
SambaだけでWindowsドメインやWindowsワークグループを作成する場合に適しているが、パスワードはLinux用とは別にSamba専用のものを別に管理する必要がある。これがデフォルトの値である。

●security = domain (ドメイン認証モード)

共有(ファイル/プリンタ)を個別のユーザを使ってアクセスする。
必ずUNIXアカウントが必要なので、新規ユーザのためには新しくアカウントを作成する必要がある。
しかし、ユーザ認証はWindowsドメインにしてもらうため、Samba専用のパスワード管理は不要である。
すでに、Windowsドメインが構築されていて、そこにSambaマシンを追加する場合に適している。
また、Samba 2.2.2からサポートされたwinbindを使用する場合もこのモードを使用する。

Samba 2.0/2.2では上記security=userまたはdomainでシステム運用することを推奨する。以下に述べる2つのセキュリティ・モードも存在するがセキュリティ強度の問題からあまり推奨しない。

●security = share (共有認証モード)

共有(ファイル/プリンタ)を決まった固定ユーザを使ってアクセスする。
(認証ユーザを共有する)
パスワードだけで、アクセス制御できるため、新規ユーザのために新しくアカウントを作成する必要がない。
小規模な部門サーバやSOHO用に適しているが、不特定多数が使用する(個別にアカウントが作成できない)場合にも対応できる。

●security = server (サーバ認証モード)

共有(ファイル/プリンタ)を個別のユーザを使ってアクセスする。
必ずUNIXアカウントが必要なので、新規ユーザのためには新しくアカウントを作成する必要がある。
しかし、ユーザ認証は他のWindowsサーバやSambaサーバにしてもらうため、Samba専用のパスワード管理は不要である。
すでに、SambaやWindowsによるWindowsワークグループが構築されていて、そこにSambaマシンを追加する場合に適している。


では、「全体設定 [GLOBALS] 」アイコンをクリックして、設定を開始する。パラメータはたくさんでてくるが、重要なパラメータだけを解説する。

SWATは、最初重要なパラメータまたはデフォルト以外を設定しているパラメータを表示する。
「詳細表示」ボタンを押すことですべての設定可能パラメータを表示させることができる。

もし、「coding system」と「client code page」の2つのパラメータが設定されていなければ「詳細表示」のボタンを押して忘れずに設定する。この2つを指定していないと日本語ファイル名は使用できない。

●coding system

Linuxマシン側で扱う日本語ファイル名のコーディングシステムを指定。
eucを推奨するが、sjis,hex,capなども選べる。詳細は機能編を参照して欲しい。

●client code page

クライアントに日本語Windowsを使用する時は、932を必ず指定する。

●workgroup

Sambaの所属する(あるいはクライアントへ応答する)Windowsワークグループ名/Windowsドメイン名を指定する。
Windowsクライアントで指定するものと同じワークグループ名/ドメイン名を指定すると良い。

●server string

「ネットワークコンピュータ一覧」で詳細表示した時、「サーバの説明」と「プリンタの説明」に表示する文字列を指定する。
文字列の中の%v は Samba バージョン番号と置換され、%h は ホスト名に置換される。

既定値: server string = Samba %v 

例: server string = Samba %v on %h Linux

●security

先に説明したセキュリティ・モードを指定する。

●map to guest

UNIXにユーザアカウントがない場合、guest接続を許すかどうか指定する。設定は下記の3 種類がある。

  • "Never"
    guest接続を許さない。既定値。 
  • "Bad User"
    ユーザ名が無かった場合、ゲストログインとして扱い、 "guest account" で接続する。 
  • "Bad Password"
    不正なパスワードの場合、ゲストログインとして扱い、 "guest account" で接続する。
    これは、任意のユーザがパスワードをタイプミスしたり、暗号化パスワードを設定し忘れていても、なにも言われずに "guest" としてログインしてしまうことに注意。

●encrypt passwords

暗号化されたパスワードを使用するかどうか、指定する。
最近のWindowsでは暗号化パスワードが必須なので必ずyesとする。
暗号化パスワードは/usr/bin/smbpasswdコマンドによって/etc/samba/smbpasswdに格納される。

●socket options

以下を指定することを推奨。
(TCPネットワークに詳しくない方は変更しないこと)

socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192


SWATの入力項目に必要なパラメータを入力したら、「設定」ボタンを押して確定する。

以下に設定例をあげる。
解説しなかったパラメータについてはSWATのヘルプで機能を確認して欲しい。

図13

[global]
	coding system = euc
	client code page = 932
	server string = %h : Samba %v
	encrypt passwords = Yes
	map to guest = Bad User
	passwd program = /usr/bin/passwd %u
	passwd chat = *New*password* %n\n *Re*new*password* %n\n *success*
	unix password sync = Yes
	log file = /var/log/samba/log.%m
	max log size = 50
	deadtime = 15
	read size = 65536
	socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
	lm announce = False
	dns proxy = No
	level2 oplocks = Yes
	dos filetimes = Yes
	dos filetime resolution = Yes

[printers]
	comment = All Printers
	path = /var/spool/samba
	printable = Yes
	browseable = No

[homes]
	comment = %S's Home Directories
	writeable = Yes
	browseable = No

[PUBLIC]
	comment = Public Space for Everyone
	path = /home/samba/public
	writeable = Yes
	force create mode = 0664
	force directory mode = 0775
	guest only = Yes
	guest ok = Yes

[NETLOGON]
	comment = Script for Domain Logon
	path = /home/samba/netlogon
    admin users = administrator
    write list = administrator
	guest ok = Yes
    

◎共有フォルダの設定方法

続いてファイル共有の設定をしてみる。ここでは、全体設定で「security = user (または、domain , server)」を選択したことを前提に解説する。(「security = share (共有認証モード)」では、動きが異なる)

SWATの「共有設定」のアイコンを押す。次に新規の共有名を入力し、「新規共有作成」のボタンを押すとパラメータの入力画面が出てくる。

ここでは、例として共有名を「企画」として説明する。

●共有名

SWATで設定する場合は自動変換するので意識する必要はないが、smb.confの中に指定する文字(共有名やコメント)はcoding systemに合わせた日本語コードで記述する必要がある。
Samba日本語版では、日本語の取り扱いについてオリジナルより改良されているが機種依存文字や外字を使用するのは止めた方が良い。

●comment

共有名のコメント(説明)を記述する。40バイト以下にすること。

例: comment = 企画の共有フォルダ

●path

このパラメータは、共有するLinux上のディレクトリを指定する。

例: path = /home/kikaku

●read only またはwriteable

更新のある共有は、read only = No またはwriteable = yesとする。

●create mask

Samba によって作成されるファイルに設定されるUNIXのモード・ビットのパーミッションを4桁の8進数で指定する。

●directory mask

Samba によって作成されるディレクトリに設定されるUNIX のモード・ビットのパーミッションを4桁の8進数で指定する。

●force user

クライアントが接続したときのユーザ名は無視され、全てのファイル操作は「強制されたユーザ forced user」によって実行されたことになる。

●guest only

guest ok = yes の時、全てのファイル操作は guest によって実行されたことになる。

●guest ok

接続するときにパスワードが不要になり、guestでアクセス可能となる。

●browseable

net view コマンドの出力や「ネットワーク コンピュータ」の共有一覧にこの共有を見せるかどうか指定する。
ただし、ユーザホーム機能を提供する[homes]の場合は、browseable = Noとする。

既定値: browseable = Yes 


これらの入力が終わったら、「設定変更」のボタンを押す。これで、Linux側の ディレクトリ が Windows 側に共有されることになる。

今回は、公開範囲を3レベル想定し、以下に3つの例をあげる。

例1)決まったユーザ(グループ)だけが、アクセス可能な共有の設定

/home/kikaku の属性を 775(rwxrwxr-x)とし、同一のUNIXグループだけが更新でき、他のUNIXグループは参照が可能な共有を作成する。(valid usersとinvalid usersで、更にグループ内のユーザを制限可能)
UNIXにアカウントとパスワードの設定のないものはアクセスできない。

[企画]
comment = 企画の共有フォルダ
path = /home/kikaku
read only = No
create mode = 0664
directory mode = 0775 

例2)UNIXにアカウントを持つユーザは誰でもアクセス可能な共有の設定

/home/kikaku の属性を 755(rwxr-xr-x)とし、ディレクトリの所有者をkikauというUNIXユーザとする。
UNIXにアカウントとパスワードの設定のあるものは、この共有に誰でもアクセス(更新・参照)できる。
しかし、UNIXにアカウントのないものはアクセスできない。

[企画]
comment = 企画の共有フォルダ
path = /home/kikaku
read only = No
force user = kikaku      # 全員が、kikakuというUNIXユーザでアクセスする。

例3)誰でもアクセス可能な共有の設定

/home/kikaku の属性を 755(rwxr-xr-x)とし、ディレクトリの所有者をnobodyというUNIXユーザとする。
UNIXにアカウントがあっても、なくても誰でもアクセス(更新・参照)できる。

[global]
map to guest = bad user    # UNIXにアカウントがない場合は、guestでアクセス可能とします

[企画]
comment = 企画の共有フォルダ
path = /home/kikaku
read only = No
guest only = Yes        # アカウントのあるユーザもguestでアクセスさせます。
guest ok = Yes

前のページ ホーム 次のページ
(3) 上に戻る (5)

ミラーサイト: [ WWW: master ] [ FTP: ring | kddilabs | plathome | mex | master ]

Copyright © 1999-2024 日本 Samba ユーザー会 (Samba-JP)
2011-12-19 01:17:50 JST 更新