やりたいこと
経由するサーバー(以後、踏み台サーバー)から秘密鍵を無くしたい。
そのためにMacから踏み台サーバー、踏み台サーバーから本命のサーバーに入るとき、ローカルの秘密鍵を参照し続けたい。
使う用語説明
humidai...踏み台サーバー
honmei...本命サーバー
方法
準備 ローカルに秘密鍵を置く。
今まで踏み台に置いちゃってた場合などはやってください。
1 ローカルの秘密鍵をssh-agentに登録する [ローカルでの作業]
$ ssh-add -K {鍵のパス (例、~/.ssh/himitsu.pem)}
登録できたか確認
$ ssh-add -l
2048 SHA256:himitsudayoooooooooooooooooooooooo himitsu.pem (RSA)
2 踏み台のconfigにForwardAgent yesを追加する [踏み台での作業]
踏み台サーバーのconfigの本命サーバーの部分を書き換えます。
$ ssh humidai //以下踏み台サーバーでの作業
[humidai-user@cd1234 ~]$ cd .ssh
[humidai-user@cd1234 ~]$ vi config
以下に書き換えてください。
Host honmei-server
HostName honmei.com
User honmei-user
// 追加
ForwardAgent yes
3 多段sshする [ローカル⇨踏み台⇨本命]
準備は整ったのでやってみます。
$ ssh humidai
[humidai-user@cd1234 ~]$ ssh honmei
[honemi-user@ip9876 ~]$
できましたね!
何をやったか
踏み台に秘密鍵を置かずに本命にsshできました。
セキュリティ的にもこっちの方が嬉しいですね。
ssh-agentというのが常に自分と一緒に踏み台サーバーに入って本命サーバーの鍵を渡してくれるらしいです。
これらの設定後に他のプロジェクトメンバーが本命に入る場合の導入
方法の準備と1だけをやってもらってください。
あとはいつも通りsshできます。
追記
9月5日:macを再起動すると 秘密鍵の登録がリセットされてしまう。
ので、もう一度1の手順を踏む必要あり。
引用・参考文献
ほぼこれらの記事を自分流に、シンプルにまとめたものです。
ありがとうございます。
[多段sshを行うときに、ローカルの秘密鍵を参照し続ける]
(https://qiita.com/ymd_/items/5eb833ad757bd8b3e6c3)