samba
Sambaを使うとWindowsマシンとファイルおよびプリンタの共有ができる.
最新版の2.0.7日本語版リリース2.0では,旧リリースで発生していたWindows2000から共有資源が
ブラウズできない問題が解決されている(とマニュアルに書かれている).
RedHat6.2日本語版に収録されているSambaは2.0.6-9なので,最新版のソースをダウンロードし,
インストールしてみた.
インストール
/etc/servicesおよび/etc/inetd.confの設定
swatを使った設定
ワークグループを結合する
インストール
まず,日本語Sambaの公式サイトから2.0.7リリース2.0の
ソースアーカイブをダウンロードする.
ファイル名はsamba-2.0.7-ja-2.0.tar.gzである.
適当なディレクトリでアーカイブを解凍する(例えば/home/akasaka/temp).
% tar zxvf samba-2.0.7-ja-2.0.tar.gz
configureスクリプトを--with-i18n-swatオプションを付けて実行する.
このオプションを忘れるとswat(SambaのGUI設定ユーティリティ)が日本語対応にならないらしい.
% ./configure --with-i18n-swat
makeを実行する.約3分でmake終了.
make installを実行する.
Sambaは/usr/local/sambaにインストールされる.
/etc/servicesおよび/etc/inetd.confの設定
Sambaの主要モジュールはsmbd(SMBサービス,Server Message Block Protocol),nmbd(ネームサービス)
およびswat(上記参照)である.
正常にインストールが終了したならば,以下の設定を行う.
まず,/etc/serveicesに以下の行がなければ追加する.これはすでに記述されていた.
netbios-ns 137/tcp # NETBIOS Name Service
netbios-ns 137/udp
netbios-dgm 138/tcp # NETBIOS Datagram Service
netbios-dgm 138/udp
netbios-ssn 139/tcp # NETBIOS session service
netbios-ssn 139/udp
次に,/etc/inetd.confに以下の行を追加する.
rpmを使ってインストールした場合,モジュールのインストール先が異なるかもしれない.
netbios-ssn stream tcp nowait root /usr/local/samba/bin/smbd smbd
netbios-ns dgram udp wait root /usr/local/samba/bin/nmbd nmbd
swat stream tcp nowait.400 root /usr/local/samba/bin/swat swat
/etc/servicesや/etc/inetd.confを変更した場合は,inetdにHUPシグナルを送って設定変更を反映させる.
% killall -HUP inetd
swatを使った設定設定
swatによる設定は,ブラウザのURL欄に次のように入力する("sambaserver"の部分にSambaをインストールした
マシンのホスト名を入れる).
http://sambaserver:901
アクセスが正常に行われるとユーザ認証ダイアログが開くので,rootでログインする.
sambaの設定項目は多岐に渡るが,重要と思われる項目のみメモしておく.
後の項目はデフォルトのままで構わない.
- 全体設定
メニューの全体設定を選ぶとアクセスに関するさまざまな設定を行うことができる.
「基本設定」と「詳細設定」を選ぶことができるが,「設定変更」を選択せずに
これらを切り替えると設定内容がデフォルトに戻ってしまうので注意.
- workgroup: (ワークグループ名)
Sambaが参加するWindowsネットワークのワークグループ名を入力する.
- security: USER
Sambaのセキュリティポリシーを決める非常に重要な項目で,以下の4つを選択できる.
- SHARE: Windowsで言うところの「共有レベルのセキュリティ」となる.
Sambaサーバは共有資源にアクセスするときにだけ,パスワードを要求し,ユーザー名は要求しない.
現在のSamba/Windowsでは,この設定はあまり推奨されていない.
- USER: Windowsで言うところの「ユーザレベルのセキュリティ」に設定される.
この場合,Sambaサーバの共有資源を使用するにはユーザ名とパスワードを使ってSambaサーバにログオンする必要がある.
通常はこの設定にするのが最も一般的だ.
- DOMAIN: SambaサーバがNTドメインに参加している場合のセキュリティポリシー.
- SERVER: USERと同じだが,ユーザ認証を指定したNT WorkstaionかNT Serverに代行させるようになる.
今回はNTドメインもなく,ユーザ認証を行うNTマシンもないためUSERに設定した.
- encrypt password: Yes
パスワードの取り扱いを決める重要な項目.
初代のWindows95やWindowsNT4.0ではパスワードをテキストのままネットワークに流していた.
しかし,セキュリティ上の問題からWindows95 OSR2以降のWindows9XとWindowsNT4.0 SP3以降および
Windows2000では暗号化されたパスワードをネットワークに流すようになっている.
この項目をNoにするとこれらの新しいWindowsでSambaが利用できなくなる.
また,Yesにした場合は,Linuxのユーザ管理とは別に,Sambaで独自にユーザを管理する必要が出てくる.
今回はネットワーク上に古いWindowsが存在しないことからYesに設定した.
- smb password file: パスワードファイルを指定
Sambaが独自に管理するユーザ名とパスワードのデータベースファイルのパスを指定する.
デフォルトでは/usr/local/samba/private/smbpasswdとなっているが,
Sambaをインストールした直後は,このファイルは存在せず,後のユーザ登録の際に
smbpasswdが見つからないというエラーが発生する.
したがって,
% cd /usr/local/samba
% mkdir private
% cd private
% touch smbpasswd
として空のファイルを作成しておく.
- unix passwd sync: Yes
Sambaを通じてパスワードが変更されたとき,その変更をLinux上のパスワードにも反映させる.
- os level: 65以上の値
Sambaサーバがブラウズマスターになれるかどうかのパラメータを設定する.
この値が0のときはSambaサーバはブラウズマスターになれない.
逆に,この値を64より大きい値に設定すると,NT Workstationよりも高い確率Smabaサーバがブラウズマスターになる.
Windows98SE,Windows2000がネットワーク上にある場合,Sambaをブラウズマスターにする設定にしないと,
ネットワークコンピュータを開いたときにSambaサーバをブラウズできないことがある(らしい).
- preferred master: No
この項目をYesにすると,Sambaサーバは自分がブラウズマスターになるための要求をブロードキャストする.
したがって,このSambaサーバがブラウズマスターになる確率がより高くなるが,
他にもpreferred masterに設定されているNTやSambaサーバがあると混乱を引き起こすので,
通常はNoにしておいた方がよい.
- ユーザ登録
メインメニューの「パスワード」でSambaの共有ディレクトリを利用するユーザを登録しておく.
登録できるユーザはLinux上にアカウントがあるユーザに限られる.
なお,上で述べたように,/usr/local/samba/private/smbpasswdなどのパスワードデータベースが
存在しないとユーザ登録できない.
- 共有設定
ユーザ登録が完了したら,メニューの「共有設定」を選択する.
まず「新規共有作成」の横に適当な共有名を入力し,「新規共有作成」を押すと設定画面が表示される.
共有名にhomesと入力すると,Sambaサーバにログインしたユーザのホームディレクトリが
共有ディレクトリとなる.
任意の共有名を入力した場合は,共有ディレクトリのパスをpathに指定する.
共有名にhomesを指定した場合は,pathは空欄のままにしておく.
下の図はWindows2000からSambaサーバ(fukunm12)をブラウズしたところである.
ワークグループを結合する
IPマスカレードを行っているmech3にsambaを
インストールしたところ,mech3が属する二つのワークグループを結合することができた.
詳細はここにまとめた.
お問い合わせはメールにて: akasaka@klc.ac.jp
戻る