Windowsファイルサーバの設定。Samba(サンバ)の設定
Unix , Linux上でWindowsネットワーク用のファイルサーバ(共有フォルダー等)を構築する事が出来ます。そのサーバソフトウェアの一つとしてSambaがあります。ここでは、SambaをFedora7へインストールおよび環境設定する手順を示します。
Windowsネットワークには、「ドメイン」と「ワークグループ」の2種類の管理手法があり、Sambaはどちらにも対応していますが、ここでは「ワークグループ」についての手順を紹介します。「ドメイン」の手順についてはここでの手順を参考にしてSambaヘルプを参照して下さい。
手順概要
- Sanbaパッケージのインストール
- Sambaを動作させるための初期設定
- Sambaの運用管理
1.Sanbaパッケージのインストール
2.Sambaを動作させるための初期設定
Sambaパッケージはインストールしても実行状態になりませんのでコンピュータ起動時実行する設定を行います。
2−1. |
サービスの設定を起動 |
|
メニュー: システム/管理/サービス を実行します。
起動には、root特権が必要です。
サービス設定が実行しない場合は、「サービスの設定の起動」
を参照してください。
|
2−2. |
コンピュータ起動時のSamba起動設定と現在起動 |
|
@ |
Sambaパッケージがインストールされていれば、「smb」項目が表示されますのでチェック状態にします。 |
A |
【保存】ボタンをクリックします。 |
B |
コンピュータ再起動でも「smb」は起動しますが、【開始】ボタンで開始させます。
無事起動すれば下記案内が表示されます。
|
|
2−3. |
ファイヤーウォールを有効にしている場合Sambaに対して特別な設定が必要となります。その設定を行います。 |
|
(1)ファイアウォール設定を起動します。
メニュー:システム/管理/Firewall and SELinux
(セキュリティレベルとファイヤーウォールの設定)
|
|
(2)ファイヤーウォールのオプションでSambaの設定 |
|
@ |
ファイヤウォールのオプション タグをクリック |
A |
信頼できるサービスの項目で「Samba」をチェック状態にします。 |
B |
【OK】ボタンクリックで設定を登録します。 |
Sambaで使用しているポート
smbd TCP/139,TCP/445
nmbd UDP/137,UDP/138
をこの設定でブロック解除します。
|
|
(3)以下の案内が表示されます。
|
2−4. |
SELinux (セキュリティレベル)を有効にしている場合Sambaに対して特別な設定が必要となります。その設定を行います。 |
|
(1)SELinux 設定を起動します。
メニュー:システム/管理/SELinux Management で設定画面を起動します。
|
|
(2)SELinux の Samba ポリシーの設定
|
|
SELinuxが有効状態においてSambaでの設定項目には下記があります。
- Allow Samba to share any file/directory read only
- Allow Samba to share any file/directory read/write
- Allow Samba to share nfs directories
- Allow Samba to share users home directories
- Allow Samba to write files in directories labeled public_content_rw_t
- Allow Samba to act as the domain controller,add users,groups and change
passwords
- Allow users to login with CIFS home directories
この中で、初期から必要と思われる項目2点を有効(チェック状態)とします。
SELinuxが有効時、単に共有フォルダー登録しても機能しません。ホームディレクトリ以外のディレクトリを共有フォルダーに登録した場合、そのディレクトリに、「Public_content_rw_t」ラベルを設定する必要があり、さらに"Allow
Samba to write files in directories labeled public_content_rw_t"(「Public_content_rw_t
とラベルされたディレクトリ内のファイルを書き込み許可する」)を有効にする必要があります。「SELinux有効の場合のディレクトリラベル設定」参照
また、ホームディレクトリを共有フォルダーとして公開するには、"Allow Samba to share users home directories"(「ユーザーのホームディレクトリーの共有を許可する」)を有効にする必要があります。
なお、 nfs や CIFS 関係等も設定する機会があるかと思いますが、他の項目の目的と合わせて必要時にヘルプ等を参照して使用してください。
また、本SELinux管理画面は以前にくらべ大きく変更されました。参考に以前の画面を示します。
- Sambaに nfs ディレクトリの共有を許可する
- Sambaに Public_content_rw_t とラベルされたディレクトリ内のファイルを書き込み許可する
- Samba にユーザーのホームディレクトリーの共有を許可する
- nmbd デーモンの SELinux 保護を無効にする
- smbd デーモンの SELinux 保護を無効にする
- winbind デーモンの SELinux 保護を無効にする
- ユーザーに CIFS ホームディレクトリでのログインを許可する
|
2−5. |
Windowsワークグループ名の登録 |
|
(1)Sambaサーバー設定 の起動
メニュー:システム/管理/Samba をクリックします。
(2)サーバー設定 起動
メニュー:プレファレンス/サーバー設定 をクリックします。
(3)
@ |
【基本】タグをクリックします。 |
A |
ワークグループ名を入力します。(Windowsネットワークでの名前です。)
ここは必ず入力してください。 |
B |
ネットワークブラウズ表示した場合に記載される名称等です。 |
|
2−6. |
Sambaサーバにおけるセキュリティ設定 |
|
(1)メニュー:システム/管理/サーバー設定/Samba をクリックします。
(2)サーバー設定 起動
メニュー:プレファレンス/サーバー設定 をクリックします。
(3)【セキュリティ】タグをクリックします。
認証モード |
「ユーザー」を設定します。
今回は、ワークグループ用として、ユーザーを設定します。他に、ドメイン、共有、サーバー、ADSがありますので目的に合わせて設定します。 |
認証サーバ |
<なし> (ユーザーの場合設定無し) |
ケルペロス領域 |
<なし> (ユーザーの場合設定無し) |
暗号化パスワード |
「はい」
セキュリティ強化のため「はい」を薦めます。 |
ゲストアカウント |
「ゲストアカウントなし」
セキュリティ強化のため「なし」を薦めます。
この設定により、ユーザ登録の無い利用者の接続は出来ません。
設定する場合、一般的にLinuxの匿名である「bobody」が妥当と思います。 |
|
3.Sambaの運用管理
3ー1.Sambaユーザの設定
共有フォルダーにログオンするユーザはSamba内で独自に管理しています。その為、Linuxユーザとして登録したものとは別に新たに登録が必要です。登録はSambaを利用するユーザのみ行います。
3−2.共有フォルダーの作成
ログオンユーザホームディレクトリ以外に共有フォルダーを作成する場合の手順を示します。
3-2-1 |
メニュー:システム/管理/Samba をクリックします。 |
|
|
3-2-2 |
Sambaサーバー設定 で【共有を追加】ボタンをクリックします。 |
|
|
3-2-3 |
【基本】タグをクリックし、その内容を入力します。 |
|
ディレクトリ |
共有フォルダーとして実際に使用するUnix側ディレクトリを入力します。 |
共有名 |
共有フォルダーとして公開する名前を入力します。 |
記述 |
ブラウズ表示のとき、記述される内容を入力します。未入力可能 |
書き込み可能 |
その共有フォルダーの書き込み可能チェック |
可視 |
その共有フォルダー名をブラウズ等でリスト表示するかどうかの指定です。可視しない場合、フォルダーやフォルダー内リストがブラウザリストとしてその名前が表示されません。ただ、名前がリスト表示されないのみで、フォルダーやファイルは通常と同じように扱えます。 |
|
3-2-4 |
【アクセス】タグをクリックし、その内容を入力します。 |
|
特定のユーザのみアクセスを許可する |
Sambaユーザ登録のリストが表示されますので、許可するユーザを選択します。 |
誰でもアクセスを許可する |
- 登録ユーザ全てに対してアクセスを許可します。
- 未登録ユーザにアクセスを与えるものではありません。未登録ユーザにもアクセスを与える設定はゲスト設定です。
- ここでアクセスを許可されても、ここのファイルやディレクトリに対して、Unixユーザに対してアクセス権がない場合、アクセス等のエラー発生があります。(Unix上のセキュリティ設定においてのエラー発生です。)
またこれは、上記特定ユーザについても同じ事が言えます。
|
|
3-2-5 |
次のような案内表示される場合があります。 |
|
共有フォルダーとして指定したディレクトリが存在しない場合エラー発生します。
ディレクトリを作成してください。
例:
# mkdir /WinShare
|
3-2-6 |
無事登録できればリスト表示されます。 |
|
|
3-2-7 |
SELinux有効の場合のディレクトリラベル設定 |
|
SELinux有効の時、一般的に共有フォルダーとしたディレクトリに「public_content_rw_t」ラベルを付ける必要があります。
命令書式
chcon -R -t public_content_rw_t <folder>
例:
# chcon -R -t public_content_rw_t /WinShare/
なおかつ、「2−4.セキュリティレベル(SELinux)を有効にしている場合のSamba 設定」で行った、「Sambaに Public_content_rw_t とラベルされたディレクトリ内のファイルを書き込み許可する」項目が有効となっている事を確認してください。
|
3-2-8 |
ディレクトリアクセス権が問題とならないかの確認および設定。 |
|
実際のディレクトリやファイルのアクセスはSambaで登録したUnix側ユーザ名にて行われます。そのユーザが共有フォルダーをアクセスする場合、その権限が目的に適合しているか確認および設定をします。
一般的設定であれば、所有者に対しては読み書き可能ですが、グループ、その他ユーザに対しては読みのみ可能となっていると思います。共有フォルダーとして公開するディレクトリのアクセス権が現在設定で問題ないか確認し、問題あれば設定します。
例えば、所有者、グループ、その他ユーザに対して読み書き可能とする場合の書式、
chmod 777 <directory>
とします。
例:
# chmod 777 /WinShare
|
3-2-9 |
Windowsのネットワークブラウザ等通常の操作でSamba共有フォルダー参照できる事を確認します。
例えば
Windowsのマイネットワーク/ネットワーク全体/Microsoft Windows Network/Workgroup/Samba Server
(ホスト名) で、
- ホームディレクトリ参照設定していれば、ホームディレクトリが表示されます。
- 共有フォルダーが作成されており、可視可能となっていれば、それが表示されます。
|
3−3.Samba関係の設定ファイル
このページの対象者 (「先輩の手順書」Linux Fedora7)
- Sambaパッケージのインストール方法。
- Linux , FedoraでWindowsファイルサーバーを構築するには。
- Sambaがブロックされてしまっている。
- Sambaでホームディレクトリが公開されない。
- Sambaで共有フォルダー設定したが公開されない。表示されない。
- Sambaで共有フォルダー参照できるが書き込みできない。
- Sambaで共有フォルダー読み込みできるが書き込みできない。
- "public_content_rw_t"て何?
- Samba設定ファイルをエディターで修正して大丈夫か?
Copyright (C) 2007 ナスヌーイ All Rights Reserved.