Linux
Шрифт:
Перезагрузка в однопользовательском режиме
Для доступа к системным файлам можно перегрузить систему в режиме одиночного пользователя.
Для безопасного выполнения перезагрузки с системной консоли достаточно нажать комбинацию клавиш <Ctrl>+<Alt>+<Delete>. Однако не везде операционная система настроена таким образом, что позволяет любому пользователю перегрузить операционную систему. Также можно попробовать команды reboot, poweroff, halt, однако на серверах обычно операционная система настраивается таким образом, что перегрузить ее может либо пользователь root, либо специально выделенный пользователь.
При компиляции ядра в него иногда включают средства поддержки функции Magic SysRq, предназначенной для принудительного выполнения перезагрузки компьютера или ввода команд sync и unmount.
Ниже перечислены комбинации клавиш, которые удобно использовать
• <Alt>+<SysRq>+<s> – предпринимается попытка выполнить команду sync для всех смонтированных файловых систем;
• <Alt>+<SysRq>+<u> – последовательно выполняются команды unmount и remount в режиме "только для чтения";
• <Alt>+<SysRq>+<b> – выполняется перезагрузка системы.
Если перезагрузить систему с помощью упомянутых корректных методов все же не удастся, постарайтесь минимизировать разрушения файловых систем, которые могут возникнуть в связи с аварийным выключением системы. Лучше всего такие действия производить тогда, когда для восстановления операционной системы у вас будет достаточно много времени, например по окончании рабочего дня или на выходные. При аварийном выключении компьютера файловые системы не будут корректно демонтированы, и после перезагрузки системы автоматически запустится программа fsck. На сервере с большим объемом дискового пространства выполнение программы может занять несколько часов.
После перезагрузки компьютера нам необходимо загрузить операционную систему в однопользовательском режиме. Как правило, для этого достаточно указать параметр single. При использовании в качестве загрузчика операционной системы программы LILO в командную строку достаточно ввести следующую команду:
LILO: linux single
После этого операционная система должна загрузиться в однопользовательском режиме. Однако иногда операционная система настраивается так, что для перевода операционной системы в однопользовательский режим необходимо указывать пароль пользователя root. Если операционная система настроена именно так, то при выполнении команды init она потребует ввести соответствующий пароль. Для решения этой проблемы можно воспользоваться следующим вариантом запуска операционной системы Linux:
LILO: linux init=/bin/sh
В результате нормальное выполнение загрузки операционной системы будет отменено, лишь только запустится командная оболочка.
В вышеприведенных примерах подразумевается, что используется пункт меню программы LILO, имеющий название linux. Узнать, какие, собственно, варианты загрузки существуют на вашем компьютере можно в тот момент, когда программа LILO ожидает ввода команды. Список доступных для загрузки ядер можно вывести с помощью клавиши <ТаЬ>.
Помимо вышеописанных сложностей, вполне может оказаться, что ваш загрузчик операционной системы (LILO в данном случае) настроен на использование паролей, значения которых указываются в файле /etc/lilo.conf. Этот режим применяется для запроса специальных паролей в случае загрузки определенных конфигураций системы.
В этом случае без так называемой гевсие-дискеты делать нам нечего. В дистрибутиве Red Hat 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.