「The RSA host key for github.com has changed」のエラーが出てきたらGithubのSSHの更新で解決しよう。

Pocket

 

「The RSA host key for github.com has changed」2023年3月24日にGitHub により RSA SSH ホストキーが更新されたことによりエラーに対応する必要があります。

まずはキーの状態確認をします。

% ls -al ~/.ssh

なければ以下のように新規発行、ある場合はid_rsa、id_rsa.pubが失効しているので、削除(rm)か退避(mv)させ以下のコマンドを実行します

% ssh-keygen -t ed25519 -C “メールアドレス”

で完了だったら良いのですが、この時点でsshアクセスしようとしてもエラーが発生します。

% ssh -T git@github.com 

まず/configがないことが原因か確認するため以下のコマンドを叩き、エラーが発生したら

 % open ~/.ssh/config
The file /Users/dhmo/.ssh/config does not exist.

% touch ~/.ssh/config
% ls 
config id_ed25519 id_ed25519.pub known_hosts
% vi config (以下を記載して保存して閉じるwq)
Host github.com
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519
% cat config 
Host github.com
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519

次に以下のコマンドでうまくいけばそのままで良いのですが、以下のようなエラーの場合

 % ssh-add --apple-use-keychain ~/.ssh/id_ed25519
ssh-add: illegal option -- -

-Kでリトライしましょう

% /usr/bin/ssh-add -K ~/.ssh/id_ed25519

Enter passphrase for /Users/dhmo/.ssh/id_ed25519: 
Identity added: /Users/dhmo/.ssh/id_ed25519 

GitHub アカウントへの新しい SSH キーの追加

ここまできたらWEB側の作業となります。pbcopy(ターミナルの出力をクリップボードにコピーしてくれる)を利用しましょう。

pbcopy < ~/.ssh/id_ed25519.pub

https://github.com/settings/keysにアクセスしてSSH and GPG keysのメニュで

リストダウンの選択肢はauthentication keyでOKで、このまま完了します。

接続できるか以下コマンドを叩いてみましょう。

% ssh -T git@github.com
Hi at-virtual! You've successfully authenticated, but GitHub does not provide shell access.

成功してますね。あとはgitコマンドを叩いて確認してみましょう。

以上です。