Я планирую арендовать и настроить vServer с Debian xor CentOS. Я знаю от своего хоста, что vServers виртуализированы с помощью linux-vserver.
Предположим, что запущены lighthttpd и какой-то агент передачи почты, и мы должны гарантировать, что если lighthttpd будет взломан, сохраненные электронные письма не будут легко читаться.
Для меня это кажется невозможным, но может я что-то пропустил или хотя бы вы, ребята, можете подтвердить невозможность ... :)
Я думаю в основном есть три очевидные подходы.
В первый это зашифровать все данные. Тем не менее, серверу придется где-то хранить ключ, чтобы злоумышленник (w | c) мог это выяснить.
Во-вторых можно было изолировать критически важные службы, такие как lighthttpd. Поскольку мне не разрешено выполнять mknod или перемонтировать / dev на linux-vserver, невозможно настроить вложенный vServer с lxc или подобными методами.
В последний подход заключался бы в использовании chroot, но я не уверен, что это обеспечит достаточную безопасность. Далее я еще не пробовал, могу ли я сделать chroot в linux-vserver ...?
Заранее спасибо!
(Я знаю, что это запоздалый ответ.)
В Ubuntu (и, вероятно, Debian) пакет Postfix, установленный из apt
автоматически запускает его с chroot
.
На большинстве своих серверов я просто запускаю Apache и MySQL как пользователь, кроме пользователя root (это значение по умолчанию в Ubuntu).
Если вы следите за разрешениями файловой системы, этого должно быть все, что вам нужно.
Поскольку виртуализация в этой среде по-прежнему невозможна, я продолжил поиск и нашел приемлемый способ изолировать службы. Буду признателен, если вы прокомментируете свои сомнения, если таковые имеются. Я знаю, что chroot - не идеальная тюрьма, но все должно быть в порядке.
С уважением.
«Divide et impera» - обычно ответ. Chroot - довольно слабый инструмент по сравнению с таким решением, как OpenVZ, но есть http://grsecurity.net/ также (да, им обоим нужно, чтобы вы изменили ядро). Также следует упомянуть AppArmor и SELinux. Они встречаются довольно часто, поскольку за ними стоят ценные дистрибуторы.
Невозможно полностью разделить lighty и mta, если они работают в одной операционной системе / пространстве процессов. Вы, конечно, можете попытаться предотвратить чтение почты с помощью разрешений файловой системы, но я думаю, что вы не об этом имеете в виду. Шифрование данных не вариант, MTA должен будет прочитать их; если кто-то взломает систему через lighttpd, он, вероятно, тоже сможет получить root-права, поскольку в последнее время было (и будет) множество локальных root-эксплойтов для linux.
Я бы рекомендовал установить MTA на коробке и дополнительно настроить виртуализацию для веб-сервиса. Или еще лучше: поместите обе службы в виртуальные машины: даже если MTA будет взломан (что не совсем маловероятно, см. Уязвимость удаленного корня exim), ваш веб-сервис все еще в порядке.
Кстати: вы можете легко выйти из chroot, если получите права root.