Thursday, January 29, 2015

Tips of File Server Sambaのメモ集

まず、sambaをインストールする。
#yum install samba
その次に、「SELinux」と「iptables」を無効化しなければいけません。(注:Fedora 14で設定するときになぜか必要だったが、Fedora 20で設定するときにはしなくてもできた)
#/etc/rc.d/init.d/iptables stop  ←ファイアウォールを無効化
#chkconfig iptables off           ←ファイアウォール自動起動無効化
#setenforce 0                          ←「SELinux」を止める
以上のコマンドで、getenforceの結果はPermissiveになるはずです。
また、”chkconfig iptables --list”コマンドでは、すべて「off」になります。

さらに、/etc/sysconfig/selinux"にある"SELINUX=enforcing" を"SELINUX=disabled"にし、システムが起動時にもSELINUXをdisableにします。

ファイルサーバとして使用するディレクトリを作成します。
#mkdir /home/samba
#chown nobody:nobody /home/samba
サンバユーザのパスワードを設定する。
#smbpasswd -a userName
New SMB password: パスワードを設定する
Retype new SMB password:
Added user ××.
#

Sambaを開始するには
/sbin/service smbd start
Sambaを止めるには
/sbin/service smbd stop

nmbサーバ(sambaサーバにドメイン等で繋ぐ設定を行う)を起動するには
/etc/rc.d/init.d/nmb start 
サンバ上にあるフォルダにアクセスしようとして、”\\XXX\XXX にあくせすできません。\\XXX\XXX に対するアクセス許可がありませんネットワーク管理者にアクセス許可を要求してください”と言われるときに、SELinuxが"enforcing"になっている可能性が大きいです。その場合、"setenforce 0"をスーパーユーザで発行し、サンバを再起動すればよいです。再起動してもSELinuxをdisableにしたい場合、"/etc/sysconfig/selinux"にある"SELINUX=enforcing"を"SELINUX=disabled"にすれば良いです。

sambaの設定ファイルは以下のものです。
/etc/samba/smb.conf

以下のコマンドで、Sambaとnmbを自動起動するように設定します。
# chkconfig smb on ← Samba自動起動設定
# chkconfig nmb on ← nmb自動起動設定
smbclientコマンドは以下のようにsamba-clientパッケージをインストールする必要があります。
#yum install samba-client
WindowsからSambaサーバーを全く見られないときには、Sambaの設定が正しくないことになっています。その場合、どこかのLinuxマシン上で、smbclientで確認すれば、設定ミスのヒントを得られます。Sambaサーバの名前がserverだとしますと(以下同様)、以下のように実行します。
$smbclient -L serverName
上記のコマンドで、「NT_STATUS_LOGON_FAILURE」というエラーになった場合、/etc/samba/smb.confにある[global]の設定に、何か間違っている可能性があります。たとえば、domainでネットワークに接続する場合、以下の一行を[global]に追加する必要があります。
security = domain
以下のコマンドで、サーバーマシン上での共有アクセスが正しいかどうかを確認できます。
$smbclient //hostname/TMP
以下のコマンドで、コンピュータ名による名前解決ができるかどうかを確認できます。
$ nmblookup -B serverName
nmbd の動作確認は
$ nmblookup -B serverName __SAMBA__
使用できる共有サービス名の一覧を表示するには
$ smbclient -L serverName
一旦WindowsからSambaサーバーに入ると、そのユーザ情報は再起動まで記憶されます。再起動しないで別のユーザでログインしなおしたい場合、まずWindows PCじょうで、以下のコマンドで既存のすべての接続情報をクリアしなければいけません。
net use /delete *
sambaをGUIによって設定するためのツール(visual configuration tool).
system-config-samba
なけらば、samba-winbindをインストールする。
yum install samba-winbind
最後ですが、共有にしたフォルダをWindowsからアクセスできるには、以下のコマンドも必要でした。そうでないとその下のエラーになります。
chcon -R -t samba_share_t /toolbox
「xxxに対するアクセス許可がありません。
ネットワーク管理者にアクセス許可を要求してください」
Windowsからアクセスするときに、一々ユーザー情報を求められたりするのはいいですが、イントラの場合、社内や家庭内のドメインのユーザとして認証する場合もあります。そうすると、Unix上で登録したユーザー名とパスワードを入力してもアクセスできません。それで、Windowsの以下のコマンドが必要になります。ここでは、passwordやusernameはそれぞれ設定したものに書き換えるものです。
net use \\xxx.xxx.xxx.xxx\wlu password /USER:username

No comments:

Post a Comment