вторник, 6 ноября 2018 г.

Сажаем bind в камеру.

  Есть 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 в ограниченное окружение и кинем ссылку на старое место.
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