この記事を読んだ後:https://stackoverflow.com/questions/11700690/how-do-i-completely-remove-root-password私の印象は、ルートパスワードが変更されているかのように空であるということです。/etc/shadowファイルのルートエントリは次のとおりです。
root::0:0:99999:7:::
パスワードを求めずに root で su できることが必要です。
私はこれを行うための実用的または安全な方法を探しているわけではありません。私は公開鍵認証がauthorized_keysとSSHを介して合理的な方法でこれを実行するための実行可能な方法であることを知っています。この質問はそうではありません。
予想される動作は、パスワードを求めるメッセージを表示しない場合、または少なくともメッセージが表示されたときに空のパスワードを受け入れる(キーだけを入力し、それ以上は入力しない)場合、ユーザーがrootになる可能性があることです。
実際の動作は、ユーザーにパスワードを求めるメッセージが実際に表示され、空のパスワード(キー入力)が許可されていないことです。私もsu -
、、やってみましたsu root
。su - root
同じ行動。シャドウファイルが実際に変更されたことを確認するために以前のパスワードも試しましたが、それも機能しませんでした。単にシャドウファイルをキャットキャットするだけで、この変更が実際に適用されたことを確認するのに十分でした。私のShadow.bakで元のシャドウファイルを復元すると、元の機能が復元されます。
これはDebian 9システムにあり、suはutil-linux 2.32.1から来ました。
私の構文は間違っていますか?root::0:0:99999:7:::
空のパスワードを使用できなくなる必要がありますか?いつから削除されましたか?
答え1
su
一般的に次のように構成されているためpam_unix、通常は次のように構成されます。nullok_secureDebianシステムの指示:
$grep -m1 pam_unix /etc/pam.d/system-auth 十分な確認 pam_unix.so nullok_secure
デフォルトをに変更すると、nullok
パスワードなしで使用できますsu
。