Делаем FreeBSD безопасной Сергей Можайский aka techniX Xakep, номер #069, стр. 069-116-2 kern_securelevel_enable="YES" kern_securelevel="2" Текущий уровень защиты можно посмотреть командой $ sysctl kern.securelevel А повысить его без перезагрузки - # sysctl -w kern.securelevel=2 Отмечу, что при уровне защиты 1 или выше пересобрать userland и ядро тебе не удастся, поскольку на важных системных файлах стоят модификационные флаги. Меняем алгоритм шифрования Заменим алгоритм шифрования паролей с md5 на еще более надежный Blowfish. Делаем исправления в файле /etc/login.conf в секции default: // заменяем алгоритм шифрования на Blowfish :passwd_format=blf:\ // устанавливаем период устаревания паролей :passwordtime=52d:\ // предупреждаем о том, что пароли должны содержать разные символы :mixpasswordcase=true:\ // задаем минимальную длину пароля :minpasswordlen=9:\ Теперь обновляем базу (login.conf.db): # cap_mkdb /etc/login.conf Проверим, получилось ли у нас. Посмотри содержимое /etc/master.passwd. Если зашифрованный пароль теперь начинается с "$2", все ОК. Осталось сделать так, чтобы пароли новых пользователей шифровались алгоритмом Blowfish. Редактируем файл /etc/auth.conf: crypt_default=blf Шифруем файловую систему Файлы, которые могут представлять интерес для взломщиков, надежнее всего зашифровать. Нет, не думай, что я опять буду рассказывать про PGP. Для создания зашифрованных дисков можно обойтись стандартными средствами FreeBSD - GEOM и BDE. Что такое GEOM? Это новая система работы с дисками, появившаяся в 5-й ветке FreeBSD. Благодаря своей модульной структуре, она позволяет делать с файловой системой все что угодно. Нас интересует один из ее модулей - BDE (block device encryption) - поддержка шифрования файловой системы. Для начала добавим в ядро опцию options GEOM_BDE Создадим новый каталог, в котором будут лежать конфиги GBDE: # mkdir /etc/gbde Инициализируем зашифрованный диск: # gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c Откроется редактор, в котором можно указать различные настройки. Для файловых систем UFS1 и UFS2, используемых в FreeBSD, следует указать значение переменной sector_size равным 2048. Не забудь выбрать хороший пароль для доступа к диску. Подключаем диск: # gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c Система попросит ввести ключевую фразу для доступа к зашифрованному диску. Теперь содержимое этого диска доступно при обращении к файлу устройства /dev/ad4s1c.bde. Создадим на нем новую файловую систему и монтируем его: # newfs -U -O2 /dev/ad4s1c.bde # mount /dev/ad4s1c.bde /mnt Теперь можно работать с содержимым зашифрованного диска. Обрати внимание, что скорость файловых операций с зашифрованными разделами почти в 4 раза ниже, чем при работе с обычными дисками. Если ты пользуешься утилитой sysinstall, имей в виду, что она несовместима с зашифрованными разделами и их нужно отключать перед запуском этой утилиты. Также заметь, что зашифрованные диски невозможно подключать автоматически из /etc/fstab, потому не стоит применять шифрование к системным разделам (/, /usr, /var). |