web-dev-qa-db-ja.com

OpenLDAP / SSSDがユーザーをローカルグループに自動的に追加する

さまざまな種類のLinuxを実行しているサーバーのホストがすべてSSSD経由でOpenLDAPクライアントとしてセットアップされています。 LDAPグループ(sysadmins)を追加しました。また、すべてのサーバーにsysadminsグループを追加しました。 sysadminsグループのメンバーは時間の経過とともに変化します。

ログイン時にLDAPグループのすべてのユーザーをローカルグループに追加するにはどうすればよいですか?

3
Ken J

Ubuntuのドキュメントによると、ドメインユーザーをローカルグループにマッピングすることができます。それがどのOSにも適用できるかどうかはわかりませんが、* nixシステムにあるはずの標準モジュールを使用しているようです。

から buntu docs

ローカルグループをユーザーに割り当てる

ローカルグループをドメイン(ldap)ユーザーに割り当てるには、次の/etc/security/group.confを編集し、次のようなものを追加します(ローカルユーザーとしてログインし、groupsコマンドを実行して何を追加するかを確認します)。

*;*;*;Al0000-2400;audio,cdrom,dialout,floppy

pam_groupモジュールを機能させるために、/usr/share/pam-configs/my_groupsのようなファイルを作成できます。

Name: activate /etc/security/group.conf
Default: yes

Priority: 900
Auth-Type: Primary Auth:
        required                        pam_group.so

pam-auth-updateを実行してアクティブにします。

これは、/etc/pam.d/common-authを手動で編集し、pam_ldapおよびpam_krb5設定の前に次の行を追加することとほぼ同じです。

auth required pam_group.so

これで、gdmとsshを介してログインするユーザーにローカルグループが表示され、idまたはgroupsを実行してこれを確認できます。

ファイナライズ

すべてが機能することを確認するために、以下を実行します。

pam-auth-update
/etc/init.d/nscd restart
2
dragon788

現時点でこれを実現する方法は1つあります。各ホストにローカルでユーザーを追加してから、LDAPから/ etc/groupsにメンバーを追加することができます。

2番目の方法は現在glibcの開発中であり、7.3よりも早くRHELに到達することはありませんが、ここで読むことができます https://sourceware.org/glibc/wiki/Proposals/GroupMerging

基本的には、グループをローカルとLDAPの両方で定義し、libcにグループの内容をマージさせることができます。

2
jhrozek