回答:
少なくともFedoraでは、shadow-utilsに基づいたLinuxディストリビューションでpasswd -d
は、使用は明らかに間違っています。でパスワードを削除するとpasswd -d
、誰でもそのユーザーに(コンソールまたはグラフィカルで)ログインでき、パスワードは提供されません。
パスワード認証でログインをブロックするには、を実行します。これにより、アカウントがロックされ、rootユーザーのみが使用できるようになります。ロックは、暗号化されたパスワードを無効な文字列にレンダリングすることで実行されます(暗号化された文字列の前に!passwd -l username
ローカルまたはリモートでログインを試行すると、「不正なパスワード」が発生しますが、公開鍵ログインは引き続き機能します。その後、でアカウントのロックを解除できます。passwd -u username
アカウントを削除せずに完全にロックする場合は、最後のフィールドで編集/etc/passwd
して設定します。これにより、「このアカウントは現在利用できません」という結果になります。すべてのログイン試行に対して。/sbin/nologin
/bin/false
passwd(1)のマニュアルページを参照してください。
パスワードベースの認証ではなく、キー/パスフレーズ認証を受け入れるように、SSHデーモンに固有の質問をしていませんか?
への変更を探しますsshd_config
。
セットする
PasswordAuthentication No
PreferredAuthentications publickey,hostbased,keyboard-interactive
Protocol 2,1
man ssh_configでさらに構成パラメーターを探します
ユーザーのパスワードを設定しないでください。既にパスワードがある場合は、を使用して削除しますpasswd -l <username>
。
ただし、authorized_keysを使用するか、特権アカウントからsuまたはsudoを使用して、このユーザーとしてログインすることは可能です。
passwd -d
、アカウントをパスワードなしにします。たとえば、パスワードを入力しなくてもログインできます。passwd -l
アカウントをロックするために使用します(入力不可能なパスワードを与えると考えてください)。
su
そのユーザーにできないことを確認しますか?