Есть DNS-сервер Bind9 на Debian 9. Нормально работающий. Надо его посадить в ограниченное chroot-окружение.
Подразумевается, что бинд уже установлен и настроен.
Подразумевается, что бинд уже установлен и настроен.
Основой стала статья Bind-Chroot-Howto (Debian) с некоторыми изменениями.
Прежде всего DNS-сервис надо остановить
/etc/init.d/bind9 stop
В файле /etc/default/bind9 в строку OPTIONS= добавить параметр "-t", который указывает в какой папке будет находиться.
OPTIONS="-u bind -4 -t /var/bind"
В данном случает bind будем сажать в папку /var/bind
Далее создадим нужные папки.
/var/bind/etc
/var/bind/dev
/var/bind/var/cache/bind
/var/bind/run - на моей системе оригинальная папка в /run а не в /var/run
/var/bind/var/logИ сделаем ссылку
ln -s /var/bind/run /var/bind/var/run
Причину такого трюка я поясню в отдельной статье Ошибка couldn't mkdir '//run': Permission denied.
Далее перенесем настройки bind в ограниченное окружение и кинем ссылку на старое место.
Далее перенесем настройки bind в ограниченное окружение и кинем ссылку на старое место.
mv /etc/bind /var/bind/etc
ln -s /var/bind/etc/bind /etc/bind
Создадим устройства
mknod /var/bind/dev/null c 1 3
mknod /var/bind/dev/random c 1 8
mknod /var/bind/dev/zero c 1 5
И выставить на них права
cd /var/bind/dev
chmod 0666 *
Выставить права на папки
chown -R bind:bind /var/bind/var/*
chown -R bind:bind /var/bind/etc/bind
Запустить бинд
/etc/init.d/bind9 start
Проверяем работу по логам и командой dig
Да спасибо помогло , только теперь опять танцы )), не видит /etc/bind/named.conf хотя он есть ....
ОтветитьУдалить