Один сервер Ubuntu размещает 3 приложения в разных доменах.
Каждое приложение имеет своих разработчиков.
Разработчики приложений принадлежат к группе Linux "sftp".
chroot
разрешает доступ по паролю sftp каждому разработчику приложения.
/home/app1/prod
/home/app2/prod
/home/app3/prod
В sshd_config
Match Group sftp
PasswordAuthentication yes
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
Мы обеспокоены уязвимостью в одном приложении, вызывающей проблемы в двух других приложениях.
Должны ли мы использовать контейнер lxc вместо chroot? Почему? Будет ли изменение в контейнерах lxc прозрачным для разработчиков приложений?
chroot
нужно сделать, это изменить корневой каталог процесса. Он не предлагает никакой изоляции или чего-либо еще.Ответы:
Контейнеры Linux (LXC) - это метод виртуализации на уровне операционной системы для запуска нескольких установок (контейнеров) изолированных серверов на одном управляющем хосте. LXC не предоставляет виртуальную машину, а предоставляет виртуальную среду, которая имеет свой собственный процесс и сетевое пространство. Это похоже на chroot, но предлагает гораздо больше изоляции.
Контейнеры Linux имеют несколько особенностей / преимуществ:
Преимущества:
Лучшая изоляция по сравнению с chroot (chroot jail). Низкие накладные расходы. LXC использует минимальные ресурсы с точки зрения оперативной памяти и места на жестком диске без дополнительных затрат на установку гостевой ОС на виртуальной машине (VMWare / VirtualBox / KVM).
Приложения и сервисы (серверы) работают на родной скорости.
В libvirt есть поддержка Linux-контейнеров.
Контейнеры Linux хорошо работают с btrfs.
Но есть и обратная сторона:
Контейнеры Linux запускают процессы Linux на ядре Linux. Это означает, что вы можете запускать Linux (контейнер Fedora на хосте Ubuntu), но не другие операционные системы (не BSD / OSX / Windows).
Нет графических (GUI) интерфейсов для настройки или управления контейнерами.
Существует мало документации о том, как установить и настроить контейнер. Настройка контейнера требует скромных технических знаний и навыков (и большого запаса терпения).
источник