Homebrewのアップデート - koba::blog の続き。Mavericks時代に SSH接続に公開鍵を使う - koba::blog でSSH鍵を作成しており「移行アシスタント」で移行もされているのですが、メールアドレス部分が koba@angie.local になっていて新しいMacBookのマシン名と一致しないので、Connecting to GitHub with SSH - User Documentation にしたがい新しい鍵を作成します。
SSH鍵生成
現在のSSH鍵を待避します。
$ mv ~/.ssh ~/.ssh.old
新しくSSH鍵を生成します。4096ビットのRSA鍵とします。-C
は指定せず、現在のマシン名に基づいたメールアドレスとなるようにします。*1
$ ssh-keygen -t rsa -b 4096
生成したSSH鍵を待避します。
$ mv ~/.ssh ~/.ssh.new
公開鍵の追加
待避しておいた以前の鍵を復旧し、新しい公開鍵を接続先にコピーします。
$ mv ~/.ssh.old ~/.ssh $ scp ~/.ssh.new/id_rsa.pub kobalab.net:
接続先で公開鍵を追加します。
$ cat id_rsa.pub >> ~/.ssh/authorized_keys $ rm id_rsa.pub
新く作成したSSH鍵に復旧します。
$ mv ~/.ssh ~/.ssh.old $ mv ~/.ssh.new ~/.ssh
SSH鍵をssh-agentに追加
Sierra(macOS 10.12)以降はパスフレーズがキーチェーンに追加されず、毎回聞いてくるので面倒です。以下の手順でキーチェーンに追加します。
ssh-agent をバックグラウンドで起動します。
$ eval "$(ssh-agent -s)"
~/.ssh/config
ファイルに以下を追加します。
Host * AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_rsa
ssh-add コマンドを使用して ssh-agent にSSH鍵を追加します。
$ ssh-add -K ~/.ssh/id_rsa