💻

githubへSSH接続の設定方法

に公開

githubへSSH接続の設定方法

  • githubへ接続する際、SSH接続をどうするかをまとめた、超初心者向けです。
  • Macに変えたのでその備忘録です、Windowsでは無いです。

本記事を読むことで

  • 本記事を読むことで、Macを使って、GitHubへSSH接続できるにようなれる。

全体ステップ

  • 全体の流れは以下の通りです
    1. ステップ1:SSHキーの作成
    2. ステップ2:GitHubに公開鍵を登録
    3. ステップ3:接続テスト
    4. ステップ4:リポジトリをSSHでクローン

ステップ1:SSHキーの作成

  • まずは秘密鍵&公開鍵ペアを作ります。
  • やることは、4つあります。
    1. [生成開始]
    2. [保存場所指定]
    3. [パスフレーズ入力]
    4. [パスフレーズ再入力]
  1. 最終的に以下のような流れです(※①、②、③、④は、説明分かりやすくするために書いております。)
    ①user@hostname work % ssh-keygen -t ed25519 -C "your-email@example.com"
      Generating public/private ed25519 key pair.
    ②Enter file in which to save the key (/Users/{username}/.ssh/id_ed25519): 
    ③Enter passphrase (empty for no passphrase): 
    ④Enter same passphrase again: 
      Your identification has been saved in /Users/{username}/.ssh/id_ed25519
      Your public key has been saved in /Users/{username}/.ssh/id_ed25519.pub
      The key fingerprint is:
      SHA256:h1z4aeXmi3CaPNjMwYatTvnjkI53qmEPlXLzT15acKA your-email@example.com
      The keys randomart image is:
      +--[ED25519 256]--+
      |                 |
      ------途中省略------
      |    o+=+*o= .    |
      +----[SHA256]-----+
      user@hostname work % 
    
  2. [生成開始]ssh-keygenコマンドでキー生成を開始。
    ssh-keygen -t ed25519 -C "your-email@example.com"
    
    • -t :どんな暗号化で作成するかを指定です。
      • (なしの場合は、RSA)
    • -c : 公開鍵の末尾に付与されます。
      • (なしの場合は、ssh-keygen を実行した環境のユーザー名とホスト名で username@hostname の形式)
        • ex)ssh-ed25519
    cat ~/.ssh/test.pub
    AAAAC3NzaC1lZDI1NTE5AAAAIP6m81KaiJGVNjzxgqtKVuVQm+XJo0y7sQ0N4qGgK1m5 "your-email@example.com"
    
  3. [保存場所指定]実行すると、以下のようにどこに保存するかを聞かれるので、入力せずEnterでOK.
    Generating public/private ed25519 key pair.
    Enter file in which to save the key (/Users/{username}/.ssh/id_ed25519): 
    

    任意に変えた場合は、その場所を指定

  4. [パスフレーズ指定]次に、秘密鍵を守るためのパスワードを設定するか聞かれるので、入力せずEnterでOK.
    Enter passphrase (empty for no passphrase): 
    

    セキュリティを上げるなら、パスフレーズを設定

  5. [パスフレーズ再入力]パスフレーズ未入力であれば、そのままOK
    Enter same passphrase again: 
    

    入力した場合、同じ値を入力する

  6. 作成すると2つのファイルが作られます。
      Your identification has been saved in /Users/{username}/.ssh/id_ed25519
      Your public key has been saved in /Users/{username}/.ssh/id_ed25519.pub
      The key fingerprint is:
      SHA256:h1z4aeXmi3CaPNjMwYatTvnjkI53qmEPlXLzT15acKA your-email@example.com
      The keys randomart image is:
      +--[ED25519 256]--+
      |                 |
      ------途中省略------
      |    o+=+*o= .    |
      +----[SHA256]-----+
      user@hostname work % 
    
    ファイル名 内容
    id_ed25519 秘密鍵(絶対に人に見せない)
    id_ed25519.pub 公開鍵(GitHubに登録する用)
  7. 以下にて生成物を確認できます。
    ls ~/.ssh/
    id_ed25519      id_ed25519.pub
    

ステップ2:GitHubに公開鍵を登録

  1. GitHubにログイン
  2. 右上アイコン → Settings → SSH and GPG keys
    SSH and GPG keys
  3. 「New SSH key」をクリック
  4. タイトル:わかりやすく入力し、id_ed25519.pub の中身を貼り付け後に、Add SSH Leyを押下し登録

ステップ3:接続テスト

  1. ターミナル等にて、以下コマンドを実行し確認をする
    ssh -T git@github.com
    

    git@github.comはそのまま。自分のリポジトリとかでは無いので注意

  2. 以下が表示されればOK
    Hi {your-username}! You've successfully authenticated, but GitHub does not provide shell access.
    

ステップ4:リポジトリをSSHでクローン

  1. ターミナルにて、自分のリポジトリをクローンする
    git clone git@github.com:{your-username}/{リポジトリ名}.git
    

最後に

  • MacのバージョンやGithubの画面等が変わることがあるので、その旨ご了承ください。

Discussion