私はこれに従おうとしているガイドRDS データベースへの SSH トンネルを設定します。
特にこのコマンド:
ssh -N -L localPort:rdsHost:remotePort user@remoteHost -i ~/path/to/key
ただし、私は eb-cli で aws-elastic-beanstalk を使用しています。
eb cli は、eb -ssh
インスタンスに ssh 経由で接続することを可能にします。
eb ssh -e '-N -L localPort:rdsHost:remotePort'
eb ドキュメントより:
-e CUSTOM、--custom CUSTOM 'ssh -i keyfile' の代わりに使用する SSH コマンドを指定します。リモート ユーザー名とホスト名を含めないでください。
ただし、これにより、トンネルが作成される代わりに、次の出力が生成され、終了します。
INFO: Attempting to open port 22.
INFO: SSH port 22 open.
INFO: Running -N -L localPort:rdsHost:remotePort ec2-user@ip-of-instance
eb-cli を使用してトンネルを作成することは可能ですか?
答え1
はい。
ご覧のとおり、ドキュメントでは明確に説明されていませんが、-e
または--custom
フラグを使用する場合は、また-i
基礎となるコマンドにフラグを指定しssh
ないと、正しいキーが使用されません。
したがって、完全なコマンドは次のようになります (例: トンネル ポート 9229 の場合):
eb ssh --custom 'ssh -i ~/.ssh/keyfile.pem -L 9229:localhost:9229'