[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:57681] Re: Samba 4.1.17 でのアクセス制御



たかはしもとのぶです。

以下の内容を拝見したのですが、発生している事象がよく理解
できません。

> 1)テストサーバーB上でLDAPを使わなかった場合の結果
>  a) valid users = @manager とするとすべて接続できない
>  b) valid users = hogeuser とすると正常に規制する
>  c) valid users行を削除 directoryのaclにより正常に規制する
> 
> 2)テストサーバー上でLDAPを使った場合の結果
>  1)の結果に同じ
> 
> ということで、たかはしさんのテスト結果と同じです。

わたしのテスト結果では、a)のパターンでは、managerグループに
所属しているユーザはアクセスでき、所属していないユーザは
アクセスできないという結果(期待通り)です。

「すべて接続できない」だとすると、結果が異なっているように
見えます。事象だけから逆算すると、managerグループ(もしくは
グループに所属するメンバ一覧)が認識されていないように
見えます。

> さて、問題は本サーバーAの方です。
> 3)本サーバーA上でLDAPを使った場合の結果
>  a) valid users = @manager とするとすべて接続できる
>  b) valid users = hogeuser とすると正常に規制する
>  c) valid users行を削除 directoryのaclにかかわらずすべて接続できる

こちらは、事象から逆算しても、原因がよくわからないのですが、

>  c) valid users行を削除 directoryのaclにかかわらずすべて接続できる

ということであれば、この状態で何等かファイルを作成してみて、
そのユーザ、所属グループが意図した通りになっているかどうかを
確認してみてはいかがでしょうか。

同様に、full_audit モジュールを有効にしてみたり、Sambaのログ
レベルを2以上にすると、

[2015/04/27 15:23:59.656924,  2] auth/auth.c:304(check_ntlm_password)
  check_ntlm_password:  authentication for user [monyo] -> [monyo] -> [monyo] succeeded

のように、どのユーザとして認証されたかといったログが出力されます
ので、こちらを確認してみてはいかがでしょうか。

また、どちらのサーバについても言えますが、globalセクションで
何等か該当する設定(例えばゲスト認証を有効にするなど)を行って
いれば、その設定に起因して、問題が発生している可能性はあります。

-- 
TAKAHASHI Motonobu/高橋 基信 <monyo@xxxxxxxxx>
      @damemonyo / facebook.com/takahashi.motonobu

-----Original Message-----
From: Tomoo Nomura <nomurat@xxxxxxxxx>
Sent: Tue, 7 Jul 2015 15:23:59 +0900
To: debian-users@debian.or.jp
Cc: 
Subject: [debian-users:57676] Re:  Re: Re: Samba 4.1.17 でのアクセス制御

少し進展しましたので、報告しておきます。

1)テストサーバーB上でLDAPを使わなかった場合の結果
 a) valid users = @manager とするとすべて接続できない
 b) valid users = hogeuser とすると正常に規制する
 c) valid users行を削除 directoryのaclにより正常に規制する

2)テストサーバー上でLDAPを使った場合の結果
 1)の結果に同じ

ということで、たかはしさんのテスト結果と同じです。

さて、問題は本サーバーAの方です。
3)本サーバーA上でLDAPを使った場合の結果
 a) valid users = @manager とするとすべて接続できる
 b) valid users = hogeuser とすると正常に規制する
 c) valid users行を削除 directoryのaclにかかわらずすべて接続できる

結論として
A)valic users = @manager は正常に動かない
B)本サーバーA上で、directoryのaclが反映されない

ということのようです。B)について何とか解決したのですが、手がかりがありま
したお願い致します。

野村


On 07/07/2015 10:23 AM, Tomoo Nomura wrote:
> たかはし さん
> 
> いつもお世話になります。
> さて、LDAPなしの環境ですが、本番サーバーのため少々変更が難しい(引き続き
> 試してみますが)ので、他に同様のサーバーを立ててみました。 そうすると、
> 大変奇妙な現象に遭遇し困っています。とりあえず、途中経過を報告しておきま
> す。元々の本番サーバーをA、後で仕立てたテストサーバーをBとします。
> 現象:
> サーバーAには、managerグループでもそれ以外でも接続できてしまいます。
> サーバーBには、managerグループでもそれ以外でも接続できません。
> (permission denied)
> 
> サーバーA:
> [manager-only]
>     comment = Manager-only
>     path = /public/storage/manager-only
>     directory mask = 0770
>     force create mode = 0770
>     create mask = 0770
>     writable = yes
>     public = no
>     browseable = no
>     valid users = @manager
> #   write list = @manager
> #   delete veto files = yes
> #   veto files = /\.*/
>     nt acl support = no
> 
> サーバーB:
> [manager-only]
>     comment = Manager-only
>     path = /public/storage/manager-only
>     directory mask = 0770
>     force create mode = 0770
>     create mask = 0770
>     writable = yes
>     browseable = no
>     valid users = @manager
>     nt acl support = no
> 
> /etc/pam.d 内のsamba, common-xxxxx は両サーバーともに同じです。
> /etc/libnss-ldap.conf,/etc/pam_ldap.conf も同じです。
> 
> ちなみに、両サーバーで valid users = hogeuser
> と直接指定してやると、双方とも正しい動きをします。従いまして、managerグ
> ループの扱いに違いがあるようです。LDAPサーバーは同じものを参照、(但し
> サーバーBはスレーブのLDAPになっています。参照はマスターを優先しています)
> 
> サーバーA,Bともにグループの参照は次のとおりです。
> server-b@root:/etc/pam.d#smbldap-groupshow manager
> dn: cn=manager,ou=Groups,dc=example,dc=com
> objectClass: posixGroup,sambaGroupMapping
> sambaSID: S-1-5-21-1701303421-241633061-113xxxxxxxx
> cn: manager
> gidNumber: 3000
> sambaGroupType: 2
> displayName: manager
> memberUid: manager,hogeuser1,nomura,hogeuser2
> 
> 詳細にデバッグしないとわからないと思うのですが、なにを調べれば良いか悩ん
> でいます。
> 
> なにか、方法があればお願いします。
> 
> 野村
> 
> 
> On 07/05/2015 07:10 PM, TAKAHASHI Motonobu/高橋 基信 wrote:
>> たかはしもとのぶです。
>>
>> 同じような環境を作ってみましたが、特に問題なくアクセスを拒否
>> されます。
>>
>> =====
>> [global]
>>
>> [share1]
>>     path = /var/lib/samba/shares/share1
>>     directory mask = 0770
>>     force create mode = 0770
>>     create mask = 0770
>>     writeable = yes
>>     public = no
>>     delete veto files = yes
>>     veto files = /\.*/
>>     nt acl support = no
>> =====
>> root@jessie64:~# ls -l /var/lib/samba/shares
>> total 4
>> drwxrwx--- 2 manager manager 4096 Jul  5 12:44 share1
>> =====
>>
>> 上記で、managerグループに所属していないユーザでアクセスしようと
>> しても、アクセスを拒否されます。
>>
>> LDAP認証にはしていませんが、切り分けの意味でも、LDAPなしの
>> 環境で確認してみてください。
>>
>> なお、ご存知かもしれませんが、public = no はデフォルト値です
>> ので、明示的に設定する必要はありません。

-- 
****** Nomura Technical Management Office Ltd. *****************
 Tomoo Nomura      nomura@xxxxxxxxx       http://www.tmo.co.jp/
    Phone: +81-78-797-0240 Fax: +81-78-754-8240
 Worldwide Airline Timetable 'Flight Planner'
 European Electronic Timetable 'HAFAS'         ValueFax Support
****************************************************************