web-dev-qa-db-ja.com

Samba / Winbind:ドメイングループに基づいてローカルグループにドメインユーザーを追加する

Winbindを介してドメインに正常に参加しているRedhatES 6サーバーがあります(つまり、ドメイン資格情報を使用して問題なくRedhatサーバーにログインできます)。

この時点で私が探しているのは、ドメイングループに基づいてユーザーをローカルグループに自動的に追加するようにWinbindを構成することです。たとえば、ドメインのユーザー名が「DOMAIN\coledot」で、ドメイングループ「ArbitraryGroup」のメンバーであるとします。 Redhatマシンの/ etc/groupファイルに、ローカルグループ「testgrp」を定義しています。

testgrp:x:10506:

Samba/Winbindグループマップのドキュメント の理解が正しければ、net groupmapコマンドを使用して、ローカルグループ「testgrp」をドメイングループ「ArbitraryGroup」にマップできるはずです。

net groupmap add ntgroup="Arbitrary Group" unixgroup=testgrp type=d

net groupmap listを実行すると、マッピングが作成されたことを確認します。

root@Host # net groupmap list  
[...]  
Arbitrary Group (S-x-x-xx-xxxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxx) -> testgrp

ただし、groupsコマンドを実行すると、ユーザーが「任意のグループ」グループの一部として表示されていても、「testgrp」が見つかりません。

私の質問は2つあります:
1)net groupmapについての私の理解は正しいですか?
2)元のタスク(ドメインユーザーをドメイングループ経由でローカルグループにマップする)を実行するにはどうすればよいですか?

2
coledot

これは/etc/samba/smb.confファイルで実行できると思います。ローカルのLinux権限が正しい場合は、「force group」文字列を使用して、正しいグループメンバーシップに接続していることを確認できます。人々を失望させる傾向があるのは、ユーザーがすでにローカルLinuxグループのメンバーである可能性があるということですが、SMBに関する限り、Windowsから「接続する」グループが重要ですここに。

EXAMPLE:
[someshares]
        path=/path/to/someshares
        writable = yes
        browsable = yes
        valid users = @somegroup
        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        force group = somegroup
2

SMBグループからLinuxグループへのこのマッピングはドメインコントローラーでのみ実行されます。メンバーサーバーはこれを自動的に実行します(LDAPによってグローバルに、またはidmapによってローカルに異なります)。

Usermodを介してwinbindユーザーをローカルグループに追加しようとしました。これは失敗しました。おそらく、ユーザーは完全にファイルによって、または完全にwinbind(nsswitch.confを参照)によって管理されますが、両方によって同時に管理されることはありません。

これが機能する場合は、「getent group」を介してグループメンバーを取得し、ローカルグループに追加できます。これは定期的に行うことができ(DCにアクセスできない場合)、DCでのアカウント作成からメンバーサーバーへの最初のアクセス(このアクセスの場合)までの時間だけを残します。次の定期チェックの前です)問題があります。

1
Hauke Laging