2009年10月20日火曜日

VMWare + CentOS で Samba

あー、気づいたら一か月も放置してた。
ってことで、久々に。

samba って便利なのでよく使うんだけど、たまーに設定ミスってることとかあるからメモ。
ちなみに今回は VMWare で仮想マシンとして CentOS を使用。
VMWare で仮想化していない場合は2.から見ていただければよい。

1. CentOS をインストール
 インストール手順は探せばいっぱいあるので割愛

2. yum で samba をインストール

# yum -y install samba



3. ホスト名を設定する。
 network ファイルを開いて設定を変更

# vi /etc/sysconfig/network


 多分特に設定しないでCentOSをインストールすると以下のようになっていると思う。
 インストール時にマシンに固定IPを割り当てている人は、IPの設定がさらにあるはず。

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=localhost.localdomain


 CentOSはデフォルトのホスト名が [localhost.localdomain] となっている。
 このままだと、Windows は samba の home directryを認識できない、
 というか Windows が自分を表す時に使用しているホスト名が「localhost」なので、
 CentOS が「localhost」と名乗ってきても認識できない。
 ので、名前を適当に変える。
 設定を変更したら再起動が必要なので注意。

※例

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=vm-host


 再起動

# reboot



4.samba でアクセスするためのユーザを追加する。
 CentOS のアカウントがあればそれを設定すれば良い。

# useradd wopose
# passwd wopose
# ※パスワード入力 * 2
# pdbedit -a wopose
# ※パスワード入力 * 2



5.samba でアクセスするディレクトリを作成する。
 特に指定しないのであれば CentOS のアカウントのホームを設定すれば良い。
 グループに対しても開放するのであれば chown でアクセス可能に設定する。

# mkdir /home/wopose/samba
# chown - wopose:developers /home/wopose/samba



6.samba の設定ファイルを書き換える。
 ここで5.で作ったディレクトリに samba でアクセスするように設定する。

# vi /etc/samba/smb.conf


 いくつか設定を変える。[global] の設定を変える。


# ----------------------- Network Related Options -------------------------
…省略
# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH
workgroup = MYGROUP
server string = Samba Server Version %v

; netbios name = MYSERVER

; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
hosts allow = 127. 192.168.12. 192.168.13.
…省略


 赤いところを自分の環境にあわせて変更。
 次に samba 用のディレクトリを設定。


…省略
#============================ Share Definitions ==============================
[homes]
comment = Home Directories
path = /home/wopose/samba/
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S
…省略



7.SELinuxの設定を変更する。
 CentOSの場合は基本的にsambaが使えないようにSELinuxで設定されている
 以下の要領で変更。
 ちなみに smb.conf の最初にも同様の内容が書かれている。

# setsebool -P samba_enable_home_dirs on



8.samba を立ち上げる。

# etc/init.d/smb start



これでも見えない場合はファイヤーウォール等ではアクセスできないよう、
設定されていると思われるので必要なポートを解法すればよい。

え?1.が簡単すぎるって?気にスンナ。

0 件のコメント:

コメントを投稿