
Я некоторое время использовал экземпляр Amazon EC2 и недавно случайно изменил разрешения/владение папками рекурсивно. Я больше не могу подключиться к экземпляру по SSH. Я не помню, какая именно команда была. Затем я восстановил базовый доступ, используя технику, представленную в ответе на этот вопрос:https://serverfault.com/questions/234061/re-gaining-root-access-to-an-ec2-ebs-boot-image
Однако я не знаю, что делать с шагом 3 («Изменить его»). Я не знаю, что именно изменять, и в своих попытках установить правильные разрешения я также потерял доступ к нескольким экземплярам восстановления EC2!
Для справки, я использую Win7 и Putty/WinSCP для подключения к экземпляру. Putty отображает следующие 2 ошибки, когда я пытаюсь войти в экземпляр через SSH:
Сервер отклонил наш ключ
Поддерживаемые методы аутентификации отсутствуют (сервер отправил: открытый ключ)
Я уверен, что использую правильное имя пользователя, IP-адрес и закрытый ключ для своего экземпляра.
Любая помощь приветствуется.
решение1
Решение,как описано в сообщении Server Fault, заключается в монтировании вашего EBS к другому (новому) экземпляру, к которому вы можете подключиться. EBS будет просто диском там, и вы сможете удаленно подключиться к экземпляру, поскольку он новый. Затем вы можете удалить sudo chown
каталоги, которые вы сломали в первую очередь.
Остановите (НЕ завершайте) работу вашего первого экземпляра из консоли AWS
Создайте новый экземпляр Linux из консоли AWS
Отсоедините EBS от первого экземпляра и снова присоедините его к новому экземпляру.из консоли AWS. Дайте ему имя: /dev/sdm (В консоли EBS вы увидите, что подключенный том называется sdm, но сопоставлен с xvdm в Linux, поэтому он соответствует командам ниже. Но вы можете использовать другую букву и изменить следующие команды.)
Подключитесь по SSH к новому экземпляру и выполните:
sudo mkfs -t ext4 /dev/xvdm sudo mkdir /old-ebs # optional, in case this is a bit more permanent sudo echo "/dev/xvdm /old-ebs auto noatime,noexec,nodiratime 0 0" >> /etc/fstab sudo mount /dev/xvdm /old-ebs
Теперь у вас есть (sudo) доступ к вашему старому EBS, и вы можете получить доступ к
chown
нужному каталогу. Совет здесь, если вы запутались, будет скопировать права из нового экземпляра.После завершения работы вы можете остановить новый экземпляр, отсоединить от него EBS и снова подключить его к первому экземпляру, а затем запустить его.
Третья консольная команда выше, добавляющая смонтированный том, /etc/fstab
чтобы он автоматически монтировался при каждой перезагрузке, является необязательной.