Может AWS Системный менеджер войти в систему как пользователь ec2 - PullRequest
2 голосов
/ 28 мая 2020

У меня есть экземпляр EC2, который обычно используется с помощью sshing вручную в поле как ec2-user. Со временем в коробке накопились различные настраиваемые конфигурации, такие как docker config и git доступ к нашим частным репозиториям.

Я пытаюсь автоматизировать некоторые команды на коробке, используя AWS System Manager, но системный менеджер входит в систему как root, в котором отсутствует вышеупомянутая конфигурация ec2-user. Можно ли как-то войти в систему как ec2-user из системного менеджера или сменить пользователей при входе в систему? Поскольку коробка настраивалась в течение нескольких месяцев, не очевидно, как перенастроить с нуля (к тому же нет времени на погружение).

Попробовали сменить пользователя через su ec2-user, но безуспешно.

В качестве обходного пути , я просто запускаю команды S SH непосредственно в поле, например

ssh -i ~/.ssh/MYPEM.pem ec2-user@MYINSTANCE.us-east-2.compute.amazonaws.com "touch FOOFILE && git clone REPO"

, но это позволяет полностью избежать использования системного менеджера и нежелательно.

1 Ответ

1 голос
/ 28 мая 2020

Спасибо @jordanm за то, что указал мне в правильном направлении. Я смог переключиться на пользователя ec2 после того, как использовал команду runuser ( см. Подробнее здесь )

runuser -l ec2-user -c {COMMAND}

например

runuser -l ec2-user -c 'whoami && git pull'

Я думаю, потому что AWS System Manger уже имеет root, для переключения на пользователя ec2 не требуется дополнительного пароля / авторизации.

...