私はいくつかのLinuxワークステーション(RedHat 7)を設定しようとしていますが、いくつかの珍しい要件を持つLDAPサーバーに対して認証を設定する方法を理解しようとしています。
デフォルトでは、sssdを使用してLDAP認証を設定する方法を知っていますが、要件に合わせて特定のユーザーにのみ認証を制限する方法はわかりません。
LDAP設定を有効にするには、次のコマンドラインを使用します。
authconfig --enableldap --enableldapauth --ldapserver="<redacted>" --ldapbasedn="<redacted>" --update --enablemkhomedir
これにより、すべてのLDAPユーザーがログインできるようになり、わかっている限りうまく機能します。しかし、私の要件は、LDAPの特定のユーザーだけがログインでき、ユーザーのリストが別のテキストファイル(ユーザーのログイン名別)として提供されることです。
追加情報:私たちは何千人ものユーザーを持つLDAPサーバー(実際にはActive Directory)を持っています。これらのワークステーションで作業する必要がある約20人だけが、このワークステーションにログインできます。残念ながら、LDAPにはこれに関する情報はなく、LDAPサーバーを制御することはできません。代わりに、数週間に一度のログインを許可する必要があるユーザー名のリストを含むテキストファイルを受け取ります。
このリストのユーザーのみに制限しながら、LDAPを使用してユーザー名/パスワード/ユーザーIDなどを取得するように認証を設定するにはどうすればよいですか?
ベストアンサー1
私は必要なことを達成する2つの方法を見つけました。最初はthrigによって説明されます。各ユーザー名を/etc/security/access.confに個別に追加する必要がありました。
2番目のオプションは、sssd.confにLDAPクエリ文字列を指定することです。
ldap_access_filter = (|(userid=user1)(userid=user2).....)
2番目の解決策は構築するのが非常に面倒ですが、sssdは少数のLDAPレコードのみを取得するため、最終的に大規模なLDAP環境で大きなパフォーマンス上の利点を提供します。