Нам нужно восстановиться после перезаписи файлов authorized_keys на наборе серверов. Удаленные встроенные устройства Linux были настроены для автономной работы с серверами Ubuntu 14.04 по ssh. У нас нет записей об открытых ключах ssh для этих устройств, и мы не можем физически добраться до этих устройств. Нам нужно разрешить им снова подключаться к серверу через ssh без пароля. Они не всегда подключаются с использованием одного и того же IP-адреса. Они всегда подключаются, используя IP-адрес, связанный с T-mobile в США. Устройства будут продолжать попытки входа в систему. Нам просто нужно разрешить им вход. Как только они будут подключены, обратный ssh уже настроен, поэтому мы можем войти в систему и получить ssh-ключи. Есть способ исправить это?
Хммм ..... Если у вас есть закрытый ключ, я считаю, что можно восстановить открытый ключ из него.
Если у вас нет резервной копии, возможно, вам придется прибегнуть к методам восстановления данных. Ваш размер будет варьироваться в зависимости от используемой файловой системы, если используется сжатие или шифрование, какой инструмент использовался для перезаписи файла, сколько времени прошло с момента перезаписи файла и т. Д.
В идеале, как только вы поймете, что вам необходимо выполнить восстановление данных с жесткого диска, вы должны выключить компьютер и создать блочный образ жесткого диска с помощью dd. Если раздел используется только для ваших домашних каталогов, а не программным обеспечением, которое должно писать в него, вы можете просто перемонтировать его как только для чтения.
Это зависит от того, какие инструменты используются, но вполне вероятно, что когда файл был перезаписан, новое содержимое было записано в новое место на жестком диске, а предыдущие места были отмечены как освобожденные, но не перезаписывались немедленно.
Это было бы похоже на изменение номера страницы в оглавлении книги, чтобы он указывал на новую страницу, но оставил старые страницы в книге без ссылки на них.
Однако чем дольше вы ждете, тем больше вероятность, что новые данные будут записаны в старое место, которое теперь помечено как свободное и пригодное для использования пространство для любых новых данных. Как только это произойдет, никакие программные средства не смогут восстановить данные.
Я не могу здесь описать все возможные методы восстановления данных, но самый простой способ начать с такой команды, как эта. Замена / dev / sda1 на любое устройство / раздел, на котором находятся файлы authorized_keys, или, что еще лучше, образ этого раздела.
sudo grep -z -i -a '^ssh-rsa AAAAB3NzaC1yc2E' /dev/sda1
Скорее всего, у вас будет высокое отношение шума к сигналу, и вам нужно будет перебирать выходные данные в поисках любого действительного ssh-ключа. Опять же, ваша толщина может отличаться.