"Cannot perform start session" 使用 SSM 代理端口转发时

"Cannot perform start session" when using SSM Agent port forwarding

我正在尝试使用以下命令通过 AWS SSM 代理进行端口转发:

aws ssm start-session --target i-12345ab123a12ab12 --document-name AWS-StartPortForwardingSession --parameters "portNumber"=["80"],"localPortNumber"=["80"]

我收到以下错误:

Cannot perform start session: invalid argument

然后命令失败,我返回到命令行。

如何修复此错误?

我首先使用

确认请求的端口在我的 EC2 实例上打开
lsof -i -P -n | grep LISTEN

然后我返回到我的本地计算机并 运行,根据问题:

aws ssm start-session --target i-12345ab123a12ab12 --document-name AWS-StartPortForwardingSession --parameters "portNumber"=["80"],"localPortNumber"=["80"]

然后我就报错了!!!

我意识到 SSM 代理实际上并未与 AWS CLI 工具打包在一起。我为此升级了 AWS CLI,但更重要的是 - 为最新版本重新安装了 SSM 代理。

然后一切正常:)

可以找到包含安装 SSM 代理插件的步骤的 AWS 文档 here