読者です 読者をやめる 読者になる 読者になる

Sambaのインストール

File Server CentOS

VMware playerの仮想マシンcentOSにファイルサーバとしての昨日を持たせるためSambaをインストールしてみました。今回はファイルサーバ機能を使うのですが、Sambaには他にもUnix OS系にプリントサーバ機能を持たせることができます。

[root@localhost]# yum install samba
Complete!
[root@localhost]# iptables -I RH-Firewall-1-INPUT -p tcp -m tcp --dport 135:139 -j ACCEPT
[root@localhost]# iptables -I RH-Firewall-1-INPUT -p udp -m udp --dport 135:139 -j ACCEPT
[root@localhost]# iptables -I RH-Firewall-1-INPUT -p tcp -m tcp --dport microsoft-ds -j ACCEPT
[root@localhost]# /etc/rc.d/init.d/iptables save
[root@localhost]# pdbedit -a centos 

順にインストールから、ポートの開放、設定の保存を行っています。

次に設定ファイルの編集を行ないました。

[root@localhost]# vi /etc/samba/smb.conf
(編集)
[root@localhost]# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[printers]"
Processing section "[public]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions

[global]
        workgroup = MYGROUP
        server string = centos
        map to guest = Bad User
        passdb backend = tdbsam
        wins support = Yes
        cups options = raw

[homes]
        comment = Home Directories
        read only = No
        browseable = No

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

[public]
        comment = Public Space
        path = /home/samba
        read only = No
        create mask = 0777
        directory mask = 0777
        guest only = Yes
        guest ok = Yes

testparmコマンドは全ての設定を見るためのコマンドです。

ちなみに、sambaの起動と再起動、Linuxの起動時に同時起動

# /etc/rc.d/init.d/smb start
# /etc/rc.d/init.d/smb restart
# chkconfig smb on

これで物理マシンのWindows7から仮想マシンのファイルサーバにアクセス出来ると思ったのですが。
Windows7エクスプローラから\\仮想マシンのプライベートIPとするとフォルダは見えるが、クリックすると「ネットワーク名がみつかりません。」というエラー。

しかし、検索するとsamba.confにselinuxの場合には以下のコマンドを実行する必要があると…

$ setsebool -P samba_enable_home_dirs on

そして、restartしたら無事できました。よかった。
というかSElinux(Security Enhanced linux)ってLinuxディストリビューションの一つだと思っていたけど、違うみたいです(wikipediaにも同様の指摘がありました)。正確にはlinuxカーネルの矯正アクセス制御(MAC:mandatory access control)だそうです。というわけで、RedHatFedoraSELinuxを扱っているのでしょうか?