Традиционная философия Unix всегда заключалась в KISS и запуске/предоставлении минимума сервисов.
Некоторые службы также должны быть установлены явно, и даже некоторые из них привязаны к локальному хосту, и вы должны включить их, чтобы они были видны в вашей локальной сети/в Интернете. (MySQL, MongoDB, snmpd, ntpd, xorg... ). Это более разумный подход, чем включение брандмауэра по умолчанию.
Вам нужна только сложность, которую брандмауэр приносит с определенной точки, и эта потребность может быть уменьшена, если вы находитесь за корпоративным маршрутизатором или домашним устройством nating, поэтому кажется разумным оставить это решение на усмотрение пользователя. Брандмауэр, как и многие другие программы безопасности, также может создать ложное ощущение безопасности, если им не управлять должным образом.
Debian всегда ориентировался на более технически ориентированных людей, которые знают, что такое iptables; есть также несколько хорошо известных оболочек, интерфейсов текстового или графического режима, которые можно легко установить.
Вдобавок ко всему, вопрос о том, поставляется ли он с большим или меньшим количеством установленного программного обеспечения, является предметом обсуждения. Для давнего ветерана по умолчанию установлено слишком много программного обеспечения и служб, особенно в режиме сервера.
Оказывается, скрипт /usr/local/sbin/etcupdate
не работал из-за того, что он защищал некоторые файлы от удаления, устанавливая системный неизменяемый флаг chflags schg
, см. строку 213 этого скрипта:
chflags -R noschg $1 >&3 2>&1 || return 1
К сожалению, дальше снять этот флаг не удалось, и в строках 265 -266 были ошибки сOperation not permitted
:
chflags -R noschg $1 >&3 2>&1
rm -rf $1 >&3 2>&1
Это связано с тем, что хотя в тюрьме была включена необходимая настройка allow_chflags
, ее securelevel
было установлено по умолчанию 2
, что позволяет установить schg
, но не разрешить его не устанавливать.
Чтобы исправить это, мне нужно было временно изменить securelevel
на 0
в тюрьме, убедившись, что allow_chflags
включено, после чего iocage upgrade
заработало. После обновления я изменил securelevel
на более безопасное значение по умолчанию 2
.
Я размещаю это здесь на случай, если это поможет кому-то еще.