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

Сайт, размещенный на EC2 / Amazon, взят в заложники с закрытым ключом

У меня есть новый клиент, чей предыдущий разработчик оставил ее без внимания со своим сайтом на Amazon / EC2. У него есть закрытый ключ к инстансу, и, хотя у нее есть полный доступ к панели управления Amazon (она платит 300 долларов в месяц за сайт, который посещают примерно 3 человека в неделю), у нее нет никакого способа отключить свой контент и переехать на новый хост.

Я не знаком с AWS и не знаю, как ей помочь. Права доступа к группам / файлам сайта не работают на сервере, поэтому экспорт контента / базы данных через панель управления WordPress не работает.

Есть идеи, как ей помочь? Спасибо!

У вас есть два варианта:

  1. Создать изображение (AMI, снимок) экземпляра EC2 и создайте новый экземпляр из этого образа.

    • Он должен установить ключ SSH на тот, который вы указали, то есть ваш новый.
    • Убедитесь, что все настройки сети и безопасности такие же, как на старом экземпляре.
    • Возможно, вам придется переназначить Эластичный IP со старого экземпляра веб-сервера на новый или обновите DNS, чтобы он указывал на новый IP-адрес.
  2. Альтернативно изменить корневой том из отдельного экземпляра EC2.

    1. Запустите новый экземпляр EC2 с известным вам SSH-ключом.

    2. Стоп экземпляр веб-сервера (не прекратить Это).

    3. в Детали EC2 ищите Корневой объем имя, вероятно, это будет либо /dev/xvda или /dev/sda1. Запишите это. Затем нажмите на идентификатор тома во всплывающем окне при наведении курсора на имя корневого тома, например vol-1234abcd1234abcd

    4. в Объемы экран найти текущий корневой том vol-1234abcd1234abcd и в меню выберите Отключить том.

      • Делать Снимок объема, на всякий случай.
    5. Сейчас Прикреплять тот же том для нового экземпляра EC2, к которому у вас есть доступ.

    6. SSH к новому экземпляру и sudo su - получить root привилегии.

    7. Mount объем веб-сервера, вероятно, будет /dev/sdf1 или /dev/xvdb1 - чек dmesg | tail -n10 чтобы получить представление о названии диска.

      [root@ip-... ~] # mount /dev/xvdb1 /mnt
      
    8. Скопируйте содержимое /home/ec2-user/.ssh/authorized_keys к /mnt/home/ec2-user/.ssh/authorized_keys - убедитесь, что права доступа и права собственности на файлы остались прежними!

      [root@ip... #] cat /home/ec2-user/.ssh/authorized_keys > /mnt/home/ec2-user/.ssh/authorized_keys
      
      • В то же время вы можете захотеть скопировать содержимое вашего Сайт WordPress и файлы базы данных (если БД находится в том же экземпляре).
    9. umount /mnt из оболочки, а затем Отсоединить том из Консоли AWS.

    10. Сейчас Прикреплять это обратно как Корневой объем к старому экземпляру веб-сервера.

      • Обратите внимание, что Корневой объем имени не будет в меню! Просто напишите то, что вы записали на шаге 1 выше, например /dev/xvda или /dev/sda1.
    11. Начало экземпляр.

Если что-то пойдет не так, вот как восстановить корневую файловую систему из моментального снимка взято на шаге 4 выше.

Это должно сработать. Надеюсь, это поможет :)