LoginSignup
4
5

More than 5 years have passed since last update.

macOS Sierraでの秘密鍵のパスフレーズ対応と、SSH keyのEd25519への変更

Last updated at Posted at 2017-06-06

目的

macOS Sierraにアップデートしたところ、SSH通信をするたびに秘密鍵のパスフレーズを聞かれるようになり、対策を調べていたところ、せっかくなのでSSH key自体も現時点で世界最強のEd25519のものに変更しよう、という目的で書いた記事です。

前提

  • macOS Sierra
  • 今までのSSH keyはすべて消す
  • SSH認証を使っているのはGitHubへの接続のみ

手順

ssh-agentに登録されているSSH keyを削除

ssh-add -lで登録されているSSH keyを確認後、ssh-add -Dで全て削除します。

【注意】キー自体を削除

rm -rf ~/.sshでSSH keyのフォルダごと削除します。

SSH KeyのフォルダとSSH key自体を作成

mkdir -p ~/.ssh && ssh-keygen -t ed25519 -C "your_email@example.com"でSSH keyのフォルダとSSH key自体を作成します。メールアドレスはGitHubで使用しているものに置き換えてください。

作成したSSH keyをssh-agentに追加

eval "$(ssh-agent -s)"で、ssh-agentをバックグラウンドで実行します。ssh-add -K ~/.ssh/id_ed25519で秘密鍵をssh-agentに追加します。

SSH configファイルの追加と編集

touch ~/.ssh/configでconfigファイルを追加し、エディタで下記のように編集してください。

.ssh/config
Host *
 AddKeysToAgent yes
 UseKeychain yes

GitHubに公開鍵を追加

cat ~/.ssh/id_ed25519.pubを実行し、結果を全てコピーします。
https://github.com/settings/keys にアクセスし、New SSH keyをクリック、TitleにはPCの名前、Keyに先程コピーしたものをペーストしてAdd SSH keyをクリックします。

通信出来るかを確認

ssh -T git@github.comを実行します。
Hi (your GitHub user name)! You've successfully authenticated, but GitHub does not provide shell access.と出れば成功です。

参考

Connecting to GitHub with SSH
Generating a new SSH key and adding it to the ssh-agent
Working with SSH key passphrases
macOS SierraでSSH鍵のパスフレーズの件
GitHubでEd25519鍵をつかう
ssh-addで記憶した鍵を登録削除したい場合
【SSH】ssh-agentの使い方を整理する
SSHなるものをよくわからずに使っている人のための手引書

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5