Как стать автором
Обновить

Комментарии 10

Тема чрута не расскрыта, имхо.

Присоединяюсь. В чем профит от запуска bind в chroot?

А не проще в docker с network=host запустить?
Зачем очередная статья по настройке бинда, пол сотни других неверны?
Лично я повёлся на «chroot». Но тут мало того, что про чрут ничего не сказано, так еще и по описанию пакета — это вот прямо старый махровый chroot. А на дворе 2019 год, namespaces шагают по миру, systemd стал стандартом де-факто (и не важно, как вы к этому относитесь) и позволяет чрезвычайно легким движением конфига зарезать процессу любые части тела в любых позах. Я ждал в статье и про это.
Ну да. А если не отключить selinux, то у bind'a и так не будет доступа в неположенные места. Но зачем использовать современные методы, когда можно вернуться в 2005 год?
Увидев что это ПЕРЕВОД, я успокоился.
… Эта статья немного устарела, так как в RHEL 7 теперь не нужно копировать файлы конфигурации bind в chroot.…
Может кому-то и поможет.
Если у вас на курсах идёт обучение таким-же древностям, то мне жалко тех, кто за это платит деньги. Мир не стоит на месте — вирутализация, контейнеры, RBAC, selinux. Да хоть тотже описанный chroot, который в некоторых дистрибутивах вообще включается одной строчкой конфига. Ну и не знаю как там с поттеринговским systemd, но не поверю, что с ним надо проходить такойже гемор, что у вас описан.
Господа, ваши замечания уместны! Но, пожалуйста, изначально нужно понимать и учитывать, что данная статья содержит описание настроек конкретно с использованием системной команды croot, как демонстрацию эксплуатации одного их старейших механизмов изоляции (безопасности), присутствующих в ядре Linux. Задача была показать «классический» вариант (концепт изоляции, придуманный в начале эпохи Unix, а именно в 1979 году), создания песочницы с применением chroot, кстати на базе которого была создана виртуализация Jail в операционных системах FreeBSD, которая используется и до сих пор! И DNS-сервер BIND приведен в качестве одного яркого примера ключевого системного демона, отвечающего за сетевое взаимодействие. Безусловно, есть куча более современных решений, которые эффективнее чем старичок chroot, да тот же namespaces, docker с машиной «network=host» и тому подобное. Но это уже другая история.

Если говорить о системе инициализации systemd, к слову вкупе с cgroups, то этот стандарт стал де-факто именно в 7 версии RHEL, на примере которой мы и приводили пример. Можно было бы заюзать на всю катушку cgroups и это было бы элегантнее, тут не поспоришь, но наша задача была показать старейший нативный механизм изоляции, а именно chroot, настройку которого мы и привели к тексте. И как раз на нашем курсе в отдельных главах мы обучаем «современным инструментам», как вы и описали, виртуализация, контейнеры, RBAC, selinux.
Картинка — зачет :)
Для меня очень близкая ситуация
Зарегистрируйтесь на Хабре , чтобы оставить комментарий