Is there a way to unbreak this egg?

We need to recover from overwriting the authorized_keys files on a set of servers. Remote, embedded Linux devices were configured to ssh into Ubuntu 14.04 servers autonomously. We do not have record of the ssh public keys for those devices, and we cannot physically get to these devices. We need to allow them to connect to the server again via ssh without a password. They do not always connect using the same IP address. They do always connect using an IP address associated with T-mobile in the USA. The devices will continue to attempt to log in. We just need to allow them in. Once they're connected, reverse ssh is already configured, so we can log in and get the ssh-keys. Is there a way to fix this?

0
задан 1 April 2016 в 22:06
2 ответа

Если у вас нет резервной копии, возможно, вам придется прибегнуть к методам восстановления данных. Ваш размер будет варьироваться в зависимости от используемой файловой системы, если используется сжатие или шифрование, какой инструмент использовался для перезаписи файла, сколько времени прошло с момента перезаписи файла и т. Д.

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

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

Это было бы похоже на изменение номера страницы в оглавлении книги, чтобы он указывал на новую страницу, но оставлял старые страницы в книге без ссылки на них.

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

Я не могу здесь описать все возможные методы восстановления данных, но самый простой способ начать - это использовать такую ​​команду, как эта. Замена / dev / sda1 на любое устройство / раздел, на котором находятся файлы authorized_keys, или, что еще лучше, образ этого раздела.

sudo grep -z -i -a '^ ssh-rsa AAAAB3NzaC1yc2E' / dev / sda1

Вероятно, у вас будет высокое отношение шума к сигналу, и вам нужно будет просмотреть вывод в поисках любого действительного ssh-ключа. Опять же, ваша толщина может отличаться.

0
ответ дан 5 December 2019 в 10:38

Хммм ..... Если у вас есть закрытый ключ, я считаю, что можно восстановить открытый ключ из него.

0
ответ дан 5 December 2019 в 10:38

Теги

Похожие вопросы