GitHub へ ssh 接続する設定方法 M1 MacBook Air にて

M1 MacBook Air を購入して設定中。
この設定に Homebrew と GitHub を使って基本的な設定をしたいと思い進めています。
また、Rosetta 2 を使わないようにしたいのですが、余りにも M1 対応していないアプリが多いので、Rosetta 2 は使わざる得ないようです。

このドキュメントでは設定に使うコードを GitHub に上げるために SSH 接続する方法について記載します。
基本的には、GitHub のドキュメントにある内容です。

英: https://docs.github.com/en/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
日: https://docs.github.com/ja/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

SSH キーの作成

ここでは新しい SSH キーを作成しますが、すでに利用しているキーを持っている場合は、そちらを利用しても良いです。

ssh-keygen でキーペアを作成

ターミナルを開いて、ssh-keygen でキーペアを作成します。

$ ssh-keygen -t ed25519 -C "your_email@example.com"

rsa で作成しているドキュメントは多いですが、ed25519 をサポートしていない実装がないなら ed25519 で作成しましょう。

hokari@mba2020m1 ~ % ssh-keygen -t ed25519 -C "hokari@mba2020m1"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/hokari/.ssh/id_ed25519): 
Created directory '/Users/hokari/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /Users/hokari/.ssh/id_ed25519.
Your public key has been saved in /Users/hokari/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx hokari@mba2020m1
The key's randomart image is:
+--[ED25519 256]--+
|+===+...         |
|Bo==E o          |
|.B=* + .         |
|.=+ = = .        |
|o .. =.oS+ .     |
| +  o  +o + .    |
|o .  .o  . . o   |
| . .  o.    . .  |
|    ....         |
+----[SHA256]-----+
hokari@mba2020m1 ~ % 

SSH キーを ssh-agent へ追加

ssh-agent を利用すると、ssh 実行時、よしなに認証処理を実施してくれます。

ssh-agent をバックグラウンド実行

eval "$(ssh-agent -s)"

hokari@mba2020m1 ~ % eval "$(ssh-agent -s)"
Agent pid 32955
hokari@mba2020m1 ~ % 

~/.ssh/config 設定

キーチェーンにパスフレーズを登録するよう ~/.ssh/config を設定します。

Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519

SSH 秘密鍵を ssh-agent へ追加

ssh-add -K を利用し ssh-agent へ SSH 秘密鍵を追加し、パスフレーズはキーチェーンに保存します。

hokari@mba2020m1 ~ % ssh-add -K ~/.ssh/id_ed25519
Enter passphrase for /Users/hokari/.ssh/id_ed25519: 
Identity added: /Users/hokari/.ssh/id_ed25519 (hokari@mba2020m1)
hokari@mba2020m1 ~ %

ssh-add -l で確認します。

hokari@mba2020m1 ~ % ssh-add -l
256 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx hokari@mba2020m1 (ED25519)
hokari@mba2020m1 ~ %

SSH 公開鍵を GitHub へ登録

hokari@mba2020m1 ~ % pbcopy < ~/.ssh/id_ed25519.pub
hokari@mba2020m1 ~ % 

接続テスト

ssh -T git@github.com

hokari@mba2020m1 ~ % ssh -T git@github.com
The authenticity of host 'github.com (52.192.72.89)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'github.com,52.192.72.89' (RSA) to the list of known hosts.
Hi hokariyutaka! You've successfully authenticated, but GitHub does not provide shell access.
hokari@mba2020m1 ~ % 
ICT
シェア大歓迎です!この記事が役に立ったらシェアしてください!
Yutaka HOKARIをフォローする

広告

スポンサーリンク
スポンサーリンク
| HOKARI's Eye sense/design/code