現在 winbind を使用していますが、pam_ldap に切り替えることを検討しています。
pam_ldap には、winbind のように (数値のプールから) uid をオンザフライで取得し、使用中にローカルにキャッシュする機能がありますか?
ドキュメントにはそのような機能については何も記載されていませんが、LDAP リポジトリ内のすべてのユーザーに Unix の uid/gid 属性を追加することは望ましくありません (AD や Windows ユーザーが多いため)
答え1
探しているのは「nscd」(ネーム サーバー キャッシュ デーモン)です。これは glibc ツリー ソースの一部であり、ほとんどのシステムで標準装備されています。多くの場合、パッケージをインストールしてデーモンを起動するだけで、すべてをキャッシュし、pam_ldap と連携するように事前構成されています。Red Hat/CentOS システムでは、「authconfig」を実行すると、すべてを自動的に実行するチェックボックス オプションがあります。LDAP とキャッシュを有効にすると、構成が書き込まれます。
さて、オンザフライの uid/gid コンセプトの場合、探しているのは pam_ldap オプションの 'pam_login_attribute' (デフォルト: uid) と 'pam_member_attribute'、おそらく 'pam_filter' だと思います。 'pam_login_attribute' は、微調整が必要な場合にログオン名に対する検索を制御するものです。