Назад | Перейти на главную страницу

Невозможно изменить назначенную пару ключей на экземпляре amazon ec2

Кажется, я не могу найти возможность назначить вновь созданную пару ключей экземпляру amazon ec2 после удаления исходной пары ключей. Я хотел «запретить» первой паре ключей доступ к экземпляру, что, как мне кажется, мне удалось, однако я не могу переназначить экземпляр с другой парой ключей.

Когда вы указываете пару ключей при запуске экземпляра, большинство общедоступных AMI копируют открытый ключ ssh для этой пары ключей в .ssh/authorized_keys в домашнем каталоге основной учетной записи пользователя. Это делается только при первой загрузке.

Учетная запись пользователя зависит от дистрибутива Linux и издателя AMI. Некоторые общие учетные записи пользователей включают root, ec2-user, и ubuntu, поэтому файл по умолчанию может быть одним из:

/root/.ssh/authorized_keys
/home/ec2-user/.ssh/authorized_keys
/home/ubuntu/.ssh/authorized_keys

Примечание: описанное выше поведение не поддерживается EC2, это просто стандарт де-факто, реализуемый наиболее популярными общедоступными AMI.

Если вы хотите, чтобы исходная пара ключей не имела доступа к работающему экземпляру, просто отредактируйте .ssh/authorized_keys файл, удалите эту запись открытого ключа ssh и добавьте открытый ключ ssh, к которому вы хотите иметь доступ.

Это стандартное управление ключами ssh, не специфичное для EC2. Это ключ к безопасности вашего сервера, поэтому важно понимать, что вы делаете. Прочтите ssh, чтобы убедиться, что вы делаете это безопасно.

Предупреждение! Убедитесь, что вы тестируете ssh с новым ключом в отдельном терминале, прежде чем завершать существующий сеанс ssh, который использовался для редактирования файла! Если вы сломаете authorized_keys файл, вы рискуете не подключиться к экземпляру.

Убедитесь, что вы добавили общественный ssh ключ к authorized_keys файл, а не частный ключ ssh! Если вы сохранили свой закрытый ключ ssh, скажем, KEYPAIR.pem, то вот команда, которая выведет соответствующий открытый ключ:

ssh-keygen -y -f KEYPAIR.pem

Если вышеперечисленное кажется вам слишком сложным, то можно запустить новый экземпляр с указанной новой парой ключей. У вас всегда должна быть процедура, позволяющая запускать заменяющие экземпляры в любом случае, поскольку существующий экземпляр может выйти из строя в любой момент.

В связанной теме я рекомендую использовать ваши собственные ключи ssh вместо того, чтобы Amazon генерировал для вас пары ключей. Это все упрощает. Вот статья, которую я написал по этой теме:

Загрузка личных ключей ssh ​​в Amazon EC2
http://alestic.com/2010/10/ec2-ssh-keys

Я не верю, что есть способ назначить новую пару ключей экземпляру, но вы можете создать образ AMI из текущего экземпляра, а затем создать экземпляр нового AMI, назначив ему новую пару ключей при создании . Как только новый экземпляр будет запущен и запустится, просто остановите / завершите работу старого экземпляра.

IP-адрес нового экземпляра будет отличаться от IP-адреса старого экземпляра. Если это проблема, вы можете назначить эластичный IP-адрес старому экземпляру, а затем, когда будете готовы, повторно назначьте эластичный IP-адрес новому экземпляру.

Насколько я понимаю, Amazon вставляет открытый ключ вашей пары ключей в экземпляр только после создания нового экземпляра.

Второй вариант - заменить потерянную пару ключей на инстансе EC2, если это инстанс, поддерживаемый EBS. Следующая ссылка может помочь:

заменить потерянную пару ключей