
ldapsam 環境で samba サーバー (3.4.0、Ubuntu) をインストールしたところ、突然、ログインしたユーザーがグループ 10002、10003、10005 に自動的に追加されました。偶然にもこれらの gid は他のユーザーによって使用されているため (デフォルトでは uid=gid です)、これらのユーザーは間違ったディレクトリなどを参照できるため、これは問題です。
samba 3.0.33 ではこれは実行されませんでした。
徹底的にデバッグした結果、これが次のようになることがわかりました:
sid S-1-1-0 -> gid 10002
sid S-1-5-2 -> gid 10003
これらはおそらく「Everyone」と「Network rids」に対応します (???)
10005 の SID 値が見つかりませんが、おそらく gdb で見つけられるでしょう...
少なくともこれらの値を無害なものに再マップする方法はありますか? 最善の方法は、ユーザーにこれらのグループを一切持たせないようにすることです。
答え1
数時間かけて探し回った後、解決策を見つけました。ldap バックエンドを使用していますが、一部の 'samba' グループには idmap がまだ残っています。samba を初めて起動すると、idmap gid 範囲が取得され、独自のグループの追加が開始されます。
これを修正するには 2 つの方法があります:
- tdbtoolで/var/lib/samba/winbindd_idmap.tdbを編集し、GIDを必要な値に変更します。
- winbind を停止し、smb.conf の idmap gid 範囲を編集して、新しいグループが必要な gid から開始するようにし、/var/lib/samba/winbindd_idmap.tdb を削除して、samba を再起動します。