- Git
- Githubとの連携
- here
Githubに公開鍵を登録する
Githubに公開鍵を登録しましょう。公開鍵を登録するとSSHプロトコルで、Gitリポジトリのpush/pullを行うことができます。
この記事は、Linux上で秘密鍵を作成することを前提としています。
公開鍵と秘密鍵の生成
まず、SSHの秘密鍵を保存しておくディレクトリに移動します。「~/.ssh」ディレクトリがない場合は作成します。パーミッションは「700」にします。
mkdir -p ~/.ssh chmod 700 ~/.ssh cd ~/.ssh
公開鍵と秘密鍵のペアを生成するには、ssh-keygenコマンドを実行します。公開鍵は秘密鍵とセットになっていて、秘密鍵はローカルマシンに、公開鍵は、Github上に登録します。
ssh-keygen -t rsa
生成するファイル名を聞かれますので以下の名前で入力しましょう。
id_rsa_github
「id_rsa_github」と「id_rsa_github.pub」というファイルが作成されます。「id_rsa_github」は秘密鍵、「id_rsa_github.pub」は公開鍵です。
パスフレーズを入力してくださいと聞かれたときは、パスフレーズを設定しないので、Enterを押してください。再入力を求められるのでEnterを押してください。
秘密鍵のパーミッションは600である必要がある
秘密鍵のパーミッションは600である必要があります。ssh-keygenを使って作成した場合は、パーミッションは600に設定されますが、他のサーバーから秘密鍵の内容をコピーしてきた場合は、chmodコマンドを使って、パーミッションを600にしましょう。
chmod 600 id_rsa_github
GithubにSSH接続する場合に作成した秘密鍵を使う設定
GithubにSSH接続する場合に作成した秘密鍵を使う設定をしておきましょう。「~/.ssh/config」に追記します。パーミッションも600にしておきましょう。
echo ' Host github github.com HostName github.com IdentityFile ~/.ssh/id_rsa_github User git ' | cat >> ~/.ssh/config chmod 600 ~/.ssh/config
Github上に公開鍵を登録
Github上に公開鍵を登録しましょう。右上のユーザーアイコンの「Settings」から移動します。
SSH and GPG keyをクリックします。
New SSH keyをクリック。
TitleとKeyを入力。Titleは任意で大丈夫です。Keyは「id_rsa_github.pub」の内容です。
catコマンドで「id_rsa_github.pub」の中身を表示してみましょう。
cat id_rsa_github.pub
以下のように表示されます。
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCjSsucYA958wTIKUcPRXC2iZxb84FXkzm41/jzpfnUeBFsypS8xfTXpfDaSIYeMDyr9pIUfDuWWPykoofL4WZaJYDy5pQclFwby/KttDRAnm0XZQ2ZDUtnrUUdva55mxOcTJP0c1VWXpwrhBA+JSFLOGB8wxCV8UFh9XWXI4c5QKQ/Hyl8//nXT6suQf199VNf4Ru31rs+49FDW9FyvoX1GGEEBJCT2ROVD6qi1xY766PuhM/4OMQeIxZmZg8ysML307viqkKh/2mecwkdV1mxGQt8GbO3gvTOX5h9p7tGEwa3zSHhxudux1Kf6Pfcg4FwKuld8r77DKMXEszpRI11 myapp@myhost
この値がを貼り付けましょう。
これで、登録が完了です。
GithubへSSHで接続できることの確認
GithubへSSHで接続できることの確認しましょう。
ssh -T git@github.com
まだアクセスしたホストでない場合は、通信を許可するかきかれるので「yes」と入力してEnterを押しましょう。
以下のように表示されると成功です。
Hi shinshina-kimoto! You've successfully authenticated, but GitHub does not provide shell access.
これで、SSHで、push/pullができるようになります。