Колисниченко Д.Н. - Linux-сервер своими руками (1077324), страница 55
Текст из файла (страница 55)
А документация по версии 0.8.x ничем вам не поможет, если выиспользуете версию 0.9.x. Поэтому в этой главе я не буду рассматривать однуопределенную версию, так как при выходе следующей версии этот материалбезнадежно устареет, а рассмотрю общую настройку LIDS — все написанноев этой главе должно работать у вас вне зависимости от версии LIDS.Система LIDS позволяет запретить или просто ограничить доступ пользователя root к файлам, сетевым интерфейсам, памяти, блочным устройствам.Почему именно пользователя root, я думаю, вы уже догадались: ограничитьдоступ любого пользователя можно с помощью стандартных средств самойLinux. В первую очередь система защищает систему от злоумышленника,который, воспользовавшись багом («дырой» или функцией на языкеMicrosoft) какой-нибудь программы, получил права root.Основным преимуществом системы LIDS является то, что ее нельзяотключить обычными способами.Во-первых, для отключения LIDS необходимо.находиться непосредственно за компьютером жертвы, а такое могут себе позволить не все хакеры.Примечание.Значение слова «хакер» значительно объемнее, чем просто «вандал», пытающийсяразрушить вашу систему.
Подробнее вы можете прочитать об этом в документеHacker-HOWTO, которые вы найдете на прилагаемом к книге CD.Во-вторых, чтобы снять защиту с определенного объекта, например,файла /etc/passwd, нужно знать пароль администратора LIDS, а не пользователя root. Этот пароль хранится в зашифрованном виде в специальномфайле. А этот файл, в свою очередь, «виден» только программе LIDS, вы егоне увидите, даже если введете команду Is- 1. Таким образом можно защититьне только файл паролей LIDS, но и файл /etc/passwd, предварительноразрешив доступ к нему только программам login, su и passwd, то есть тем8 Заг. 851225Конфигурирование серверапрограммам, которым действительно этот файл нужен. Ограничить доступможно по-разному, например, разрешив одной программе только читатьфайл, а другой — записывать в него.LIDS может запретить загрузку или выгрузку модулей ядра, защитив вастаким образом от модулей-троянов.
С помощью LIDS также можно запретить перезагрузку системы.Встроенный детектор сканирования портов позволяет обнаружить большинство известных методов сканирования.О любых «незаконных» действиях по отношению к защищенным спомощью LIDS объектам будет сообщено по электронной почте администратору, что позволит ему незамедлительно отреагировать на попытку взлома.8.9.2, Установка LIDSДля работы LIDS необходимо ядро версии 2.2.13 или выше. Загрузитьверсию LIDS для вашего ядра можно по адресу http://www.lids.org/download.Сразу следует оговориться, что вам нужно будет настроить систему LIDSтак, чтобы она была незаметной для остальных пользователей вашей системыи, в то же время, препятствовала бы вторжению в вашу систему. Для этогонужно учесть работу всех программ, поскольку после установки LIDS некоторые программы могут не функционировать.
В связи с этим не устанавливайтеLIDS на рабочей станции или на своем домашнем компьютере: работу насистеме, защищенной с помощью LIDS, комфортной не назовешь. Идеальным узлом сети для установки LIDS является сервер или firewall, ограничивающий внутреннюю локальную сеть от Интернет. На сервере установленосравнительно малое количество программ (в основном — это серверы служб),поэтому вам не нужно учитывать многочисленные пользовательские программы.
В самом крайнем случае LIDS можно установить на рабочей станции,напрямую (то есть не через бастион) подключенной к Интернет. При большом количестве программ, установленных на рабочей станции, настройкаLIDS может оказаться намного сложнее, чем в случае с сервером.И еще одна рекомендация: не устанавливайте LIDS на компьютерахлокальной сети, если сеть защищена бастионом — извне доступ к локальным компьютерам все равно никто не получит, так как сеть защищенабастионом, а от сотрудников вашей организации, у которых есть загрузочнаядискета Linux и которые умеют нажимать на RESET, LIDS не спасет.Итак, если вы решили установить LIDS, приступим к ее установке. Дляначала убедитесь, что у вас есть копия исходных текстов ядра (например, ввиде rpm-пакетов). Если ее нет, скопируйте исходные тексты ядра в другойкаталог — на всякий случай. Это правило относится не только к LIDS, а ико всем программам, которые добавляют патчи или сами являются патчамик ядру Linux.
Распакуйте LIDS:tar x f z L I D S - x . x . x - k . k . k . t a r . g zВ номере версии LIDS я заменил номера версии буквами х, а номера версииядра — буквами k. Теперь перейдите в каталог /usr/src и введите команду:patch -pi / u s r / s r c / L I D S - x . x .
x / L I D S - x . x . x - k . k . k . p a t c h226Конфигурирование сервераЭтой командой вы добавите патч LIDS к вашему ядру (LJDS я распаковал вкаталог /usr/src). Затем нужно установить программу администрирования системы LIDS, а потом пересобрать ядро с поддержкой LIDS. С этой цельюперейдите в каталог /usr/src/LlDS-x.x.x/lidsadm-x.x.x и введите команды:makemake installЕсли в процессе выполнения команды make install вы увидите сообщение, что не найден файл lidsadm. l . gz (такое наблюдалось в версии LIDS0.9.8), просто введите команду:gzip lidsadm.1А затем снова — make install.Теперь займемся конфигурированием ядра.
Перейдите в каталог с исходными текстами ядра и запустите программу menuconfig (команда makemenuconfig). Вам нужно включить следующие опции:1. Prompt for development and/or incomplete code/drivers (Code maturity leveloptions).2. Sysctl support (General Setup).3. Linux Intrusion Detection System support (EXPERIMENTAL) (General Setup).При включении поддержки LIDS вы увидите список опций LIDS(табл.
8.9).Таблица 8.9Опции LIDSОпцияMaximum protectedobjects to manageMaximum ACL subjectsto manageMaximum ACL objectsto manageMaximum protectedproceedsHang up console whenraising security alertSecurity alert whenexcepting unprotectedprograms before sealingLIDSОписаниеМаксимальное количество защищаемых объектов. По умолчанию 1024.Пока не следует изменять данное значениеМаксимальное количество субъектов правил.
О субъектах и о правилахмы поговорим в следующем пункте, а пока оставьте данное значениебез изменения (1024)Максимальное количество объектов правилМаксимальное количество защищаемых процессов. По умолчанию 1024.Устанавливая максимальные значения, следует учитывать, что чем большемаксимальное значение, тем больше код ядраОтключает консоль злоумышленника при попытке доступа к защищенномуобъекту. Рекомендую включить данную опциюВключает вывод сообщения о нарушении безопасности при запуске незащищенных программ.
Включите данную опцию — это позволит вам обнаружитьнезащищенные программыВключает или отключает запуск незащищенных программ. Не включайте этуDo not execute unprotectedопцию до тех пор, пока не убедитесь, что все программы, которые запускаютсяprograms before sealingавтоматически при запуске системы, не защищены. На данном этапе покаLIDSлучше оставить эту опцию выключеннойСистема LIDS не будет записывать в протоколах повторяющиеся сообщенияTry not to flood logsоб одном и том же нарушении. Не включайте эту опциюВключает или выключает защиту LIDS, то есть это возможность включенияили выключения LIDS в процессе работы системы после ввода пароля администратора LIDS. Включите эту опцию. При включении этой опции вы увидитеAllow switching LIDSсписок подобных опций, например, опция Allow remote users to switch LIDSprotectionsprotections, разрешающая включать или выключать защиту LIDS удаленнымпользователям.
Не включайте эти опции! (особенно опцию Allow any programto switch LIDS protections)227Конфигурирование сервераПродолжение табл. 8.9ОпцияОписаниеPort Scanner Detectorin kernelЭта опция добавляет мощный сканер портов в ядро, определяющий практически все известные способы сканирования портов. Несмотря на увеличениеразмера ядра, включите эту опциюSend security alertsthrough networkЕсли эта опция включена, то при обнаружении нарушения на указанный адресэлектронной почты будет отправлено сообщение об этом.
Можно использоватькак локальный, так и удаленный сервер SMTP. Включите данную опциюLIDS debug (не во всехверсиях LIDS)Включает вывод отладочных сообщений. Включите эту опцию, если вы хотитесамостоятельно переписать исходные тексты системы LIDSТеперь убедитесь, что вы находитесь в каталоге / u s r / s r c / l i n u x ивведите команды:makemakemakemakemakecleandepinstallmodulesmodules_installПримечание.Вместо пяти вышеуказанных команд можно ввести одну команду:make clean dep install modules modules_installПараметры ( clean, dep ...) — это просто цели для сборки. Каждая цель определяеткакие-нибудь действия, например, modules собирает модули, a modulesjnstall устанавливает модули ядра.Теперь перейдем к настройке самой системы LIDS. Ни в коем случае неперезагружайте систему, чтобы убедиться, работает ли ядро или нет! Сначала нужно настроить LIDS, а только затем перезагрузить компьютер, чтобыубедиться, что все работает правильно.
При настройке LIDS будьте предельно внимательны, иначе последствия могут быть катастрофическими, особенно, если у вас нет загрузочной дискеты.8.9.3. Базовая настройкаПосле установки системы LIDS в каталоге /etc у вас появится подкаталог /lids. В нем вы обнаружите четыре файла: lids.cap, l i d s . n e t ,lids.pw, lids.conf.В первом из них хранятся текущие установки способностей (cap — отcapabilities — способности).
О том, что такое способности, мы поговоримнемного позже.Во втором файле (lids. net) находятся установки для отправки сообщений электронной почты. В третьем (lids.pw) — пароль в зашифрованномвиде. Система LIDS использует метод шифрования RipeMD-160. Парольможно изменить только с помощью программы lidsadm.