MacOSをアップデートすると、様々な箇所に問題が生じることがあります。
まず、プリンタードライバーを再インストールしないと、ウンともスンとも言わなくなる。
次に、各種アプリケーションのアップデートが必要になる。
何より、開発で使うコマンド系のエラーは非常に辛い。
何故なら、appleがまともにサポートしてくれないからだ。
でも、アップデートしないと、色々なところから取り残されてしまい、最新版にしておかないといけない。
という事でこの度メインPCのMacBookAirをアップデートしてみた所、仕事で使っていたsshアクセスができなくなってしまいました。
そのエラーを修復するための道を備忘録しておきます。
エラー内容
% ssh -i example.pem user@example.com
sign_and_send_pubkey: no mutual signature supported
wwwuser@example.com: Permission denied (publickey).
OSアップデートをした後で、仕事でつかうsshにアクセスしたらこんなエラーが出ました。
その後思い出したんですが、このサイトは、
~/.ssh/configに登録していたので、鍵の指定はしなくても良かったんですね。
vscodeでリモートアクセスしていたので、これが通らないとまともに仕事ができない・・・
さて困った・・・
解決
検索すると、いくつかの対応方法が書いてあるページがヒットしたが、それらの情報が古かったのか、エラーは治らなかったが、
stack overflowのサイトに書いてある方法で、ようやく復旧することができました。
次の2行を対象のHostのところに追記すれば解決。
PubkeyAcceptedKeyTypes=+ssh-rsa
HostKeyAlgorithms=+ssh-rsa
参考 :
https://stackoverflow.com/questions/73795935/sign-and-send-pubkey-no-mutual-signature-supported
こちらのファイルの中身は次のような感じになった。
Host example.com
HostName example.com
IdentityFile ~/key/example.com.pem
User user
PubkeyAcceptedKeyTypes=+ssh-rsa
HostKeyAlgorithms=+ssh-rsa
原因は、osアップデートにより、ssh方式がバージョンアップされて、古いバージョンエラーになっていたようです。
あとがき
開発員たるもの、こういうエラーも独自で解決する必要があるということを改めて理解できた。
まあ、エラーをググると大抵のことは解決できる時代ですからね。
エラー様様ですよ。ありがたいね〜。
このブログで一人でも多くのエンジニアの人の無駄時間が救われれば、自分も満足です。
OSアップデートを人柱的に踏み切ったエンジニアに幸あれ!
0 件のコメント:
コメントを投稿