Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #81, СЕНТЯБРЬ 2005 г.

Фройндшафт с чертенком

Валерия Комиссарова

Хакер, номер #081, стр. 081-108-3


Ktrace включает механизм трейсинга и логирования процессов ядром. Выходной файл логирования - ktrace.out (реально нужен только хакерам и программистам).

А теперь поговорим о параметрах, актуальных для сервера:

options ICMP_BANDLIM

options TCP_DROP_SYNFIN

options RANDOM_IP_ID

options TCP_RESTRICT_RST

ICMP_BANDLIM позволяет ограничить число ICMP-ответов. Второй параметр предписывает отбрасывать пакеты с недопустимыми комбинациями флагов (в принципе, на сервере это делать не рекомендуется, так как теряется возможность использования расширения RFC 1644, а для десктопа это не критично); третий - генерируем случайное значение в поле ID IP-пакета вместо того, чтобы каждый раз увеличивать его на единицу (препятствует idle-сканированию); четвертый - блокируем пакеты c установленным флагом RST (защищает от некоторых типов DOS-атак). С помощью sysctl можно произвести более тонкую настройку сетевой защиты, но об этом позднее. Будь внимателен - во FeeBSD 5-STABLE и выше все эти опции вынесены в соответствующие sysctl-переменные, и в виде опций ядра собираться уже не могут.

Далее идут несколько директив, связанных с компиляцией многопроцессорного ядра (также для серверов), имя главной из которых - SMP.

Оставшуюся часть файла занимает обширный список девайсов. Принцип его редактирования прост: все строки, относящиеся к ненужным тебе устройствам, могут быть безбоязненно закомментированы/удалены. Однако есть некоторые исключения: например, нельзя удалять строку "device isa", даже если у тебя на компьютере нет ни одного ISA-слота, а также удалять поддержку SCSI, если есть IDE CDROM или USB-флешка.

options DDB

options XSERVER

device bpf

Первая опция - это включение ядерного отладчика (не нужен), вторая включает X-сервер на vt-консоли (vt0) (сомнительно), а третья - псевдоустройство берклеевского пакетного фильтра (необходим на серверах для работы пакетных фильтров, IDS, или в случае, когда ты сам активно мониторишь/сниффаешь сеть).

Далее приведу несколько интересных опций из конфигурационного файла LINT.

options "CHILD_MAX=40"

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

options "OPEN_MAX=64"

Максимальное количество файлов, которые могут быть открыты процессом. Лучше сразу увеличить значение параметра до 128, даже на десктопе.

options FAILSAFE

Данная опция повышает надёжность системы, так как запускает дополнительные проверки в наиболее опасных местах (что, к сожалению, сказывается на быстродействии).

options INCLUDE_CONFIG_FILE

Указанная опция полезна, если ты вдруг потеряешь конфиг. Она включает текущий файл конфигурации ядра в файл kernel, откуда ты сможешь его потом при необходимости выцепить. Довольно сомнительная опция, которая к тому же занимает память.

Следующая строчка сообщает, что ядро носит имя kernel, загрузка будет проходить с ad0, дампы будут скидываться на это же устройство. Если ты владелец SCSI-девайса, то поменяй на da0.

Назад на стр. 081-108-2  Содержание  Вперед на стр. 081-108-4