Запуск вещей (веб-сервисов) в изолированной среде

1

Прежде всего, я прочитал все вопросы о chroot, которые я мог найти в сети и в Superuser. По сути, все они охватывают запуск 32-битного приложения на 64-битном хосте и так далее.

Я хочу иметь изолированную систему в полном chroot (запуск Lighttpd, MySQL, SSH и т. Д. Оттуда). (Из соображений безопасности я должен изолировать dev от живого.) Поэтому я установил среду chroot, смонтировал все необходимые вещи и зашил в chroot. Все прошло нормально. Отредактировано /etc/ssh/sshd_configдля использования порта 22222 вместо 22. Используется service ssh startтогда. Там написано, что служба запущена, но если я попробую это: ssh -p 22222 localhostя получаю «Отказ в соединении». Система chrooted является очень минимальной, поэтому нет брандмауэра, hosts.allow / deny или чего-либо еще.

ЛЮБАЯ идея приветствуется.

PS. Среда chroot будет областью разработки, как я уже упоминал. Я думал, что chroot - самый простой способ, но если вы скажете, что KVM лучше или что-то еще, я могу пойти на это. Машина легко может работать даже 10 виртуальных машин.

Использованные инструкции:
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=6
https://help.ubuntu.com/community/BasicChroot
http: //www.gentoo .org / proj / en / base / amd64 / howtos / index.xml? part = 1 & chap = 2
http://ubuntuforums.org/showthread.php?t=248724

Shiki
источник

Ответы:

0

Запуск среды разработки в chroot на реальной среде - ужасная идея. Он не отвечает вашим требованиям по изоляции среды разработки от реальной среды вообще. Все, что нужно, - это маленькая ошибка, чтобы убить работающий серверный процесс вместо сервера разработки или заставить сервер разработки прослушивать порт 22 или 80.

Вы можете запустить среду разработки как chroot на компьютере разработчика, но это сложнее, чем настройка виртуальной машины. Единственная причина, по которой я могу не использовать виртуальную машину, заключается в том, что ваше оборудование слишком старое, чтобы комфортно работать с виртуальной машиной, что, как вы говорите, не так. Виртуальная машина предоставляет вам автономную сетевую среду (так что вы можете тестировать сервисы на их реальных портах, с их настоящим межсетевым экраном), автономную среду процессов (чтобы вы знали, сколько памяти вам действительно нужно, и сколько ЦП вам действительно нужно) и т. Д. ,

В идеале, если это позволяет производительность, как виртуальная среда, так и среда разработки будут работать внутри виртуальных машин с использованием одной технологии виртуальных машин. Это сделает развертывание настолько рискованным, насколько это возможно.

жилль
источник
Живая среда работает весь день, и у нас нет шансов установить на нее виртуальные машины. Насколько мы можем это сделать, мы хотели бы использовать chroot ... не могли бы вы помочь с проблемой? Пожалуйста ..
Шики
@Shiki: Настройка chroot сложнее и рискованнее, чем виртуальная машина. Как вы говорите в своем вопросе, я говорю «KVM лучше» (за исключением того, что я не высказываю мнение о KVM против какой-либо другой технологии VM). Поместить вашу живую среду в виртуальную машину - это просто неприятно, важно поместить среду разработки в отдельный контекст сети и процесса, то есть виртуальную машину (или, разумеется, другую физическую машину). Я не знаю, почему ваш chroot sshdне работает так, как вы хотите; и это для меня уже аргумент против chroot.
Жиль
Материал до сих пор. Я использовал VMWare, поскольку XEN и KVM нуждались в изменениях сетевых настроек, которые мне не нужны. Это серьезно. Я попытаюсь установить KVM или что-то еще, потому что VMWare - худший вариант, так как он стал бесплатным (серверный продукт .. это так).
Шики
@Shiki: Я слышал несколько независимых мнений о том, что VirtualBox проще в использовании, чем VMWare. Я использовал VirtualBox, и настройка простой сети (один интерфейс NAT плюс один интерфейс только для хоста) была простой. У меня нет опыта общения на KVM.
Жиль
Хм .. VirtualBox .. неплохая идея. Я попробую это. Спасибо!
Шики