Фройндшафт с чертенком Валерия Комиссарова Хакер, номер #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. |