SSSDを備えた一部のLinuxシステムでActiveDirectoryの統合を試みています。
これまでのところ、Linuxシステムをドメインに参加させており、AD定義のユーザーでLinuxシステムにログインできます。現在、すべてのADユーザーは、SSSDと統合されているすべてのLinuxシステムにログインできます。
ユーザーFooにLinuxServer01へのログインを許可し、LinuxServer02へのログインを禁止するにはどうすればよいですか?および/またはユーザーがすべてのLinuxシステムにログインするのをブロックし、特定のシステムにユーザーを許可するにはどうすればよいですか?
againstを使用することをお勧めします。次の2つの理由により、ほとんどの展開でフィルターベースのアクセス制御フィルターを使用します。
memberof
属性が含まれている場合、これは興味深い結果をもたらす可能性があります。親、ネストされたグループは決して一致しません。ユーザーまたはユーザーのグループを許可するなどの非常に単純な使用例では、 simple access provider を使用することをお勧めします
複雑なユースケースの場合、SSSDは1.12.xシリーズ以降のAD GPOをサポートします。詳細は sssd-ad man page を検索してください。
もう少し行った後RTFM I sssd-ad(5)で詳細を見つけました -初めてそれらを逃したに違いありません:
access_provider
はpermit
であるため、認証できるすべてのユーザーにシステムへのログイン許可が与えられます。これは sssd.conf(5) で説明されています。access_provider = ad
を設定する必要がありますad_access_filter
を使用して、ログインできるユーザーのフィルターを定義します(しかし、ユーザーがログインを許可するために、AD側でシステムを1つずつ指定する方法があるかどうかはまだわかりません)
Sssd.conf構成ファイルで、必要に応じてアクセスフィルターを変更できます。
下 domain/default
セクションで、次のことを試してください。
access_provider = ldap
ldap_access_filter = memberOf=cn=GroupName,ou=Groups,dc=domain,dc=com