・設定は以下のファイルで実施する。
/etc/samba/smb.conf
・F/W SELinux については、デフォだと許容されていない。面倒なら一旦止める。
・設定したパラメータは、以下のコマンドで記述の正当性確認が出来る。
testparm
引数とかは不要。ワーニングとか表示されるようなら、設定内容が間違っています。
testparm -v <- これでも可。
<設定の詳細:サンプルです> <- Ver 4.9 系でのサンプル
[global]
unix charset = UTF-8 <- OSのコードセット指定
dos charset = CP932 <- Windows ファイルの設定。MSの標準を指定(MS-KANJI)
workgroup = WORKGROUP <- ワークグループの名称を指定(AD等で無い場合) security = user <- セキュリティの方法を指定
security = user ユーザー名とパスワードでローカル認証を行う設定 security = share パスワードだけで認証を行う設定
security = domain ドメインコントローラにより認証を行う設定 security = server ほかのSMBサーバにより認証を行う設定 security = ads AD(アクティブディレクトリ)ドメインのドメインコントローラで認証を行う設定
passdb backend = tdbsam
assdb backend = tdbsam TDB(Trivial DataBase)を使用する passdb backend = ldapsam LDAPを使用する
printing = cups
printcap name = cups
load printers = yes
cups options = raw
hosts allow = 127. 172.16.1.10 <- アクセス対象をIPで絞る場合の指定 map to guest = Bad User <- Sambaユーザとして存在しないユーザのアクセスをゲストアカウントとする指定
Never 不正なパスワードによるユーザーのログイン要求を拒否する Bad User 不正なパスワードによるユーザーのログイン要求を拒否するが、指定されたユーザーが存在しなかった場合はゲストログインとして扱う。この場合、guest accountで指定したユーザーとなる
Bad Password 不正なパスワードによるユーザーのログイン要求はゲストユーザーとして扱う。この場合、 guest accountで指定したユーザーとなる
browseable = No <- 個別ユーザの共有領域をブラウジング禁止にする (これをここに指定しないと、[homes] に指定しても表示される(Samba の仕様))
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
read only = No
inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @printadmin root
force group = @printadmin
create mask = 0664
directory mask = 0775
[Share] <- この指定は実質的に無意味!。デフォで作成されるディレクトリなので、念の為。 (指定しなくても良い)
path = /home/share
writable = No
browseable = No
valid users = @users
force create mode = 777
force directory mode = 777
[users] <- ユーザ認証での指定例
path = /home/users
writable = Yes
browseable = No
valid users = @users
force create mode = 777
force directory mode = 777
<Samba のユーザ管理>
※:大前提としてて、OS側にユーザの登録が必要。パスワード等の管理は別となるが、ユーザとしては、存在している必要が有る。
(Windowsの場合でも、ユーザ単位でアクセス権を管理しようとすると、ユーザの登録を行う事が前提となる)
useradd -s /sbin/nologin users <-これではNG グループを指定して設定が必要
cat passwd | grep users
users:x:1001:1001::/home/users:/sbin/nologin <-グループIDを指定しないので、新規のグループとなる。
useradd -s /sbin/nologin -g users users <-これで指定するか、後で所属グループを変える事
[root@localhost etc]# pdbedit -a -u users -f "users"
new password:
retype new password:
Unix username: users
NT username:
以下省略
[root@localhost etc]# pdbedit -L
users:1001:users <- 設定されている事を確認する
[root@localhost etc]#
[root@localhost etc]# pdbedit -x users <- ユーザの削除
[root@localhost etc]# pdbedit -L
[root@localhost etc]#
コメント