やっとmacOS Venturaにアップデートしたんだけど、SSH(mosh)を使用してサーバーに接続できなくなって焦った。 それの対処法。
環境
.sshディレクトリにconfigを保存している
SSH接続するときにいちいちIPアドレスやドメイン名、ポート番号を打つのが面倒だから.sshディレクトリにconfigを保存している。 ちょっと何言ってるかわからない、という人は過去記事を参照してください。
【鍵なしは】ssh接続を認証鍵方式にしてみた【シャットアウト】
これ2012年の記事なのね・・・。 そりゃ俺も歳とるわけだわ。
エラーメッセージ
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
/usr/local/bin/mosh: Did not find mosh server startup message. (Have you installed mosh on your server?)
パーミッションが拒否されました。 moshサーバーの起動メッセージが見つかりませんでした。 (サーバーにmoshをインストールしていませんか?)
対処法
configに下記テキストを追加する
コンフィグをテキストエディットで開き、下記テキストを追加する。
Host *
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa
これだけ。
バージョンアップと署名の再作成が必要
今回の対処はsshのVer1を許可してるだけなので、根本的な対策にはなってない。 だからサーバー側のOpenSSHのバージョンアップ並びに署名の再作成、moshのバージョンアップが必要・・・なんじゃないかな。 とりあえず明日やってみて忘れないうちにまとめよう・・・。