質問: 間違ったサーバーに接続しようとすると、sshパスワードが明らかになりますか? パスワードの資格情報を使用して誤ってサーバーに接続しようとした場合、管理者が使用したパスワードを読み取ってログに記録することは可能ですか?
回答: はい。暗号化された接続が確立された後にパスワードが送信されますが、リモートサーバーはプレーンテキストでパスワードを取得します。あなたがそれを気にかけているなら、最良かつ最も簡単な解決策はsshキーを使うことです。キーを受け入れることができないマシンがある場合、1つの解決策は、パスワードを安全に保存するツールを作成し、sshpassを使用して、接続しているサーバーに応じて常に正しいパスワードを送信することです。現在、パスワードがプレーンテキストで送信される理由は、パスワードの処理と保存に関するすべての決定がリモートエンドに委ねられるためです。また、クライアントはまったく馬鹿げている可能性があります。 linuxとbsdシステムでは、過去10年ほどの間、いくつかの異なるパスワードハッシュ(ストレージ)形式が使用されており( crypt(3) )、クライアントからのサポートは必要ありません。それは部分的には歴史のせいでもあります(つまり、それは常にそのようでした)。パスワードがあっても使用できる、より優れたチャレンジ/レスポンス認証プロトコルがあります。たとえば [〜#〜] srp [〜#〜] は、認証中に当事者に共有秘密を提供します。一部のsshサーバーに実装されていますが、opensshのパッチは(非常に)古いバージョン用です。