Алексей Стахнов - Linux
Восстановление пароля root после перезагрузки
После успешной загрузки выполните команду mount для корневой файловой системы (в том случае, если вы производили загрузку операционной системы с дискеты или CD-ROM) или заново смонтируйте ее в режиме доступа «для чтения/записи» (в случае обычной загрузки в режиме single или init=/bin/sh).
Для монтирования корневой файловой системы в режиме доступа "для чтения/записи" можно воспользоваться приведенной ниже командой:mount -о remount, rw /
Если схема размещения файловых систем вам незнакома, можно с помощью команды fdisk -1 вывести список существующих дисковых разделов. Монтируя по очереди дисковые разделы, выясните, на каком именно разделе находится каталог /etc.
Теперь можно удалить прежний пароль пользователя root путем редактирования файлов /etc/passwd или /etc/shadow. Однако иногда удобней изменить пароль, просто скопировав его из записи пользователя, пароль которого достоверно известен.
Если в системе применяется РАМ или подобный ему пакет, настроенный на предупреждение использования пустых паролей, скопируйте хэшированное значение пароля, соответствующее некоторому известному вам паролю.
Если корневая файловая система жесткого диска была смонтирована в каталоге /mnt (при загрузке системы с аварийной дискеты), то с помощью команды chroot можно указать, с какой именно копией файла passwd должны работать такие команды, как passwd.
После того как корневая файловая система будет смонтирована в режиме доступа "для чтения/записи", с помощью команды chroot можно сделать ее корневой для всех процессов оболочки. В этом случае для установки нового значения пароля можно просто воспользоваться командой passwd. Данный вариант обеспечивает автоматическое корректное обновление любых файлов, используемых средствами синхронизированной аутентификации.
Если файл /etc/passwd был разрушен, скопируйте его с любой машины, имеющей сходные параметры настройки, или с аварийной дискеты, а еще лучше – извлеките этот файл из резервной копии системы.
Устранение последствий атак хакеров
Это большая и сложная тема. Действия, которые следует предпринимать после различных нарушений защиты системы, описывались в главе, посвященной безопасности системы (см. гл. 7).
Вкратце алгоритм решения проблемы, вызванной атакой, приведен ниже.
1. Отключить компьютер от сети как Интернет, так и от локальной, поскольку зачастую целью атаки является либо получение информации, находящейся на атакованном компьютере, либо использование взломанного компьютера в качестве плацдарма для организации атак на другие компьютеры сети.
2. Переустановить с нуля операционную систему, безжалостно уничтожив всю информацию на жестком диске. В принципе, если вам позволяют время и возможности – желательно установить, каким образом был произведен взлом операционной системы. Для этого необходимо действовать двумя путями:
– на основании log-файлов операционной системы попытаться выяснить, когда и каким образом произошел взлом;
– просмотреть на сайте производителя дистрибутива (в разделе bagtraq или в рассылках по безопасности) информацию о всех найденных со времени выхода дистрибутива (или обновления вами соответствующих пакетов операционной системы) брешах в безопасности используемых вами пакетов. При обнаружении в пакетах различных «дыр», как правило, патчи этих пакетов выходят достаточно оперативно – обычно это занимает день-два....Замечание
Как правило, если взломщик достаточно квалифицированный, самое большее, что вы сможете понять на основании log-файлов (да и то приблизительно) – время взлома системы, поскольку «нормальные» взломщики подчищают log-файлы или вообще их удаляют. Если вы хотите все-таки докопаться до сути – необходимо настроить ведение log-файлов таким образом, чтобы их копии передавались по сети на отдельный компьютер, на котором будут храниться все log-файлы вашей сети.
3. Восстановить файлы с данными и параметрами настройки взломанной машины. Крайне не рекомендуется восстанавливать систему либо исполняемые файлы из резервной копии, поскольку вполне вероятно, что в последних резервных копиях находится уже взломанная система, а взломщики обычно «подсаживают» во взломанную операционную систему модифицированные специальным образом исполняемые программы.
Файлы настройки, содержимое которых должно отличаться от полученных во время установки операционной системы, необходимо тщательно проверить, поскольку многие файлы настройки содержат команды сценариев и различных программ, которые могут использоваться хакерами для организации атак с целью получения доступа к системе. Лучший вариант – делать копии всех файлов настройки сразу же после их создания, а также после внесения в них любых изменений, причем копировать их как на носитель информации, так и распечатывать на бумаге.
4. После переустановки и восстановления файлов настройки обязательно установить все обновления, касающиеся критически важных пакетов операционной системы.
Проблемы с загрузкой операционной системы
В процессе загрузки операционной системы принимают участие несколько различных программных компонентов, поэтому существует несколько этапов, на каждом их которых могут возникать разнообразные проблемы. Будем решать проблемы по мере их возникновения.
Останов загрузки в процессе выполнения LILO
Во избежание появления большинства проблем, связанных с программой LILO, после изменения конфигурационного файла lilo.conf, а также после установки нового ядра операционной системы или изменения конфигурации жестких дисков, всегда выполняйте команду lilo. Обязательно обращайте внимание на сообщения об ошибках или предупреждениях, которые программа LILO генерирует в процессе обновления главной загрузочной записи или карты расположения используемых при загрузке файлов.
Создайте загрузочную дискету, которая будет использоваться в случаях разрушения загрузочных карт LILO.
Сохраняйте копию файла /etc/lilo.conf, копии главных загрузочных записей (MBR) на специальной аварийной дискете, а лучше – на компакт-диске. Постоянно поддерживайте эти копии в актуальном состоянии, отражающем все вносимые в систему изменения.
Далее описаны ситуации, которые могут возникнуть при ненормальном функционировании программы LILO.
Программа LILO выводит последовательность 01010101010
Ядро и карты загрузки находятся на устройстве, которое не поддерживается средствами BIOS.
Программа LILO останавливается, выдав L
Первичный загрузчик LILO не может найти вторичный загрузчик этой программы. Кроме того, могут возвращаться коды ошибок жесткого диска, описанные в документе /usr/doc/packages/lilo. Обычно эта ситуация означает, что программы BIOS и LILO по-разному определяют геометрию жесткого диска.
В случае возникновения такого рода проблемы проверьте, чтобы в BIOS был установлен режим LBA (если у вас жесткий диск достаточно больших размеров), и поместите директиву linear в файл /etc/lilo.conf (либо удалите ее, если она там уже была), после чего выполните команду Шо до повторной перезагрузки системы.
Проверьте, не превосходят ли размеры дисковых разделов максимальный размер раздела, поддерживаемый программами BIOS.
Обычно такого рода проблемы возникали на материнских платах для процессоров i486, Pentium и ранних материнских платах с поддержкой Pentium II.
Программа LILO останавливается, выдав LI
Вторичный загрузчик программы LILO был найден, но его не удалось корректно загрузить. Такое обычно случается при наличии проблемы с геометрией диска. Если реальный файл boot и его описание в карте загрузки не соответствуют друг другу, выполните команду lilo и перезагрузите компьютер.
Программа LILO останавливается, выдав LIL?
Вторичный загрузчик программы LILO не смог получить доступ к требуемому ему адресу. Проблема устраняется так же, как и в предыдущем случае.
Программа LILO останавливается, выдав LIL
Вторичный загрузчик программы LILO не смог прочитать системную карту. Выполните команду liio и перезагрузите компьютер.
Программа LILO останавливается, выдав LIL-
Некорректная таблица дескрипторов системной карты. Обычно это означает, что файл /boot/map был разрушен или перемещен.
Проблемы с выполнением программы LILO
В процессе выполнения программы LILO могут встречаться самые различные проблемы. Рассмотрим наиболее распространенные из них.
Неверная сигнатура LILO
First boot sector doesn't have a valid LILO signature
Приведенное сообщение об ошибке обычно означает, что разрушен файл /boot/boot. Другой вариант – в файле /etc/lilo.conf директива install указывает на объект, который программа LILO не воспринимает как программу первоначальной загрузки.
Chain loader doesn't have a valid LILO signature
Приведенное сообщение об ошибке означает, что разрушен файл /boot/chain. Другой вариант – в файле /etc/lilo.conf директива ioader= указывает на объект, который программа LILO не воспринимает как загрузчик цепочки.
Загрузка ядра Linux выполняется программой вторичного загрузчика boot.b, которая загружается в память программой первичного загрузчика, расположенного в главной загрузочной записи жесткого диска. Все имеющиеся в файле lilo.conf директивы image= обрабатываются исключительно вторичным загрузчиком.