我无法在 fargate ecs 容器上启动到远程主机的端口转发会话(或简单的远程会话),但可以在实例上执行此操作。使用 AWS 控制台(这是基于网站的,而不是 s...
容器 上启动到远程主机的端口转发会话(或简单的远程会话) ,但可以在 实例 。使用 AWS 控制台(基于网站而不是基于 shell),我似乎无法弄清楚需要哪些设置。
工作(实例远程会话):
aws ssm start-session \
--target i-{instance} \
--region {region} \
--profile {profile} \
--document-name AWS-StartPortForwardingSessionToRemoteHost \
--parameters '{"portNumber":["22"],"localPortNumber":["9999"],"host":["{host}"]}'
在容器上不能正常工作:
aws ssm start-session \
--target ecs:{clusterName}_{taskId}_{containerRuntimeId} \
--region {region} \
--profile {profile} \
--document-name AWS-StartPortForwardingSessionToRemoteHost \
--parameters '{"portNumber":["22"],"localPortNumber":["9999"],"host":["{host}"]}'
有什么想法吗?我得到的只是: An error occurred (TargetNotConnected) when calling the StartSession operation bla bla
我甚至创建了一个 iam 策略 并将其附加到 运行 ecs 集群内特定服务和任务的 角色
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ssm:StartSession",
"ecs:ExecuteCommand"
],
"Resource": [
"arn:aws:ecs:blablabla:cluster/{clusterName}",
"arn:aws:ssm:blablabla::document/AWS-StartInteractiveCommand",
"arn:aws:ssm:blablabla::document/AWS-StartPortForwardingSession",
"arn:aws:ssm:blablabla::document/AWS-StartPortForwardingSessionToRemoteHost",
"arn:aws:ssm:blablabla::document/AWS-StartSSHSession"
]
}
]
}