web-dev-qa-db-ja.com

LDAPからのDNベースのLinuxグループ

UidベースのposixGroupオブジェクトクラスを使用する代わりに、LinuxグループにLDAPのDNベースのグループの1つを使用する方法はありますか?

もっと広く言えば、Linuxアカウントをサポートするための1セットのグループと、他のすべてで使用される並列セットのグループを回避する方法はありますか?

4
Brad Mace

はい。

Nss_ldap構成ファイルで、nss_schemaを設定します。

nss_schema rfc2307bis

スキーマ内のサーバーで、posixGroupオブジェクトクラスが構造的ではなく補助的であることを確認してください。

次に、各グループのgroupofmembers(new)またはgroupofnames(old)とposixgroupオブジェクトクラスの両方を使用できます。各メンバーは、メンバー属性に含まれます。

dn: cn=foo,ou=Groups,dc=example
objectclass: top
objectclass: posixgroup
objectclass: groupofmembers
gidnumber: 9234
member: uid=bob,ou=people,dc=example
member: uid=alice,ou=people,dc=example
5
Jeff Strunk

groupOfMembersスキーマを取得するには、 rfcから抽出 、または これ を使用して、/etc/openldap/schema/rfc2307bis.schemaに保存します。このスキーマはnisスキーマに優先するため、最初に削除してください。

cn=configバックエンドを使用している場合

  1. を含むconvert-schema.confファイルを作成します
     include /etc/openldap/schema/core.schema
    include /etc/openldap/schema/cosine.schema 
     include/etc/openldap/schema/rfc2307bis.schema 
    
  2. /tmp/convertedというディレクトリを作成します
  3. スキーマをldifに変換します:slaptest -f convert-schema.conf -F /tmp/convert/
    • 値のアポストロフィの削除や、slaptestが成功するまでのauthPassword属性への参照の削除など、エラーを修正します。
  4. /tmp/convert/cn=config/cn=schema/cn={2}rfc2307bis.ldif/etc/openldap/rfc2307bis.ldifにコピーします
  5. rfc2307bis.ldif を変更します
    • 最初の行をdn: cn=rfc2307bis,cn=schema,cn=configに変更します
    • 3行目をcn: rfc2307bisに変更します
    • 最後の7行を削除します(structuralObjectClassからmodifyTimestamp
  6. スキーマldifをインポートします。
    ldapadd -f rfc2307bis.ldif -D "cn=admin,cn=config" -W
3
Brad Mace