Linuxユーザーは現在のパスワードを知らなくてもパスワードを変更できますか?

Linuxユーザーは現在のパスワードを知らなくてもパスワードを変更できますか?

ubuntuいくつかのボックスを設定し、opscodeをchef設定ツールとして使用しています。ユーザーごとに各サーバーに公開鍵をインストールし、パスワード認証を無効にするのは非常に簡単です。

ただし、ユーザーにはsudoデフォルトでパスワードが必要な権限も必要です。

ユーザーの公開鍵をアクセス管理方法として使用し、ユーザーsudo権限を許可したい場合、NOPASSWD: ALLまたはvisduo公開鍵認証のみがある場合、ユーザーがパスワードを変更する方法はありますか?

ベストアンサー1

最も一般的な構成では、Sudoはユーザーにパスワードを入力するように要求します。通常、ユーザーはアカウントを認証するためにすでにパスワードを使用しており、パスワードを再入力することは、正当なユーザーがコンソールを放棄してハイジャックされていないことを確認する方法です。

設定では、ユーザーのパスワードはsudo認証にのみ使用されます。特に、ユーザーのSSHキーが破損している場合、攻撃者はサーバーからroot権限に昇格できません。攻撃者はアカウントにキーロガーを植えることができますが、他のユーザーはキーロガーを検出して自動的に監視することもできます。

通常、ユーザーは現在のパスワードを知っておく必要がある他のパスワードに変更することができます。プログラムはpasswdこれを確認します(確認しないように設定することもできますが、これは役に立たないか、シナリオでは単に必要ではありません)。ただし、ルートは以前のパスワードを知らなくても、すべてのユーザーのパスワードを変更できます。したがって、sudo権限を持つユーザーは、passwdプロンプトでパスワードを入力せずに実行して自分のパスワードを変更できますsudo passwd $USER。ユーザーパスワードを要求するように設定されている場合sudoでも、ユーザーはパスワードを入力する必要がありますsudo

パスワードの確認を選択的に無効にできます。お客様の場合、SSH およびその他のサービスでパスワード認証を無効にします。ほとんどの最新のユニーク(Ubuntuを含む)では、ほとんどのサービスはポリアクリルアミド認証方法を設定します。 Ubuntuでは、PAM設定ファイルはにあります。/etc/pam.dパスワード認証を無効にするにはauth … pam_unix.so。また、sshdの組み込みパスワード認証を無効にしていることを/etc/pam.d/common-auth確認してください。PasswordAuthentication no/etc/ssh/sshd_config

特定の管理ユーザーがパスワードでログインできるようにしたり、コンソールでパスワード認証を許可したりできます。これはPAMを介して達成できますが(非常に柔軟性があります)、方法を直接知ることはできません。助けが必要な場合は別途ご質問ください。

おすすめ記事