sambaサーバ設定

debian kernel2.6.8 + samba 3.0.14a-Debian
Wrote 2005.11.19
Appended 2007.2.2

■ インストール

dselectなどで以下のパッケージをインストール
samba samba-common

sambaのバージョンは 3.0.14a-Debian。

■ 設定ファイル

/etc/samba/smb.conf を修正。
主要な内容は以下の通り。
今回はポート445のみで通信を行なう「Direct Hosting of SMB」でやってみた。

/etc/samba/smb.conf

[global]
workgroup = mars
hosts allow = 192.168.10. 127.
smb ports = 445
browseable = yes
domain master = no
preferred master = auto
unix charset = EUCJP-MS
dos charset = CP932
display charset = EUCJP-MS
map to guest = Never
server string = %h server (Samba %v)
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog only = no
syslog = 0
panic action = /usr/share/samba/panic-action %d

security = user
encrypt passwords = Yes
passdb backend = tdbsam
obey pam restrictions = no
guest account = smbguest
invalid users = root
unix password sync = no
pam password change = no
load printers = no
preserve case = yes
socket options = TCP_NODELAY

[homes]
comment = %U is Home Directories
browseable = no
writable = yes
create mask = 0700
directory mask = 0700

sambaを再起動。
# /etc/init.d/samba restart

■ ユーザパスワード設定

root にて

# smbpasswd ユーザ名
New SMB password:
Retype new SMB password:

で設定。

■ メモ情報

イマドキはMS-Windowsクライアント側の「NetBIOD over TCP/IPを無効にする」としても大丈夫らしく、ポート445のみで通信できるらしい。参考:Samba を Direct Hosting of SMB に対応させる方法
昔はいまいち挙動がおかしかった気がする。今回も相変わらずエクスプローラでリモートのホルダ内を右クリックすると固まってかなり長い時間戻ってこない。原因不明。
※追記2007.2.6:全マシンをいったん電源を切ってから再起動で解消。

設定ファイル内容メモ

[global]
workgroup = ワークグループ名 ワークグループ名の指定。
hosts allow = 192.168.10. 127. アクセスを許可するネットワークアドレス。
192.168.10.0/24 と 127.0.0.0/8 に許可。
smb ports = 445 SMBトラフィック待ち受けポート指定
domain master = no 各サブネットのローカルマスタブラウザから提供を受けてWAN環境でのブラウズリストを統合するか。
browseable = yes ブラウズリスト一覧に共有を表示させる事をデフォルトに設定
preferred master = auto 自身がマスタブラウザになりやすくなるように他のワークグループ参加マシンに対して優先させる。
unix charset = EUCJP-MS サーバ側文字コード
(samba2.xは coding system = euc)
dos charset = CP932 クライアント側文字コード
(samba2.xは client code page = 932)
display charset = EUCJP-MS swat表示文字コード
map to guest = Never ゲストログインは一切許可しない
server string = %h server (Samba %v) 共有名の横やコメント欄に表示される文字列の指定
dns proxy = no WINS サーバとして機能している場合にまだ未登録なNetBIOS名があった際にDNS名として扱いDNSサーバに問い合わせるかどうか。no でしない。
log file = /var/log/samba/log.%m ログファイルの格納先/ファイル名の指定。
max log size = 1000 ログファイルの最大サイズを1000KBに指定。
syslog only = no ログをSyslog記録のみする場合 Yes
syslog = 0 Syslog ファシリティレベルに相当
panic action = /usr/share/samba/panic-action %d Samba 開発者のためのオプション。smbdがクラッシュした際に呼び出すコマンドを指定。
security = user クライアントがどのように Samba に応答するかを決める。昨今のMS-Windowsクライアントなら user でいいらしい。
encrypt passwords = Yes 暗号化認証を行なう。
passdb backend = tdbsam パスワードバックエンドをtdbsam に指定。デフォルトは private dir 指定ディレクトリ内の passdb.tdb。
(複数指定された場合は順次認証が行なわれる)
obey pam restrictions = no PAM認証機構を使わない。(結果的に実情は yes で利用すると平文認証になるようだ)
guest account = smbguest 一応指定しておく。smbguestはUnixログイン不可なアカウントにしてあるが存在はする。
invalid users = root root でログインを許さない。
unix password sync = no SMBパスワードの更新時(smbpasswdファイル)にUnixパスワードを更新させない。
pam password change = no Samba で PAM を使ったパスワード変更を許可しない。
load printers = no プリンタをブラウジングを全て不可とする。
preserve case = yes 新規ファイル名はクライアントから渡された case で作成する。
socket options = TCP_NODELAY (他、SO_RCVBUF=8192 SO_SNDBUF=8192 等も指定可)

[homes]
comment = %H is Home Directories 共有名の横に表示される文字列
browseable = no [homes] 共有を不可視に設定。
自動的に作成されるホームディレクトリはには適用されない([global]セクションの同パラメータを引き継ぐ。)
writable = yes 書き込み許可
create mask = 0700 作成するファイルのパーミッションのビットマスク指定
directory mask = 0700 作成するディレクトリのパーミッションのビットマスク指定


Home Up