GitのSSH接続を設定
概要
新しいPCに移行する作業で、GitHubにSSH接続するための設定が必要になりました。 一度設定すると忘れてしまうので、SSHで接続するための設定方法を備忘録としてまとめます。
SSH接続を設定
アプリケーション/ユーティリティディレクトリ内にあるターミナルを起動して、次のコマンドを実行してください。
$ ssh-keygen
すると、下のような出力が表示されるので、必要な箇所でEnterキーを入力してください。
Generating public/private rsa key pair. Enter file in which to save the key (/Users/user_name/.ssh/id_rsa):
Created directory '/Users/user_name/.ssh'.
パスフレーズを設定しない場合は、パスフレーズの入力では何も入力せずにEnterキーを入力します。
Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/user_name/.ssh/id_rsa. Your public key has been saved in /Users/user_name/.ssh/id_rsa.pub. The key fingerprint is: XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX XXXXXXXX.local The key's randomart image is: +--[ RSA 2048]----+ | .o. | | .o | | ... . | | . . E.o | | +So.O o . | | . ..+ + = +| | . . . o = | | . . o | | | +-----------------+
生成したSSH 鍵の公開鍵の内容は次のコマンドを実行すると確認できます。
$ cat ~/.ssh/id_rsa.pub
生成したSSH 鍵の公開鍵をリモートリポジトリに設定します。 Githubにログインして、Settingsに移動します。
GitHubの設定ページから SSH and GPG keys のページを開きます。 New SSH Key ボタンから鍵を追加するページを開きます。
先ほど生成した拡張子「.pub」のファイルの中身をコピーして貼り付けます。
SSH の確認
次のコマンドを実行するとSSH接続をGitHubに対して実行できます。レスポンスがあれば正しく設定されています。
ssh -T git@github.com
使用する鍵ファイルを指定する設定
下のようにパスワードの入力が毎回必要な場合は、ホストGitHubに接続する際に使用する鍵ファイルを指定する設定を行います。
Enter passphrase for key '/Users/user_name/.ssh/id_rsa':
SSHの設定ファイル ~/.ssh/config を作成し、以下のように設定してください。
Host github github.com HostName github.com IdentityFile ~/.ssh/id_git_rsa User git
次のコマンドを実行してください。
// SSH鍵をssh-agentに登録 $ ssh-add /Users/user_name/.ssh/id_rsa // 上記パス(~/.ssh_id_rsa)の場合、下記でも登録可能 $ ssh-add -K // 登録されていることを確認する $ ssh-add -l
GitLabとSSH接続
sshキーを登録したら接続テストを行います。
$ ssh -T git@gitlab.com