Установка инструментов для LIDS
Для обеспечения легкой настройки LIDS-а используются специальные инструменты, а именно команды "lidsadm" и "lidsconf" (в более старых версиях LIDS-а была только одна команда "lidsadm" которая выполняла функции администрирования и настройки, теперь же данные функции выполняют различные команды, что по-моему более удобнее). Для того чтобы проинсталлировать данные инструменты зайдите в папку с LIDS-ом и введите следующие команды:
# ./configure
# make
# make install
после чего вас попросят установить пароль на
LIDS для того, чтобы только вы смогли администрировать его, поэтому постарайтесь использовать пароль не меньше 6 символов и запомнить его.
Общая информация
Все конфигурационные файлы LIDS-а, находятся в папке /etc/lids. Обычно их
4:
lids.cap
Содержит текущие настройки способностей (capabilities). Может редактироваться вручную или с помощью команды
"lidsadm".
lids.conf
Файл содержит все настройки LIDS-а. И редактируется только командой
"lidsconf".
lids.pw
Содержит зашифрованный пароль. Пароль шифруется методом RipeMD-160 (в последующих версиях метод шифрования собираются сменить). Редактировать данный файл можно только непосредственно командой "lidsadm". В старых версиях LIDS-а пароль нельзя было поменять не
перекомпилив ядро (так как он вшивался в него), но теперь вы сможете менять пароль сколько захотите, чем чаще вы его меняете тем лучше.
lids.net
хранит настройки почтового клиента, который будет производить отправку логов и предупреждений. Редактируется с помощью текстового редактора.
Дальше мы детально будим разбирать каждый файл.
Настройка способностей
Способности (capabilities) - возможность программ совершать какие то определенные действия в системе, с выпуском новых версий LIDS-а их количество увеличивается (в версии которую мы рассматриваем их 31 штука). Вы можете сами выбрать какие именно действия разрешить, а какие запретить, редактируя соответствующий файл "/etc/lids/lids.cap". Формат данного файла таков :
# описание способности, на какие действия она влияет etc.
+|-:номер способности:название способности
+/- - включает/отключает определенную способность, с остальными параметрами вроде все ясно :).
Первоначально файл lids.cap содержит настройку способностей, которую предлагают вам разработчики LIDS-а, вы можете использовать ее или создать свою.
Ниже приведен мой вариант настройки способностей и описание к каждой из них (в качестве слова пользователи подразумеваются все пользователи вместе с root-ом) :
### 0: Разрешает/Запрещает способность программ изменять владельца и
### 0: группу владельца файла. Я разрешил использование данной способности, но вы можете
### 0: отключить ее.
#
+0:CAP_CHOWN
### 1: Разрешает/Запрещает способность программ запускаемых, в данном
### 1: случае под root'ом, не принимать во внимание режимы доступа к
### 1: файлам, то есть если данная способность включена и какой-то
### 1: пользователь выставил на файл права доступа только для чтения, то
### 1: никто даже рут не сможет произвести в него запись.
#
-1:CAP_DAC_OVERRIDE
### 2: Разрешает/Запрещает способность программ запускаемых кем угодно
### 2: принимать во внимание права доступа на каталоги/файлы при поиске
### 2: или чтении.
#
-2:CAP_DAC_READ_SEARCH
### 3: Разрешает/Запрещает пользователям, производить операции
### 3: над чужими файлами, или изменять их атрибуты.
#
-3:CAP_FOWNER
### 4: Разрешает/Запрещает пользователям производить установку SUID'ного или
### 4: SGID'ного бита на чужие файлы.
#
+4:CAP_FSETID
### 5: Разрешает/Запрещает пользователям прибивать чужие процессы.
#
+5:CAP_KILL
### 6: Разрешает/Запрещает способность программ сменять пользователя, под
### 6: которой она работает.
#
+6:CAP_SETGID
### 7: Разрешает/Запрещает способность программ сменять группу под
### 7: которой они работают.
#
+7:CAP_SETUID
### 8: Разрешает/Запрещает способность передавать каким либо программам способности
### 8: (при создании правил вы поймете что это означает, а пока данную способность лучше
### 8: разрешить).
#
+8:CAP_SETPCAP
### 9: Разрешает/Запрещает производить изменения атрибутов
### 9: S_IMMUTABLE (chattr -i) и S_APPEND (chattr -a) над файлами. Есть
### 9: что-то схожее со способностью CAP_FOWNER.
#
-9:CAP_LINUX_IMMUTABLE
### 10: Разрешает/Запрещает способность программ привязываться к привилегированным
### 10: портам, то есть портам номера которых < 1024.
#
+10:CAP_NET_BIND_SERVICE
### 11: Разрешает/Запрещает способность программ производить рассылку
### 11: (широко/мульти)вещательных пакетов.
#
-11:CAP_NET_BROADCAST
### 12: Разрешает/Запрещает пользователям производить сетевые настройки, такие как:
### 12: -конфигурация сетевых интерфейсов
### 12: -конфигурация правил файрволла,
### 12: -установка отладочных опций для сокетов
### 12: -модификация таблиц роутинга
### 12: -изменять значение TOS (type of service) поля в заголовках айпи пакетов
### 12: и т.д.
#
-12:CAP_NET_ADMIN
### 13: Разрешает/Запрещает способность программы использовать сокет соединения.
#
-13:CAP_NET_RAW
### 14: Разрешает/Запрещает способность пользовательских процессов блокировать общедоступные
### 14: сегменты разделяемой памяти.
#
+14:CAP_IPC_LOCK
### 15: Разрешает/Запрещает способность доступа пользовательских программ к ресурсам
### 15: межпроцессорного взаимодействия чужих процессов.
#
+15:CAP_IPC_OWNER
### 16: Разрешает/Запрещает способность загружать/выгружать модули.
#
-16:CAP_SYS_MODULE
### 17: Разрешает/Запрещает доступ к таким устройствам: ioperm/iopl, /dev/port, /dev/mem, /dev/kmem, ### 17: /dev/[sh]d*
#
-17:CAP_SYS_RAWIO
### 18: Разрешает/Запрещает использование chroot() команды.
#
-18:CAP_SYS_CHROOT
### 19: Разрешает/Запрещает способность процессов родителей контролировать процессы
### 19: потомков, сюда относят функции fork, exec и т.д.
#
-19:CAP_SYS_PTRACE
### 20: Разрешает/Запрещает способность конфигурировать учет процессов.
#
-20:CAP_SYS_PACCT
### 21: Разрешает/Запрещает пользователям/программам производить действия
### 21: связанные с системным администрированием, а именно:
### 21: - конфигурацию и доступ к /dev/random устройству
### 21: - созданию новых устройств с помощью mknod
### 21: - конфигурацию дисковых квот
### 21: - конфигурацию syslog-а ядра (демон klogd).
### 21: - устанавливать имя домена/хоста
### 21: - использование bdflush()
### 21: - производить монтирование/размонтирование чего либо, включая
### 21: создание новых smb соединений
### 21: и т.д.
#
-21:CAP_SYS_ADMIN
### 22: Разрешает/Запрещает производить перезагрузку системы.
#
+22:CAP_SYS_BOOT
### 23: - Разрешает/Запрещает пользователям изменять приоритет чужих процессов.
#
-23:CAP_SYS_NICE
### 24: Разрешает/Запрещает изменять лимиты на системные ресурсы, а именно:
### 24: - на квоты
### 24: - свободное место на файловой системе ext2
### 24: - максимальное количество консолей
### 24: и т.д.
#
-24:CAP_SYS_RESOURCE
### 25: Разрешает/Запрещает производить какие либо манипуляции с системным временем.
#
-25:CAP_SYS_TIME
### 26: Разрешает/Запрещает производить конфигурацию tty устройств (терминалов).
#
-26:CAP_SYS_TTY_CONFIG
### 27: Разрешает/Запрещает способность использования mknod(), тоесть создавать
### 27: новые устройства.
#
-27:CAP_MKNOD
### 28: Разрешает/Запрещает способность брать/создавать файлы на совместное использование.
###
+28:CAP_LEASE
### 29: Разрешает/Запрещает способность процессов делаться невидимыми.
#
-29:CAP_HIDDEN
### 30: Разрешает/Запрещает способность убивать дочерние процессы,
### 30: демона init (он обычно производит загрузку всех остальных демонов).
#
+30:CAP_INIT_KILL
После того как вы настроили способности вашей системы, вы сможете перейти к следующему этапу настройки LIDS-а.
Настройка почтового клиента
Если вы при настройке ядра включили опцию "Send security alerts through network", то тогда вы должны
будете настроить почтовый клиент который будет производить отправку логов/сообщений/ошибок LIDS-a в соответствии с вашими нуждами. Для настройки почтового клиента вам всего лишь нужно будет отредактировать файл "lids.net". Ниже приведен пример данного файла с пояснениями:
# Включает/выключает отправку логов/сообщений/ошибок LIDS-a
# 1 - включена
# 0 - выключена
MAIL_SWITCH= 1
# Указывает на SMTP сервер и порт, через который будут отправляться письма
MAIL_RELAY=127.0.0.1:25
# Указывает на исходящий айпи/домен, с которого будут отсылаться письма
MAIL_SOURCE=localhost.localdomain
# Указывает на е-мэйл с которого будет приходить письма
MAIL_FROM= LIDS_ALERT@localhost.localdomain
# Указывает е-мэйл на который будет приходить почта
MAIL_TO= root@localhost.localdomain
# Тема приходящих писем
MAIL_SUBJECT= LIDS ALert
Вот и все! Трудностей по моему возникнуть не должно.
(продолжение следует)