それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

rclone でSFTPに接続できない。

rclone で sftpに接続しようとしたらエラーになる。

NewFs: couldn't connect SSH: ssh: handshake failed: ssh: unable to authenticate,

原因がわからずパニックになるが、sshはRSA鍵をデフォルトで無効化したことを思い出した。多分これだろうと予想を立てて対応

sshd のログを見てみる

Mar 19 22:22:05 docker sshd[507223]: userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]

ssh-rsa not in PubkeyAcceptedAlgorithms なので、公開鍵のタイプ(アルゴリズム)が異なるのでエラーって感じですね、

サーバー側に設定を追加

/etc/ssh/sshd_config

PubkeyAcceptedAlgorithms +ssh-rsa
sudo service sshd reload

つながった。

考えられる原因。

rclone がSSHプロトコルRSAを使っている。rcloneはSFTPをRSAで行おうとしている。rcloneが古いのかもしれない。最新版のビルドでは対応済みっぽいですね。

sshdの仕様変更が思わぬ波及効果を生み出している。

致命的な問題が出ない限りRSA鍵の許可を追加でも問題は起きないと思う。