Docker для боевых проектов

MiksIr

miksir@home:~$
этот новенький понятия не имеет о безопасности и работе доккера
работают от рута, ибо они ограничены только контейнером, как они могут влиять на безопасность системы
Пфф...

Гонять приложение от рута в контейнерах крайне не желательно, атаки на выход из контейнера были и будут... да в и вобщем не нужно (даже для вебсервера, всякие приблуды, которые дают не руту полезные фишки типа бинда на 80-й порт появились еще до контейнеров). Но если все же контейнеры от рута - есть "квикхак"
As of Docker 1.10 User Namespaces are supported directly by the docker daemon. This feature allows for the root user in a container to be mapped to a non uid-0 user outside the container, which can help to mitigate the risks of container breakout. This facility is available but not enabled by default.
Т.е. рут контейнера - на самом деле не рут в хост системе.

И да, памяти контенеры докера будут потреблять ровно столько, сколько lxc соданного проксмоксом ;)
 

fixxxer

К.О.
Партнер клуба
Контейнер без отдельного user namespace - это вообще не контейнер.
Не вижу ничего плохого в запуске того же php-fpm рутом, он сам дропнет в соответствии с конфигурацией. Другое дело, что смысла в этом как-то не особо, все равно больше одного пула там быть не должно.
 

Redjik

Джедай-мастер
рут контейнера и так не рут в системе =)))
вот тебе и пфффф
 

MiksIr

miksir@home:~$
он сам дропнет в соответствии с конфигурацией
Да не, я о случаях, когда почему-то аппликейшн софт запускают от рута и не дропают. Понятно, что тот софт, который безопасно и проверенно запускают на хосте можно запускать и в контейнере от рута
Контейнер без отдельного user namespace - это вообще не контейнер.
Юзерспейс юзерспейсом, а рут мапится в рута. В lxc есть отдельное понятие непривилегированных контейнеров, когда рут мапится не в рута. В докере я привел цитату - тоже написано, что эта фича дефолтом отключена

вот тебе и пфффф
 

scorpion-ds

Новичок
Докер не нужно запускать от рута... но про это ты и не писал.
Внутри контейнера приложения чаще всего и правда работают от рута, ибо они ограничены только контейнером, как они могут влиять на безопасность системы?
Да, речь шла о работе внутри контейнера, от кого запускается, я вот не знаю ...

Гонять приложение от рута в контейнерах крайне не желательно, атаки на выход из контейнера были и будут...
Как раз и грозился положить контейнер из-за того, что он под рутом работает.

Понабрали сеньоров по объявлению...
В стартап трудно найти, очень маленькая компания пока, и ЗП соответственно не высокая.

Вообще, я даже тему создавал на счет званий ...
 

MiksIr

miksir@home:~$
Как раз и грозился положить контейнер из-за того, что он под рутом работает.
Контейнер не может работать "под чем-то". Контейнер - это набор условий и ограничений ядра.

Может работать от рута софт внутри контейнера. Но это проблема не докера, с проксмоксом такая же проблема будет.

Ну и демон докера работает от рута, т.е. нужно внимательно смотреть, не появились ли какие-то эксплойты к нему.
 

fixxxer

К.О.
Партнер клуба
Так и речь о цене remote exec уязвимости.

С lxc, кстати, все ровно так же, изоляция рута до сих пор неполноценная (в зависимости от версии ядра - или более или менее), все эти дырочки прикрывают через selinux-ы и прочие apparmor-ы, но это все как-то хрупко, а так - тот же подход с privileged/unprivileged containers что и в докере. Вообще с этой точки зрения противопоставлять docker/lxc - идиотизм, оба используют одни и теже ядерные контейнеры/неймспейсы/cgroups. Единственное, где эта проблема для контейнеров полностью решена (костыльными патчами на ядро) - это древний openvz :)
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
Это как-то из пушки по воробьям. Unprivileged containers вполне достаточно.
 

Breeze

goshogun
Команда форума
Партнер клуба
Не совсем :) Там раньше опенвз был, в нём полноценные виртуалки были, каждая со своим хламом внутри.
Как только проксмокс перешёл на lxc, так сразу перевёл на kvm ибо lxc пока доверия нет в таком ключе.

Почему ТСу и было сказано, что проксмокс немного про другое, нежели докер.
Хотя я не исключаю того, что их новичок считает, что полная виртуалка лучше для кучи однотипных задач типа бэкенда, нежели докер. Ибо клонировать готовый образ-шаблон минутное дело.
Такой подход тоже имеет право на жизнь, если аргументированно, а не простое "хочу" и "тут у вас насрано" :)
 

fixxxer

К.О.
Партнер клуба
Использовать докер вместо виртуалки, засунув в единственный докер-образ полный дистрибутив и nginx+php+mysql - это идиотизм полнейший.
 

Redjik

Джедай-мастер
Использовать докер вместо виртуалки, засунув в единственный докер-образ полный дистрибутив и nginx+php+mysql - это идиотизм полнейший.
когда как... слишком много маленьких грабелек, особенно если у тебя апп скейлится на сотни серверов (я про docker-compose)...
пока даже в планах нет =(
хотя я лично постоянно закидываю удочку =)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
запускать контейнеры на сотне серверов через compose - тоже идиотизм

@scorpion-ds, забей и получай удовольствие, как я :)
 
Сверху