LoginSignup
4
4

More than 5 years have passed since last update.

秘密鍵/公開鍵の作り方とパスフレーズ入力の省略

Last updated at Posted at 2014-01-20
Terminal
$ ssh-keygen -t rsa -C comment -N passphrase -f filename

rsaの鍵にcommentというコメントを付け、パスフレーズにpassphraseを指定してfilename(秘密鍵)とfilename.pub(公開鍵)を生成する。(パスフレーズは5文字以上必要)
これなら対話的に聞いてくることが無いので、何かしら自動化したいとき(鍵を自動化で生成することなんてあるのか?)にはいいかも。あと対話的に聞いてこられるのが面倒なときとか。

ただ、これだと履歴にパスフレーズが残ってしまうので、

Terminal
$ history -c

などで履歴を消すか、

Terminal
$ ssh-keygen -t rsa -C comment -f filename

で対話的にパスフレーズを指定するとか。


パスフレーズを毎回聞かれるのが面倒だ、という人はssh-agentとか使うと良いかも。

自分の.bashrcには以下のように書いてあって、一度パスフレーズを聞かれるとターミナル(ターミナルでなくてtmuxだったかなあ?)が起動している限りは二度目以降パスフレーズを聞かれなくなる。(たぶん・きっと・確か)
でもOS Xの場合はキーチェーンが標準でがんばってくれた気がするので、必要なかった気がする。UbuntuとかDebianとか使うときにはとても有用だった気がするけど、最近使ってないのでわからない。

.bashrc
# ssh-agent {{{
ssh_agent=/usr/bin/ssh-agent
ssh_agent_info=$HOME/.ssh-agent-info

source "$ssh_agent_info" 2>/dev/null

ssh-add -l >/dev/null 2>&1

if [ "$?" -eq 2 -a -x "$ssh_agent" -a -z "$SSH_AGENT_PID" ]
then
  eval "$ssh_agent | grep -v 'echo' > $ssh_agent_info" 2>/dev/null
  source "$ssh_agent_info" 2>/dev/null
fi
# }}}
4
4
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
4