GitHubに登録した公開鍵

GitHubに登録した公開鍵は以下のURLから確認できる。

https://github.com/<ユーザ名>.keys

LinuxサーバーにGitHubへ登録した公開鍵でSSHログインできるようにする

上記のとおりWeb経由で公開鍵を取得できるので、curlコマンドで取得して~/ssh/authorized_keysに追記すればよい。

例えば以下のようにコマンドを実行する。

$ curl https://github.com/<ユーザ名>.keys >> ~/.ssh/authorized_keys

SSHログインできるようになったか確認する

ローカルのPCで以下のようにSSHログインできるか確認する。

$ ssh <ユーザ名>@<サーバーのIPアドレスもしくはホスト名>

もしssh-keygen-fオプションを使って別名で作成した場合は-iオプションで指定する。

例えばgithubという名前で作成した場合は以下のようになる。

$ ssh -i ~/.ssh/github <ユーザ名>@<サーバーのIPアドレスもしくはホスト名>

GitHubへ鍵の登録

鍵の作成

sshに使用する鍵を作成するには、ローカルのPCで以下の作業を行なう。
鍵の生成にはssh-keygenコマンドを使用する。

$ ssh-keygen -t rsa -b 4096

上記コマンドを実行するといくつか入力を求められるが、すべてEnterキーを入力すればパスワード無しで鍵が生成される。

Generating public/private rsa key pair.

Enter file in which to save the key (/home/user/.ssh/id_rsa): Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa
Your public key has been saved in /home/user/.ssh/id_rsa.pub
The key fingerprint is:
()

~/.ssh/id_rsaが秘密鍵、~/.ssh/id_rsa.pubが公開鍵となる。
秘密鍵(id_rsa)は他人に知られてはいけないが、公開鍵(id_rsa.pub)は他人に知られても問題ない。

GitHub用に別名で作成する場合は-fオプションでファイル名を指定する。

$ ssh-keygen -t rsa -b 4096 -f ~/.ssh/github

同様にすべてEnterキーを入力すると鍵が生成され、~/.ssh/githubが秘密鍵、~/.ssh/github.pubが公開鍵となる。

GitHubへ公開鍵の登録

作成した公開鍵(~/.ssh/id_rsa.pub)をGitHubに登録する。

まず~/.ssh/id_rsa.pubの内容をクリップボードにコピーする。
(もし-fオプションを使用して別名で作成した場合はファイル名に.pubがついているほうをコピーする)

SSH and GPG keysにアクセスし、new SSH keyボタンをクリックする。

SSH and GPG keys

適宜名前をつけ、コピーしておいた公開鍵を貼り付けてAdd SSH keyボタンをクリックする。

Add SSH key