Выбор ответа Middle Безопасность контейнеров обновлено

Read-only файловая система

Вопрос

Зачем запускать контейнер с --read-only и что нужно сделать, чтобы приложение работало?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Чтобы атакующий не изменил файлы; каталоги для записи монтировать как tmpfs. Корневая ФС только для чтения не даёт закрепиться в контейнере: подменить бинарник, дописать скрипт, изменить конфиг.

Варианты ответа

  1. Чтобы атакующий не изменил файлы; каталоги для записи монтировать как tmpfsправильный ответ
  2. Чтобы ускорить чтение: overlayfs без слоя записи отдаёт файлы из кеша страниц
  3. Для экономии места на диске; приложение само переключится на запись в память
  4. Это обязательный режим для Kubernetes, без него под не пройдёт admission-проверку

Разбор

Корневая ФС только для чтения не даёт закрепиться в контейнере: подменить бинарник, дописать скрипт, изменить конфиг. Приложениям обычно нужно писать во временный каталог, его монтируют --tmpfs /tmp. На скорость и место это заметно не влияет, а в Kubernetes это опция readOnlyRootFilesystem, не обязательная.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.