MacでSSHキーを登録時にエラー発生!対処法を解説

MacでSSHキー登録時のエラー対処法を解説する記事のアイキャッチ画像。ブルーの背景に白文字でタイトルが記載されている。

デイトラで Git & GitHub の学習をしている際に、SSHキーをMacに登録する際のエラー に遭遇しました。
今回は、その エラーの原因と対処法 について解説します。

SSHキー登録時に発生したエラーについて

Gitのローカルリポジトリとリモートリポジトリを SSHキーで接続する際の問題 です。
取得したSSHキーの情報が、Macを再起動するとリセットされてしまう ため、鍵の情報をMacに登録しようとしました。

macでターミナルを起動します。デイトラに書かれていた以下のコマンドを実行しました。

ssh-add -K ~/.ssh/username-Github

しかし、このコマンドを入力すると 以下のエラーメッセージが表示されました。

このエラーメッセージの意味は、-Kおよび -A フラグが 非推奨(deprecated) になり、
代わりに --apple-use-keychain --apple-load-keychain を使用するように推奨 されているという警告です。

解決方法:Macで推奨されるSSHキーの登録方法

Appleは、-K および -A オプションの代わりに、
以下のように --apple-use-keychain--apple-load-keychain を推奨しています。

これは、AppleがmacOSのSSH管理をKeychain(キーチェーン)と統合するための変更です。

1. SSHキーをKeychainに追加する

-K オプションの代わりに --apple-use-keychain を使用して、SSHキーをmacOSのキーチェーンに追加します。
以下のコマンドを試してください。(「username-Github」の部分はご自身のSSHキーの名前が入ります。)

ssh-add --apple-use-keychain ~/.ssh/username-GitHub

このコマンドを実行すると、以下のようなメッセージが表示されます。
Identity added: /Users/usename (usernameのために macOS の Sourcetree によって生成された)
このメッセージが表示されれば、SSHキーは正常に登録されています!

SSHキーの登録が正しく行われたか確認する

登録されたSSHキーが正しく機能しているか確認するために、以下のコマンドを実行します。

ssh -T git@github.com
このコマンドを実行すると、GitHubへのSSH接続がテスト されます。
SSHキーが正常に登録されている場合、以下のメッセージが表示されるはずです。
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
このメッセージが表示されれば、GitHubへのSSH接続が正しく機能していることが確認できます!

まとめ

SSHキーをMacに登録する際は、--apple-use-keychain を使用する
-K オプションは非推奨なので、新しい方法に切り替える
登録後は ssh -T git@github.com で正常に動作するか確認する

MacでGitHubとSSH接続を設定する際に、同じエラーが発生した方はぜひ試してみてください!💡✨