On Tue, 2005-05-24 at 10:23, Micha Silver wrote:
I'm preparing to switch over to a new (CentOS 4)
machine, and I thought to set up a different SELinux
context for each
virtual domain, so that a vulnerability in someones private
web site would
be isolated and not be able to crash the other domains. Is this achievable *without* SELinux??
The simple-minded way has always been to run a separate http instance bound to a different port or IP address, running as a different user. If you only have one IP address and need to appear to be on port 80, you can arrange this with a virtualhost on the main server that uses proxypass or a rewriterule that results in a proxy connection to the server running under the other uid.
Thanks Les, With several virtual domains, setting each up on a separate port with rewrite rules, and running several httpd processes under different UIDs would quickly become not so "simple-minded"
It is simple-minded in the sense that all of your existing tools (filesystems, backups, etc.) continue to work in the way you understand and if something breaks you already understand how to track it down and fix it. Processes that run as a user with specific permissions controlled by standard unix attributes have been understood for years. You have to live with some complexity in config files, of course. Hiding these permissions in new attributes that need magic support from the filesystem and have different failure modes doesn't seem simpler to me, though.