GitHubにSSH接続する方法 – SSH公開鍵の登録からGitHubの使い方まで(Mac編)

how-to-make-ssh-connection-to-github プログラミング

SSH鍵を作成してGitHubにSSH接続するまでの方法の解説をしたいと思います。

SSH鍵を作成する

SSH鍵はターミナルを起動して、”ssh-keygen”コマンドを入力することで簡単に作成することができます。

SSH鍵の作成

はじめに、暗号化方式がRSAで鍵長が4096bitのSSH鍵を作成します。

また、後からどの鍵か分かるようにするために-Cオプションでコメントを追加することができます。

一般的にコメントにはメールアドレスを設定するようですが、できるだけ余分な情報は付けない方が無難なので、必要がなければコメントは省略した方が良いでしょう。

$ ssh-keygen -t rsa -b 4096 -C "your@comment"

SSH鍵の保存

SSH鍵の保存先を聞かれます。通常そのままで問題ないので、Enterを押します。

Enter file in which to save the key (/Users/you/.ssh/id_rsa):

パスフレーズの入力とSSH鍵の生成

パスフレーズを聞かれます。安全なパスフレーズを入力します。(確認のため、2回入力する必要があります。)

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

パスフレーズの入力が完了すると、SSH鍵が生成され、指定した場所に保存されます。
その際、作成した公開鍵の「fingerprint」と「randomart」が表示されます。
これらは、人間が読みやすい形式に公開鍵を表示したもので、公開鍵を目視で見分けたい時に利用したりします。

Your identification has been saved in /Users/you/.ssh/id_rsa.
Your public key has been saved in /Users/you/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:GEA5FjOeDIWpwE9qpE4NOYP4IWN98P34WOnaSiiGP98 your@comment
The key's randomart image is:
+---[RSA 4096]----+
| . . o+o |
| o o *.. |
| + o + o . |
| *..o. . o |
| + S O. + |
| o . *..P o |
| o .*.= |
| ..+.oo |
| ..+BQo |
+----[SHA256]-----+

SSH鍵の設定

SSH鍵を生成したディレクトリには2つのファイルがあります。

id_rsa秘密鍵。自分しかアクセスできないようにする。
id_rsa.pub公開鍵。GitHubなどに登録する鍵。

id_rsa鍵は秘密にしなければいけない鍵です。パーミッションを600にして、他者からアクセスできないようにしておく必要があります。(注意パーミッションを600にしておかないと、SSH接続時にエラーになる場合があります)

$ chmod 600 ~/.ssh/id_rsa

次に、SSH鍵を管理するために、configファイルを作成・編集しましょう。

SSH鍵を複数持っている場合、アクセスの度に鍵を選択する必要が出てきます。configファイルを使えば、どのアクセスの時にどのSSH鍵を使うかを設定することができます。

SSH鍵のあるディレクトリにconfigファイルを作成して、以下の設定をします。

Host github github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa
User git

この設定により、GitHubにアクセスする際はここで指定したSSH鍵が使われるようになりました。

GitHubアカウントにSSH鍵を登録する

SSH鍵の作成が終わったら、公開鍵をGitHubに登録することで、公開鍵認証方式でGitHubにアクセスすることができるようになります。

では早速、公開鍵をGitHubに登録してみましょう。

公開鍵のコピー

公開鍵をクリッポボードにコピーします。

$ pbcopy < ~/.ssh/id_rsa.pub

コマンドを使ってクリップボードへコピーしていますが、直接「d_rsa.pub」をテキストエディタで開いてコピー&ペーストでコピーしても結構です。

GitHubに公開鍵を登録する

GitHubにログインして、右上にあるプロフィール画像をクリックして、「Settings」をクリックします。

GitHubのSettings

「Settings」ページの左側のメニューバーにある「SSH and GPG keys」をクリックします。

GitHubのSSH and GPG keys

「SSH key」ボタンをクリックします。

GitHubのSSH kyesの登録

「Title」フィールドに適当なラベルを記入します。ラベル名は何でも良いですが、SSH鍵を使ってアクセスするクライアントPC名など分かりやすいような名前が良いでしょう。

クリップボードにコピーしていた公開鍵を「Key」フィールドにペーストします。

GitHubの公開鍵の登録

「Add SSH Key」ボタンをクリックして公開鍵を登録します。

もし、公開鍵を登録する際にパスワードを聞かれた際は、GitHubのログインパスワードを入力して登録を完了させます。

GitHubにSSH鍵を使ってアクセスする

GitHubにSSHでアクセスできるか試してみましょう。

下記のコマンドを入力します。

$ ssh -T git@github.com

以下のメッセージが表示されたら「yes」を入力します。

The authenticity of host 'github.com (your IP address)' can't be established. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you want to continue connecting (yes/no)? yes

SSH鍵のパスフレーズを入力します。

Warning: Permanently added ‘github.com,your IP address' (RSA) to the list of known hosts. Enter passphrase for key '/Users/you/.ssh/id_rsa’:

以下のメッセージが表示されればSSHでのアクセスが成功しています。

Hi ideahacker! You've successfully authenticated, but GitHub does not provide shell access.

コメント

この記事が気に入ったら最新ニュース情報を、
いいねしてチェックしよう!