14.9. SSSD サービスからデバッグログを収集し、IdM クライアントによる認証問題のトラブルシューティング
IdM クライアントに IdM ユーザーとして認証を試行する際に問題が発生した場合は、IdM サーバーでユーザー情報を取得できることを確認します。IdM サーバーでユーザー情報を取得できない場合は、(IdM サーバーから情報を取得する) IdM クライアントでそれを取得できなくなります。
認証の問題が IdM サーバーから生成されていないことを確認したら、IdM サーバーと IdM クライアントの両方から SSSD デバッグログを収集していました。
前提条件
- IdM サーバーではなく、IdM クライアントで認証の問題のみがあります。
-
sssctl
コマンドを実行して SSSD サービスを再起動するには、root パスワードが必要です。
手順
-
クライアントで、テキストエディターで
/etc/sssd/sssd.conf
ファイルを開きます。 クライアントで、
ipa_server
オプションをファイルの[domain]
セクションに追加し、IdM サーバーに設定します。これにより、IdM クライアントは他の IdM サーバーの自動検出を避け、このテストを 1 つのクライアントおよびサーバー 1 台だけに制限します。[domain/example.com] ipa_server = server.example.com ...
-
クライアントで
sssd.conf
ファイルを保存して閉じます。 クライアントで SSSD サービスを再起動して、設定の変更を読み込みます。
[root@client ~]# systemctl restart sssd
サーバーおよびクライアントで、詳細な SSSD デバッグロギングを有効にします。
[root@server ~]# sssctl debug-level 6
[root@client ~]# sssctl debug-level 6
サーバーおよびクライアントで、認証問題が発生しているユーザーの SSSD キャッシュの検証オブジェクトでは、LDAP データベースを迂回せず、SSSD がすでにキャッシュされています。
[root@server ~]# sssctl cache-expire -u idmuser
[root@client ~]# sssctl cache-expire -u idmuser
サーバーおよびクライアントで、古い SSSD ログを削除して、トラブルシューティングのデータセットを最小限に抑える。
[root@server ~]# sssctl logs-remove
[root@server ~]# sssctl logs-remove
クライアントで、認証問題が発生し、試行前後にタイムスタンプを収集する際に、ユーザーが認証問題が発生しようと試みます。これらのタイムスタンプは、データセットのスコープをさらに絞り込むことができます。
[root@client sssd]# date; su idmuser; date Mon Mar 29 16:20:13 EDT 2021 su: user idmuser does not exist Mon Mar 29 16:20:14 EDT 2021
(オプション) サーバーおよびクライアント 詳細な SSSD ログの収集したくない場合はデバッグレベルを下げます。
[root@server ~]# sssctl debug-level 0
[root@client ~]# sssctl debug-level 0
サーバーおよびクライアントで、失敗した要求に関する情報を SSSD ログを確認します。
- クライアントログのクライアントからの要求を確認します。
- サーバーログのクライアントからの要求を確認します。
- サーバーログでリクエストの結果を確認します。
- サーバーからリクエストの結果を受信するクライアントの結果を確認します。
認証問題の原因を判断できない場合は、以下を行います。
IdM サーバーおよび IdM クライアントで最近生成した SSSD ログを収集します。ホスト名またはロールに応じてラベルを付けます。
[root@server ~]# sssctl logs-fetch sssd-logs-server-Mar29.tar
[root@client ~]# sssctl logs-fetch sssd-logs-client-Mar29.tar
Red Hat テクニカルサポートケースを作成し、以下を提供します。
SSSD デバッグログ:
-
サーバーから
sssd-logs-server-Mar29.tar
-
クライアントからの
sssd-logs-client-Mar29.tar
-
サーバーから
ログに対応する要求のタイムスタンプおよびユーザー名を含むコンソールの出力。
[root@client sssd]# date; su idmuser; date Mon Mar 29 16:20:13 EDT 2021 su: user idmuser does not exist Mon Mar 29 16:20:14 EDT 2021