ウェブを利用する上でセキュリティを確保することは、誰にとっても重要な時代となりました。この記事では、GitHubでSSH接続するための手順をまとめました。
目次
環境
- MacOS
まずは鍵を作成
GitHubでSSH接続するためには、公開鍵と秘密鍵を作成する必要があります。ターミナルを開いてください。
$ssh-keygen -t rsa Generating public/private rsa key pair. #鍵を保存する場所を指定する.(ホームディレクトリの/.sshに.) Enter file in which to save the key (/Users/macbook/.ssh/id_rsa): /Users/macbook/.ssh/id_rsa #パスワードを設定 Enter passphrase (empty for no passphrase): #パスワードの再確認 Enter same passphrase again: Your identification has been saved in /Users/macbook/Downloads/id_rsa Your public key has been saved in /Users/macbook/Downloads/id_rsa.pub.
まず、ssh-keygen -t rsaを入力してください。鍵の作成をはじめます。
次に、鍵を保存する場所を指定します。絶対パスで書かないとだめ(~/も使用不可)なのでお気をつけください。最後のid_rsaは鍵の名前です。ここは自由に設定できます。
最後に、パスワードを設定します。確認のために二回聞かれるので同じものを入力します。
成功すると指定したディレクトリに「id_rsa」と「id_rsa.pub」が新しく入っています。id_rsaは秘密鍵なので、絶対に外に出さないようにしましょう。
GitHubのウェブページで公開鍵を登録する
GitHubのウェブページにログインして、一番右上にあるプロフィール写真をクリックして「Settings」をクリックするとこの画面に来ます。左のメニューから「SSH and GPG keys」をクリックしてください。
次に「New SSH Key」と書かれた緑色のボタンをクリックします。ここで、公開鍵「id_rsa.pub」をエディターなどで開いてください。
- Title:この鍵の名前を決めます。自由に決めて大丈夫です。
- Key:公開鍵「id_rsa.pub」の中身をコピーアンドペーストしてここに貼り付けます。
GitHubウェブサイトでの設定はここまでです。
設定ファイルを作成
Host github github.com HostName github.com IdentityFile ~/.ssh/id_rsa #ここに自分の鍵のファイル名 User git
~/.ssh/config というファイルを作成し、上記を入力してください。
key-agentに登録
ログインの度にパスワードを入力するのは大変なので、ssh-agentに登録しておきます。
ssh-add ~/.ssh/id_rsa
接続を確認
$ ssh -T git@github.com #以下のような文章が返ってきたら成功. #シェルからのアクセスは出来ないと書いてありますが,問題ありません. Hi keita! You've successfully authenticated, but GitHub does not provide shell access.
このコマンドをターミナルに入力して接続を確認します。以上で終了です。
補足:何度もパスワードを聞かれる場合
上記の手順を行っても何度もパスワードを聞かれる場合、sshではなくhttps接続になっている可能性があります。その場合、ローカルリポジトリの.gitディレクトリの中にあるconfigファイルを以下に書き換えてください。
url = git@github.com:{アカウント名}/{リポジトリ名}.git