Show Table of Contents
A.2. SSSD での sudo のトラブルシューティングと sudo のデバッグログ
A.2.1. SSSD と sudo デバッグロギング
デバッグロギング機能では、SSSD および sudo に関する追加情報をロギングできます。
sudo デバッグログファイル
sudo デバッグを有効にするには以下を行います。
- 以下の行を
/etc/sudo.confに追加します。Debug sudo /var/log/sudo_debug.log all@debug Debug sudoers.so /var/log/sudo_debug.log all@debug
- デバッグするユーザーとして
sudoコマンドを実行します。
/var/log/sudo_debug.log ファイルが自動的に作成され、以下のような質問に回答するための詳細情報が提供されます。
sudoコマンドの実行時に、ユーザーおよび環境に関してどのような情報が入手できますか?sudo[22259] settings: debug_flags=all@debug sudo[22259] settings: run_shell=true sudo[22259] settings: progname=sudo sudo[22259] settings: network_addrs=192.0.2.1/255.255.255.0 fe80::250:56ff:feb9:7d6/ffff:ffff:ffff:ffff:: sudo[22259] user_info: user=user_name sudo[22259] user_info: pid=22259 sudo[22259] user_info: ppid=22172 sudo[22259] user_info: pgid=22259 sudo[22259] user_info: tcpgid=22259 sudo[22259] user_info: sid=22172 sudo[22259] user_info: uid=10000 sudo[22259] user_info: euid=0 sudo[22259] user_info: gid=554801393 sudo[22259] user_info: egid=554801393 sudo[22259] user_info: groups=498,6004,6005,7001,106501,554800513,554801107,554801108,554801393,554801503,554802131,554802244,554807670 sudo[22259] user_info: cwd=/ sudo[22259] user_info: tty=/dev/pts/1 sudo[22259] user_info: host=client sudo[22259] user_info: lines=31 sudo[22259] user_info: cols=237
- sudo ルールの取得にはどのデータソースを使用しますか?
sudo[22259] <- sudo_parseln @ ./fileops.c:178 := sudoers: files sss
- SSSD プラグインは以下の行で開始します。
sudo[22259] <- sudo_sss_open @ ./sssd.c:305 := 0
- SSSD が返したルールはいくつですか?
sudo[22259] Received 3 rule(s)
- ルールは一致しましたか?
sudo[22259] sssd/ldap sudoHost 'ALL' ... MATCH! sudo[22259] <- user_in_group @ ./pwutil.c:1010 := false
SSSD デバッグログファイル
SSSD デバッグを有効化するには以下を実行します。
/etc/sssd/sssd.confファイルの[sudo]と[domain/domain_name]セクションにdebug_levelオプションを追加します。[domain/domain_name] debug_level = 0x3ff0 ... [sudo] debug_level = 0x3ff0
- SSSD を再起動します。
# systemctl restart sssd
sudoコマンドを実行してログファイルにデバッグ情報を記述します。
以下のログファイルが作成されます。
- ドメインログファイル:
/var/log/sssd/sssd_domain_name.log - このログファイルは、以下のような質問に回答する際に役立ちます。
- SSSD が返したルールはいくつですか?
[sdap_sudo_refresh_load_done] (0x0400): Received 4-rules rules
- SSSD はサーバーからどの sudo ルールをダウンロードしましたか?
[sssd[be[LDAP.PB]]] [sysdb_save_sudorule] (0x0400): Adding sudo rule demo-name
- 一致したルールはキャッシュに保存されますか?
[sdap_sudo_refresh_load_done] (0x0400): Sudoers is successfully stored in cache
- サーバーからルールをダウンロードする際に使用したフィルターは何ですか?
[sdap_get_generic_ext_step] (0x0400): calling ldap_search_ext with [(&(objectClass=sudoRole)(|(!(sudoHost=*))(sudoHost=ALL)(sudoHost=client.example.com)(sudoHost=client)(sudoHost=192.0.2.1)(sudoHost=192.0.2.0/24)(sudoHost=2620:52:0:224e:21a:4aff:fe23:1394)(sudoHost=2620:52:0:224e::/64)(sudoHost=fe80::21a:4aff:fe23:1394)(sudoHost=fe80::/64)(sudoHost=+*)(|(sudoHost=*\\*)(sudoHost=*?*)(sudoHost=*\2A*)(sudoHost=*[*]*))))][dc=example,dc=com]
以下のフィルターを使用して IdM のルールを検索します。# ldapsearch -x -D "cn=Directory Manager" -W -H ldap://server.example.com -b dc=example,dc=com '(&(objectClass=sudoRole)...)'
- sudo 応答ログファイル:
/var/log/sssd/sssd_sudo.log - このログファイルは、以下のような質問に回答する際に役立ちます。
- SSSD が返したルールはいくつですか?
[sssd[sudo]] [sudosrv_get_sudorules_from_cache] (0x0400): Returning 4-rules rules for [user@idm.example.com]
- SSSD のキャッシュの検索に適用されたフィルターはどれですか?
[sudosrv_get_sudorules_query_cache] (0x0200): Searching sysdb with [(&(objectClass=sudoRule)(|(sudoUser=ALL)(sudoUser=user)(sudoUser=#10001)(sudoUser=%group-1)(sudoUser=%user)(sudoUser=+*)))]
- SSSD キャッシュから返されたルールをどのように検索しますか? 以下のフィルターを使用してルールを検索します。
# ldbsearch -H /var/lib/sss/db/cache_domain_name.ldb -b cn=sysdb '(&(objectClass=sudoRule)...)'
注記
ldbsearchユーティリティーは ldb-tools パッケージに含まれます。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.