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