Я управляю несколькими DNS-серверами BIND (на RHEL / Centos) для авторитетного поиска (прямого и обратного), а также выделенными службами только для кэширования. Я всегда просто использовал последнюю стабильную версию BIND в диспетчере пакетов, но задавался вопросом, должен ли я компилировать последнюю стабильную версию, чтобы «делать это правильно». Что делают другие? Плюсы и минусы компиляции?
Как правило, я использую последнюю упакованную версию поставщика. В случае RH (и Centos), хотя их основной номер выпуска может не измениться в пакете, они обычно переносят ключ и критические исправления из более поздних выпусков.
Чтобы упростить мне задачу, в случае, если я действительно хочу перейти к более позднему выпуску пакета, нужно загрузить исходный пакет поставщика, получить новую версию программного обеспечения для компиляции, исправить пакет спецификаций для пакет для размещения новой версии. После того, как пакет (ы) сгенерирован в результате запуска rpmbuild, я могу выполнить rpm --install. Одна хорошая вещь в том, чтобы сделать это таким образом, заключается в том, что последние точки отдыха и параметры конфигурации сохраняются без особых хлопот.
Я использую версию пакетов, ОСОБЕННО для интернет-приложений. Если вы используете крупный дистрибутив, такой как Centos, Red Hat, Ubuntu или Debian, вы получите все последние исправления безопасности, даже если это не последняя основная версия. Безопасность и стабильность намного важнее, чем наличие самых последних функций, особенно с чем-то вроде BIND.
Я собираюсь пойти против течения на этом. Для чего-то, что связано с Интернетом, я предпочитаю использовать последнюю стабильную версию, поэтому я собираю из исходников. Я не знаю о Red Hat, но пакеты CentOS, как правило, немного отстают от последних версий, а это значит, что вы вполне можете устанавливать что-то, что уже имеет известные проблемы с безопасностью. Я просто нервничаю из-за таких вещей.
Используйте упакованные версии для чего угодно. Если вам нужно отклониться, вам нужно подписаться на списки рассылки и обратить внимание на любые уязвимости программного обеспечения, чтобы вы знали, когда вам нужно исправить.