Samba サーバの設定
Samba の主な設定は /etc/samba/smb.conf で行う。smb.conf は、大きく分けて2つの部分から構成される。
- Global Settings
- Share Definitions
Global Settings
Samba サーバの全体的な設定を行う部分。この部分を変更した場合は Samba サーバの再起動が必要。
Share Definitions
ファイル共有やプリンタ共有の設定を行う部分。この部分を変更した場合は、Samba サーバの再起動は必要なし。
Samba サーバの設定例
global セクション
Samba サーバ全般に及ぶ設定を行う
workgroup
所属するグループ、またはドメイン名を指定
workgroup = MYGROUP
server string
アイコンに表示されるコメントを記述。You ブラウジング時に識別しやすい文字列を指定しちゃいなよ
server string = CentOS Samba Server
hosts allow
接続を許可するホストを指定。コメントアウトされている場合、すべてのホストからの接続を許可
hosts allow = 192.168.1.6
printcap name
printcap ファイルの絶対パスを指定。load printers と組み合わせて使う
load printers
プリンタごとにプリンタ共有を定義するのではなく、 /etc/printcap の設定に基づいてプリンタ共有を定義する。デフォルトは「yes」
load printers = yes
guest account
「guest ok = yes」の場合、ゲストユーザーとして利用されるアカウントを指定する。
※ ユーザーは /etc/passwd に存在するユーザーに限る。
guest account = nobody
log file
ログファイルを指定。デフォルトの場合、接続マシンごとにログファイルが分かれる。「%m」はクライアントの NetBIOS を表す。
log file = /var/log/samba/%m.log
max log size
最大ログサイズをキロバイト単位で指定する。「0」の場合、上限を設けない。
max log size = 50
security
セキュリティーモードの設定を行う
security = user
セキュリティモード | 内容 |
---|---|
share | 共有単位でパスワードを用いて認証する |
user | ユーザー名とパスワードを用いて認証する |
server | 他のサーバに認証を依頼する |
domain | ドメインコントローラに認証を依頼する |
ads | ActiveDirectory ドメインのドメインコントローラに認証を依頼する |
encrypt_passwd
暗号化パスワードを利用する。デフォルトは「yes」
encrypt_passwd = yes
smb passwd file
Sambaで利用するアカウントとパスワードが格納されるファイルを指定
smb passwd file = /etc/samba/smbpasswd
homes セクション
ユーザー毎のホームディレクトリを共有する場合の設定
comment
ブラウジング時に表示されるコメントを記述する
comment = Home Directories
browsable
「yes」の場合、ネットワークコンピューターでブラウズしたときに表示される
brouwsable = yes
writeable
書き込みも可能とする。read onli = no と writeable = yes は同意
writeable = yes
printers セクション
プリンタ共有のためのセクション
path
共有のパスを指定
printers = /var/spool/samba
printable
プリンタ出力を許可するかどうかを指定
printable = yes
map to guest
- never デフォルト
- bad user
- bad password
ユーザーアカウントの管理
セキュリティレベルが「user」時、Samba用ユーザーアカウントを作成しておく必要がある。Samba用ユーザーアカウントを作成するには、 pdbedit コマンドを使う
pdbedit
pdbedit -a -u centuser
オプション | 内容 |
---|---|
-a | ユーザーを追加 |
-u | ユーザーの指定 |
-L | ユーザー一覧を確認 |
-x | ユーザーを削除する |
smbpasswd
上記の pdedit 同様、ユーザーアカウントの管理の設定
smbpasswd -a centuser
※ なお、上記二つのコマンドで作成されるユーザーは、予め /etc/passwd ファイルに登録されている必要がある。ユーザー情報は /etc/samba/smbpasswd ファイルに格納される。
また、パスワード変更時にも使用する。
NetBIOS での名前解決
コンピューター名が hoge であるホストのIPアドレスを調べる
nmblookup hoge
ワークグループ WORKGROUP 内のマスターブラウザを検索
nmblookup -M WORKGROUP