私の質問をより簡単に表現するために、まずここに例を挙げたいと思います。
/etc/pam.d/su ファイルから次の行のコメントを削除しました。
auth required pam_wheel.so use_uid
したがって、コマンドを実行するには、ユーザーがホイールグループのメンバーである必要がありますsu
。その後、次のことを試しました。
[ssam@centos ~]$ su
Password:
su: incorrect password
ここのユーザーssam
はいいえはホイールグループのメンバーなので、当然アクセスが拒否されます!しかし、正しいルートパスワードを入力したので、ここに表示されるエラーメッセージは少し不適切だと思います。一部の実際のユーザーが実際の問題が何であるかを把握するには時間がかかります。
上記と一般的な状況でLinuxシステムの問題を解決するときに最初にすべきことは何ですか?
ベストアンサー1
設定をもう一度確認してください。
これが正しいことを確認したい最初のことです。これはエラーが発生する可能性が最も高い原因でもあります。はい、すべてのソフトウェアにバグがあります。ただし、このようなバグは
su
多すぎるため、コードにバグがあるよりもシステムを誤って設定する可能性が高くなります。システムログの確認(実際には前の手順と同時に)
詳細モードで関連アプリケーションを実行する
strace
、ltrace
gdb
、ソースコード
エラーメッセージは多くの理由で誤解を招くことがよくあります。 1つは、コード内で異なるパスをマージすることが多いことです。第二に、特にセキュリティに敏感なアプリケーションでは、攻撃者に少ないヒントを提供するために行われますsu
。しかし、この特別なケースでは、認証失敗を意味するエラーコードを返す関数を呼び出すので、PAMアーキテクチャは責任があると思います。歴史的な理由から、これはパスワードの不一致と見なされます(この記事を書くときは実際のコードを見ていないので、自由に納得してください)。sudo
ssh
su