Private SubnetにEC2インスタンスを立てて使う場合、踏み台を経由して接続できるようにしたほうが色々と便利なことが多い。
というわけで多段SSHの設定を書き残しておく。
結論
~/.ssh/config に、ProxyCommandを使いつつ、例えば下記のように記載する。
bastion(踏み台)がPublic SubnetにあるEC2インスタンス、targetがPrivate SubnetにあるEC2インスタンス。
Host bastion
HostName xxx.238.91.108 <- public ip
Host develop-target1
HostName 10.0.72.5 <- private ip
Host develop-target2
HostName 10.0.72.6
Host develop-*
ProxyCommand ssh bastion -W %h:%p
Host *
Port 22
User ec2-user
IdentityFile ~/.ssh/test.pem
同じ設定はまとめたほうが楽なのでまとめているが、まとめずにちゃんと全部記載するなら参考のページを参照。
これでssh develop-target1
のようにコマンドをたたけば接続できる。