나는 이것을 따라하려고 노력하고 있습니다가이드내 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'