質問: "raspberry"; scp.Connect(22); scp.Put(@"C:\vs2017\test.text", "/home/pi/python_test.text"); scp.Close(); } } } ``` ### 試したこと Sharpsshのインストールのし直しや,エラーメッセージを理解しようといろいろと調べましたが,わかりませんでした. ### 補足情報(FW/ツールのバージョンなど) VS2017(C#), raspberry pi3 Model B windows7 ここにより詳細な情報を記載してください。 2台のpcを使っており,1台のデスクトップpcにラズパイをhdmiケーブルでつなぎ,そのラズパイと,もう1台のノートpcを有線lanでつないでいます. teratermなどでは,raspberrypi.localと入力し,ユーザー名やパスワードを打つと,ssh接続ができる状況です.VS,Raspberry pi,C#ともに始めたばっかりで,的外れなことを言ってしまっているかもしれません. どなたか 詳しい方,解決策を教えていただきたいです. よろしくお願いします.
回答: `Algorithm negotiation fail`というエラーは、SSHの鍵交換に失敗した際に出るエラーのようです。 SharpSSHの詳しいドキュメントが世に無さそうなのですが、サーバ側が提供する鍵交換アルゴリズムにSharpSSHが対応していないことが原因と思われます。 ラズパイ側の/etc/sshd_confを修正し、SharpSSHが対応しているアルゴリズムで通信できるようにしてやればよさそうですが、じゃあどれに?となると、情報がなさそうですねぇ。。。うーむ。 追記 SharpSSHのソースを落として読みました。 SharpSSHは、以下のソースによるとデフォルトで`diffie-hellman-group1-sha1`を使用している模様。 一方、によると、デフォルトで対応する鍵交換アルゴリズムは、 `curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1` とのこと。 このへんの相違を解消してやると、うまく行きそうですね。