ユーザーを作成し、パスワードがありません。のように、パスワードでログインすることはできません。 rootを使用して、authorized_keysにキーを追加したいと思います。これは私の自動バックアップシステム用です。
passwd -d
の使用は明らかに間違っています 、少なくともFedoraでは、shadow-utilsベースのLinuxディストリビューション。 passwd -d
を使用してパスワードを削除した場合、パスワードを入力しなくても、誰でも(コンソールまたはグラフィカルで)そのユーザーにログインできます。
パスワード認証でログインをブロックするには、passwd -l username
を実行します。これにより、アカウントがロックされ、rootユーザーのみがアカウントを使用できるようになります。ロックは、暗号化されたパスワードを無効な文字列にレンダリングすることによって実行されます(暗号化された文字列の前に!を付けます)。
ローカルまたはリモートでログインしようとすると、"不正なパスワード"になりますが、公開鍵ログインは引き続き機能します。その後、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を使用して、このユーザーとしてログインすることは可能です。