У меня есть машина с настройками lighttpd и evhost. Все evhost содержат различные приложения php, такие как wordpress, drupal и т. Д. Если одно из приложений php будет скомпрометировано, злоумышленник получит доступ ко всем приложениям php в корне evhost. Можно ли закрыть каждое приложение php в «своего рода chroot» и по-прежнему разрешить доступ sftp ко всем evhosts (то есть не изменять их права доступа к файлам / устанавливать их отдельных владельцев)? Чем меньше усилий, тем лучше, плюс мне не нужны какие-либо решения, которые включают перезапуск lighttpd после добавления нового php-app / vhost. Если это невозможно - может быть, есть какие-то варианты, которые немного повысят безопасность?
spawn-fcgi поможет вам запустить интерпретатор PHP в среде chroot (и запустить его под другим UID / GID). Примеры этого можно найти в spawn-fcgi соответственно lighttpd вики. Однако с помощью этого метода вам необходимо перезапускать / перезагружать lighttpd каждый раз, когда вы добавляете новый виртуальный хост (или, точнее, часть конфигурации PHP виртуального хоста).
Это определенно не элегантное решение, но вы могли бы запустить кучу экземпляров lighttpd, каждый из которых был привязан к корневому каталогу, а затем поместить их все за обратным прокси, который соответствующим образом направляет трафик.
По крайней мере, вы можете изолировать некоторые из сайтов, так что если один экземпляр lighttpd будет скомпрометирован, он затронет только некоторые vhosts, а не остальные. Итак, предполагая, что у вас запущено 3 экземпляра, вы можете, например, разделить vhosts между тремя экземплярами.
Фактически, вы можете даже захотеть рассмотреть возможность использования нескольких веб-серверов, чтобы уязвимости, затрагивающие один, могли быть устранены другим.
Просто, возможно, стоит подумать.