どうも音又です。
今回はGitHubへSSH接続するための設定手順を解説していこうかと思います。
GitHubへのSSH接続と必要性
例えばGitHubのリポジトリをクローンする時、公開リポジトリであれば以下画像のような項目のHTTPSのリンクを使用してgit clone https://...repo.git
のようなコマンドで簡単にクローンすることができます。

ではSSHで接続しようとするとその場合、SSH接続の設定が未設定だとエラーが出てしまいます。
また、プライベートリポジトリの場合だとHTTPSのリンクを使用してもユーザー認証を求められてしまいます。もちろん認証が出来なければクローンできません。
数回GitHubとのやり取りをするのであればユーザー認証をしても良いですが、開発などをするとなると頻繁にやり取りが発生するため、その度に認証するのはなかなか骨が折れます。
そんな時は1度設定してしまえば認証がいらないSSH接続の方がやりやすいという訳です。
SSH接続の設定
SSH接続の必要性について解説したところで、早速設定を行っていきましょう。
SSH接続にはid_ed25519.pub
のような鍵のファイルが必要になりますが、もしも既に設定されていれば存在するので1度あるか確認してみましょう。
ターミナル上から以下のようなコマンドで確認ができます。
ls ~/.ssh/id_ed25519.pub
存在していれば該当するファイル名が表示され、ない場合はNo such file or directory
のようなエラーが発生します。
存在していなければ新規で作成します。
鍵ファイルの作成
鍵ファイルは以下のコマンドで作成が可能です。
ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/id_25519
作成出来たら中身を表示して確認してみましょう。
cat ~/.ssh/id_ed25519.pub
正常に作成できていれば中身が表示されるかと思います。
確認ができたらこの中身を丸々コピーしてください。
GitHub側での設定
鍵ファイルの中身をコピーしたらそれをGitHub側で登録します。
GitHubを開き、右上のユーザーアイコンからSettings
を選択すると設定画面が開きます。
設定画面が開いたら、サイドバーのメニュー内にSSH and GPG keys
という項目があるのでこちらを選択します。
選択したらSSHの鍵ファイル一覧が表示されます。(未登録の場合は一覧には表示されません。)
ここからNew SSH key
を選択します。
画面が切り替わると以下のような鍵ファイルを設定する画面が開きます。

ここに鍵ファイルの情報を入力していきます。
Title
: こちらには登録する鍵ファイルの名前を入力します。これはファイル名ではなく鍵ファイルの一覧で表示される名前になりますのでわかりやすいものをつけましょう。(例: mypc-key)Key type
: こちらは初期設定のAuthentication Key
で問題ありません。Key
: ここに先ほどコピーした鍵ファイルの中身をペーストしてください。
入力出来たらAdd SSH key
を押して登録してください。
これでGitHub側での設定は完了です。
SSH接続の確認
諸々の設定が出来たらSSH接続ができたら確認してみましょう。以下のコマンドからテスト接続ができます。
ssh -T git@github.com
接続が成功すれば
Hi yourname! You've successfully authenticated, but GitHub does not provide shell access.
のようなメッセージが表示されます。
初回接続時はAre you sure you want to continue connection?
(接続を続行する?)というメッセージが表示されるのでその場合はyes
と入力すれば問題ありません。
以上で設定は完了です。あとは実際にクローンやその他のGit<–>GitHubのやり取りを行ってみてください。正常に設定ができていればユーザー認証をすることなく実行できるようになっているはずです。
おわり
今回はGitHubにSSH接続するための設定を解説してきました。
SSH接続はユーザー認証の手間が省けるほか、SSHによるセキュアなやり取りが可能になる為、ぜひ設定してみてください。
では今回はこの辺で。
コメント