eb-cli を使用した SSH トンネル (elastic beanstalk/aws)

eb-cli を使用した SSH トンネル (elastic beanstalk/aws)

私はこれに従おうとしているガイド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'

関連情報