getent passwdが機能しません。CentOS 7およびSSSD LDAP認証


9

CentOS 7を新しいサーバーにインストールしました。私のすべてのサーバーは、RHEL5、Debian、SolarisなどのさまざまなシステムでLDAPSを介してエンドユーザー認証を取得します。CentOS 7には、NSSおよびPAMよりもSSS上の新しいレイヤーがあることに気付きました。とにかく、私は他のサーバーと同じタイプの接続を複製しようとします。

コマンドldapsearch -xはLDAPではバインドされていますが、LDAPSではバインドされていません。

問題を掘り下げている間、私はこれらの行を私の中に入れてSSSレイヤーを絞ってLDAPで接続を試みました /etc/nsswitch.conf

passwd:     files ldap #sss 
shadow:     files ldap #sss 
group:      files ldap #sss 

そして、私はこの行を /etc/sssd/sssd.conf

cache_credentials = False

そして、ssdを再起動しました。

systemctl restart sssd

私はコマンドでチェックし、authconfig --testすべてが問題ないようです:(http://www.heypasteit.com/clip/1LZ2

回答:


9

これが適切な解決策かどうかはわかりませんが、SSSD FAQでこの点に気づきました:

SSSDで列挙を有効にする必要があるのはいつですか?またはなぜデフォルトで列挙が無効になっていますか?

「列挙」は、「特定のマップ(ユーザー、グループなど)のすべての値を読み込んで表示する」というSSSDの用語です。SSSDが通信する必要があるサーバーの負荷を最小限に抑えるために、SSSDではこれをデフォルトで無効にします。ほとんどの操作では、ユーザーまたはグループの完全なセットをリストする必要はありません。アプリケーションは通常、特定のユーザーまたはグループに関する情報を要求します。

すべてのエントリを列挙すると、サーバーの負荷とクライアントのパフォーマンスにマイナスの影響があります(ユーザーとユーザーが属するグループ間の複雑な関係をすべてローカルキャッシュに保存する必要があるため)。そのため、このため、列挙を無効にして出荷しています(Sambaプロジェクトのwinbindと同じ動作)。

環境内に完全なリストを取得できる必要があるアプリケーションまたはスクリプトがある場合にのみ、列挙(および結果として生じるパフォーマンスの問題)を有効にする必要があります。これらの場合、列挙を有効にすることができます設定

   [domain/<domainname>]
   enumerate = true
   ...

sssd.confファイル内。

これにより、はgetent passwdSSSDを介して利用可能なすべてのアカウントを表示する機能を有効にしました。これはパフォーマンスを低下させる可能性があることに注意してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.