キーを使用したSSHの無効なパスワードの記録

キーを使用したSSHの無効なパスワードの記録

キーを使用してSSHログインを設定しましたが、正常に動作します。問題は、キーと埋め込みパスワードを使用してサーバーに接続するときに間違ったパスワードを入力しても失敗したログイン試行が表示されないことです。次のキーストロークを使用したログイン試行の失敗はありません。

/var/log/audit/audit.log

または

/var/log/secure

つまり、特別な措置なしに死ぬまでパスワードを入力できるという意味だ。鍵とパスワードを使用して失敗したSSHログイン試行を記録する方法についてのアイデアはありますか?

オペレーティングシステムはRed Hat Enterprise Linux Serverバージョン7.3(Maipo)です。

よろしくお願いします。

無効なパスワードを複数回入力したときにサーバーで発生したログは次のとおりです。

Connection from my_ip port 51115 on server_ip port 22
sshd[3639]: Found matching RSA key: 00:12:23 ...
sshd[3639]: Postponed publickey for some_user from ip_address port 51115 ssh2 [preauth]

答え1

サーバーに接続する前にキーを開くには、パスワードを要求するようにクライアントキーを設定したようです。これはクライアントシステムで発生するため、サーバーに書き込まれません。

答え2

デフォルトでは、SSHキーを保護するパスワードは完全にクライアントの問題です。ssh-keygenサーバーに接続せずにパスワードを変更できるようにすることも検討してください(ssh-keygen -p -f id_rsa)。もちろん、これには以前のパスワードを知る必要がありますが、サーバーにパスワードを入力していることを暗示することなく推測できます。

つまり、サーバーに接続すると、SSHクライアントはサーバー上のすべてのキーを提供します。今後鍵を解読するにはパスワードが必要です。キーを許可しないホストに接続すると、パスワードを要求されないことがわかります。

$ ssh -v -v somehost
...
debug1: Offering RSA public key: /...
debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-rsa blen 407
debug2: input_userauth_pk_ok: fp blah
debug1: key_load_private_type: incorrect passphrase supplied to decrypt private key
Enter passphrase for key '/...':

技術的には、キーを提供するが認証に使用しないクライアントを検出するようにサーバーを変更できます。ただし、攻撃者が認証を試みる前にキーの復号化を試みる可能性があるため、これは役に立ちません。繰り返しますが、これは一般的なユーティリティでも可能です。これがまさに実行時に行うことですssh-agent

キーが不足している場合は、現在のバージョンのOpenSSHを使用すると、サーバーでもキーを要求できます。そしてパスワード。これ文書これを例として使用すると、最初にキーが必要になり、次にパスワードが必要です(「パスワード」または「キーボード対話型」認証を使用)。

AuthenticationMethods publickey,password publickey,keyboard-interactive

関連情報