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

Под защитой песочного демона

Евгений Зобнин ака j1m

Хакер, номер #093, стр. 093-118-5


# открываем доступ к ssh-серверу

$IT -A INPUT -i eth1 -p tcp --destination-port 22 -j ACCEPT

[подводя итог]

Каждый из приведенных в статье способов защиты имеет свои достоинства, но не один из них не лишен недостатков. Пример с помещением демона sshd прямо в chroot-окружение блестяще работает до тех пор, пока не потребуется получить доступ к корневой машине. Chrootssh на отлично справляется со своей задачей и прост в настройке, но требует пересборки пакета OpenSSH. Скрипт от Wolfgang Fuschlberger прост в использовании, но создан с использованием садомазохистских приемов. Модуль pam_chroot обладает особым изяществом, требуя, чтобы ssh-сервер всегда работал с правами администратора. По какому пути пойти, решай сам, я свою задачу выполнил, расписав все известные мне подходы.

[Linux must die?]

Какой еще chroot? Почему в Linux нет настоящей виртуализации? Думаю, эти вопросы интересуют многих. Действительно, у поклонников FreeBSD есть jail, любителям операционной системы, названой в честь фантастико-философского произведения Станислава Лема, досталась еще более продвинутая технология zones, а линуксоидам приходится довольствоваться примитивной песочницей. К счастью, этот недостаток можно компенсировать за счет сторонних разработок. Например, аналог jail присутствует в RSBAC (www.rsbac.org), сходную функциональность можно получить, наложив на ядро специальный патч (kerneltrap.org/node/view/3823), реализованный с использованием технологии LSM (Linux Security Modules). Также не стоит забывать о том, что ядро Linux уже давно научилось работать поверх виртуальной машины XEN (о ней читай в моей статье "Искусство виртуализации"), а это открывает поистине безграничные возможности для виртуализации.

INFO

Хорошей идеей будет вообще отказаться от копирования библиотек и слинковать программы статически.

Чтобы помещенный в chroot-окружение sshd мог беспрепятственно вести логи, демон syslog должен быть запущен с опцией '-a /usr/chroot/ssh/dev/log'.

Назад на стр. 093-118-4  Содержание