4.4. ドメインユーザーのログインパーミッションの管理
デフォルトでは、ドメイン側のアクセス制御が適用されます。これは、Active Directory (AD) ユーザーのログインポリシーが AD ドメイン自体に定義されることを意味します。クライアント側のアクセス制御を使用できるように、このデフォルトの動作は上書きできます。クライアント側のアクセス制御では、ログインパーミッションはローカルポリシーでのみ定義されます。
ドメインがクライアント側のアクセス制御を適用する場合は、realmd
を使用して、そのドメインのユーザーの基本的なアクセスルールである allow または deny を設定できます。
アクセスルールは、システムにあるすべてのサービスへのアクセスを許可または拒否します。特定のシステムリソースまたはドメインに、より具体的なアクセスルールを設定する必要があります。
4.4.1. ドメイン内でユーザーのアクセス権を有効化 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Active Directory (AD) ユーザーのログインポリシーは AD ドメイン自体で定義されています。このデフォルトの動作をオーバーライドし、AD ドメイン内のユーザーのアクセスを有効にするように RHEL ホストを設定できます。
デフォルトですべてへのアクセスを許可し、レルム許可 -x
を使用して特定のユーザーにのみアクセスを拒否することは推奨しません。Red Hat では、代わりに、すべてのユーザーに対してデフォルトのアクセス禁止ポリシーを維持し、レルム許可を使用して選択したユーザーのアクセスのみを許可することが推奨されます。
前提条件
- RHEL システムが Active Directory ドメインのメンバーである。
手順
すべてのユーザーにアクセス権を付与します。
realm permit --all
# realm permit --all
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 特定のユーザーにアクセス権を付与します。
realm permit aduser01@example.com realm permit 'AD.EXAMPLE.COM\aduser01'
$ realm permit aduser01@example.com $ realm permit 'AD.EXAMPLE.COM\aduser01'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
現在、アクセスを許可できるのはプライマリードメインのユーザーのみで、信頼できるドメインのユーザーには許可できません。これは、ユーザーログインにドメイン名を含める必要があり、SSSD は、現在、realmd
に利用可能な子ドメインに関する情報を提供できないためです。
検証
SSH を使用して、
aduser01@example.com
ユーザーとしてサーバーにログインします。ssh aduser01@example.com@server_name
$ ssh aduser01@example.com@server_name [aduser01@example.com@server_name ~]$
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh コマンドをもう一度使用して、
aduser02@example.com
ユーザーと同じサーバーにアクセスします。ssh aduser02@example.com@server_name
$ ssh aduser02@example.com@server_name Authentication failed.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
aduser02@example.com
ユーザーがシステムへのアクセスを拒否する方法に注目してください。aduser01@example.com
ユーザーにのみ、システムにログインするパーミッションを付与しています。指定したログインポリシーが原因で、その Active Directory ドメインの他のユーザーはすべて拒否されます。
sssd.conf
ファイルで use_fully_qualified_names
を true に設定すると、すべての要求で完全修飾ドメイン名を使用する必要があります。ただし、use_fully_qualified_names
を false に設定すると、要求で完全修飾名を使用できますが、出力には簡略化されたバージョンのみが表示されます。
4.4.2. ドメイン内でユーザーのアクセス権を拒否 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Active Directory (AD) ユーザーのログインポリシーは AD ドメイン自体で定義されています。このデフォルトの動作をオーバーライドし、AD ドメイン内のユーザーのアクセスを拒否するように RHEL ホストを設定できます。
特定のユーザーまたはグループのアクセスのみを許可する方が、一部のユーザーへのアクセスを拒否して、他のすべてのユーザーにアクセスを許可するよりも安全です。したがって、デフォルトで全ユーザーにアクセスを許可し、レルムの許可 -x
を使用して特定のユーザーのみを拒否することは推奨されません。Red Hat では、代わりに、すべてのユーザーに対してデフォルトのアクセス禁止ポリシーを維持し、レルム許可を使用して選択したユーザーのアクセスのみを許可することが推奨されます。
前提条件
- RHEL システムが Active Directory ドメインのメンバーである。
手順
ドメイン内のすべてのユーザーへのアクセスを拒否します。
realm deny --all
# realm deny --all
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、
realm
アカウントがローカルマシンにログインできないようにします。realm permit
を使用して、ログインを特定アカウントに制限します。ドメインユーザーの
login-policy
がdeny-any-login
に設定されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -x
オプションを使用して特定のユーザーへのアクセスを拒否します。realm permit -x 'AD.EXAMPLE.COM\aduser02'
$ realm permit -x 'AD.EXAMPLE.COM\aduser02'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
SSH を使用して、
aduser01@example.net
ユーザーとしてサーバーにログインします。ssh aduser01@example.net@server_name
$ ssh aduser01@example.net@server_name Authentication failed.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
sssd.conf
ファイルで use_fully_qualified_names
を true に設定すると、すべての要求で完全修飾ドメイン名を使用する必要があります。ただし、use_fully_qualified_names
を false に設定すると、要求で完全修飾名を使用できますが、出力には簡略化されたバージョンのみが表示されます。