[概要]
GitHubのアカウントを作成したので、自身のMacBook Proからssh接続できるように公開鍵設定を行う。
公開鍵とは
公開鍵と秘密鍵の2つを用意して、通信を行う。
公開鍵は、暗号化するためだけに使うので、人にバレても通信の中身がバレることはない。
復号化するには、秘密鍵でしかできない。
-
公開鍵:暗号化するのに使用(中身がバレても影響は、ほぼなし)
-
秘密鍵:復号するのに使用(中身がバレるとかなりやばいので、絶対外部に漏らしてはいけない)
-
参考サイト
[事前準備]
GitHubのアカウントは作っておくこと。
[作業内容]
鍵作成
セキュリティを考えて、暗号化強度を強く暗号化強度を4096にして作成しています。
お前らのSSH Keysの作り方は間違っていると公式ドキュメントに乗っ取り、パスワードも設定しておきます。
$ ssh-keygen -t rsa -b 4096 -C "hogehoge@fuga.com"
# -t 暗号化方式を指定
# -b 暗号化強度を指定
# -C コメントを設定
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/ts/.ssh/id_rsa): /Users/ts/.ssh/id_rsa_github # 秘密鍵の名前を指定
Enter passphrase (empty for no passphrase): #パスワードを入力
Enter same passphrase again: # もう一度入力
Your identification has been saved in id_rsa_github.
Your public key has been saved in id_rsa_github.pub.
作成できたファイルを確認
$ ls -l ~/.ssh
-rw------- 1 ts staff 938 9 15 22:53 config
-rw------- 1 ts staff 3326 11 8 21:52 id_rsa_github # 秘密鍵
-rw-r--r-- 1 ts staff 757 11 8 21:52 id_rsa_github.pub # 公開鍵
GitHubに公開鍵を設定する
Githubにログインして、Settingsに移動
SSH Keysを選択
Add SSH keyを選択
公開鍵をGitHubに登録する
config設定
$ vim ~/.ssh/config
下記を追記
Host github
HostName github.com
IdentityFile ~/.ssh/id_rsa_github #秘密鍵を指定
User git
権限を修正する
$ chmod 600 ~/.ssh/config
秘密鍵をssh-agentに登録する
### ssh-agentが動作しているか確認
$ eval "$(ssh-agent -s)"
Agent pid 32047
# 動いていることが確認できました。
$ ssh-add ~/.ssh/id_rsa_github
Enter passphrase for /Users/ts/.ssh/id_rsa_github: # 鍵のpassword入力
Identity added: /Users/ts/.ssh/id_rsa_github (/Users/ts/.ssh/id_rsa_github)
[事後確認・作業]
接続確認をしてみる
下記のように出れば、接続はできています。
$ ssh -T git@github.com
Hi mackerel7! You've successfully authenticated, but GitHub does not provide shell access.