AWS System Manager 能否以 ec2-user 身份登录
Can AWS System Manager login as ec2-user
我有一个 EC2 实例,通常通过手动 sshing 到 ec2-user
框上使用。随着时间的推移,盒子已经积累了各种自定义配置,例如 docker 配置和 git 访问我们的私人存储库。
我正在尝试使用 AWS System Manager 在盒子上自动执行一些命令,但系统管理员以 root
登录,缺少上述 ec2-user
配置。是否可以以某种方式从系统管理器以 ec2-user
身份登录或在登录时更改用户?因为这个盒子已经定制了几个月,所以从头开始如何重新配置并不明显(也没有时间深入研究)。
已尝试通过 su ec2-user
更改用户但无济于事。
作为一种解决方法,我只是直接在盒子上 运行 SSH 命令,例如
ssh -i ~/.ssh/MYPEM.pem ec2-user@MYINSTANCE.us-east-2.compute.amazonaws.com "touch FOOFILE && git clone REPO"
但这完全避免了系统管理器并且是不可取的。
感谢@jordanm 为我指明了正确的方向。我能够使用 runuser
命令 (see more here)
切换到 ec2-user
runuser -l ec2-user -c {COMMAND}
例如
runuser -l ec2-user -c 'whoami && git pull'
我猜是因为 AWS System Manger 已经是 root,所以不需要额外 password/auth 切换到 ec2-user。
我有一个 EC2 实例,通常通过手动 sshing 到 ec2-user
框上使用。随着时间的推移,盒子已经积累了各种自定义配置,例如 docker 配置和 git 访问我们的私人存储库。
我正在尝试使用 AWS System Manager 在盒子上自动执行一些命令,但系统管理员以 root
登录,缺少上述 ec2-user
配置。是否可以以某种方式从系统管理器以 ec2-user
身份登录或在登录时更改用户?因为这个盒子已经定制了几个月,所以从头开始如何重新配置并不明显(也没有时间深入研究)。
已尝试通过 su ec2-user
更改用户但无济于事。
作为一种解决方法,我只是直接在盒子上 运行 SSH 命令,例如
ssh -i ~/.ssh/MYPEM.pem ec2-user@MYINSTANCE.us-east-2.compute.amazonaws.com "touch FOOFILE && git clone REPO"
但这完全避免了系统管理器并且是不可取的。
感谢@jordanm 为我指明了正确的方向。我能够使用 runuser
命令 (see more here)
runuser -l ec2-user -c {COMMAND}
例如
runuser -l ec2-user -c 'whoami && git pull'
我猜是因为 AWS System Manger 已经是 root,所以不需要额外 password/auth 切换到 ec2-user。