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 なので、公開鍵のタイプ(アルゴリズム)が異なるのでエラーって感じですね、
サーバー側に設定を追加
PubkeyAcceptedAlgorithms +ssh-rsa
sudo service sshd reload
つながった。
考えられる原因。
rclone がSSHプロトコルでRSAを使っている。rcloneはSFTPをRSAで行おうとしている。rcloneが古いのかもしれない。最新版のビルドでは対応済みっぽいですね。
sshdの仕様変更が思わぬ波及効果を生み出している。
致命的な問題が出ない限りRSA鍵の許可を追加でも問題は起きないと思う。