FTP/SFTP サイトをホストするために FileZilla Pro Server をインストールしました。
FileZilla クライアントを使用して SFTP サーバーにログインしようとすると、正常に動作します。
しかし、別の会社がログインしようとしてエラーが発生しています。
2022-11-29 13:25:39.207 FTP<接続ftp.domain.com:22
processLoginCommand(): InbdProfId: 5915 ユーザー名: XXXXXXXXXedi への接続中に例外が発生しました
例外: com.transentric.agilink.ftp.core.exception.TransentricSSHException: com.sshtools.ssh.SshException: キー交換の処理に失敗しました [com.sshtools.ssh.SshException] [com.sshtools.ssh.SshException]
その理由は分かりません。
FileZilla には、設定できる公開/秘密キーの機能がいくつかあります。私はそのいずれも行いません。通常のユーザー名とパスワードを使用して FileZilla クライアントでログインできるので、必要ないと考えていました。
しかし、FileZilla Server には公開キー セクションがあります。このキーをいつ設定する必要があるか知っている人はいますか?
答え1
SSH鍵交換はワンタイムセッション鍵を確立し、サーバそのホストキー。これは、ユーザー キー、パスワード、または Kerberos がオプションとして含まれるユーザー認証とは異なります。
SSH プロトコルの目的は、安全でないネットワーク上でパスワードなどの弱い認証を送信できる暗号化チャネルを確立することです。Web サーバーに秘密を送信する前に、TLS で暗号化された https セッションが存在することを確認することと比較してください。
鍵交換アルゴリズムは時間の経過とともに更新される暗号化の研究により、古い方法は安全ではなくなるため、最新のアルゴリズムが採用されるように SFTP ソフトウェアを更新してください。
この問題のトラブルシューティングを行う際は、サーバーの ssh ポートのパケット キャプチャを開始します。Wireshark は ssh プロトコルを詳細に分析して、パケット内で何が起こっているかを確認できます。
ssh クライアントに、どの KEX が試行されたかを伝えてもらいます。たとえば、OpenSSH クライアントは、より詳細な設定で、クライアントとサーバーがアルゴリズムとして持っているものを正確に伝えます。 ssh -vv
そして、KEXINIT イベントのアルゴリズムを調べます。OpenSSH を使用していないので、実装でネゴシエーションがどのように機能するかについてのドキュメントも読んでください。