Túnel SSH com eb-cli (pé de feijão elástico/aws)

Túnel SSH com eb-cli (pé de feijão elástico/aws)

Estou tentando seguir issoguiapara configurar um túnel ssh para meu banco de dados RDS.

Em particular este comando:

ssh -N -L localPort:rdsHost:remotePort user@remoteHost -i ~/path/to/key

No entanto, estou usando o aws-elastic-beanstalk com o eb-cli.

O eb cli permite eb -sshconectar via ssh a uma instância.

eb ssh -e '-N -L localPort:rdsHost:remotePort'

da documentação eb:

-e CUSTOM, --custom CUSTOM Especifique um comando SSH para usar em vez de 'ssh -i keyfile'. Não inclua o usuário remoto e o nome do host.

No entanto, isso produz apenas a seguinte saída e termina em vez de criar um túnel.

INFO: Attempting to open port 22.
INFO: SSH port 22 open.
INFO: Running -N -L localPort:rdsHost:remotePort ec2-user@ip-of-instance

É possível criar um túnel com o eb-cli?

Responder1

Sim.

Como você viu, a documentação não é muito clara sobre isso, mas quando você usa a flag -eou --custom, você devetambémforneça o -isinalizador ao sshcomando subjacente ou ele não usará a chave correta.

Portanto, o comando completo ficaria assim (por exemplo, para encapsular a porta 9229):

   eb ssh --custom 'ssh -i ~/.ssh/keyfile.pem -L 9229:localhost:9229'

informação relacionada