Chapter 6. Sharing Servers
The remainder of this book describes methods for preventing people
from compromising the Apache installation. In this chapter, I will
discuss how to retain control and achieve reasonable security in
spite of giving your potential adversaries access to the server.
Rarely will you be able to keep the server to yourself. Even in the
case of having your own private server, there will always be at least
one friend who is in need of a web site. In most cases, you will
share servers with fellow administrators, developers, and other
users.
You can share server resources in many different ways:
Among a limited number of selected users (e.g., developers) Among a large number of users (e.g., students) Massive shared hosting, or sharing among a very large number of users
Though each of these cases has unique requirements, the problems and
aims are always the same:
You cannot always trust other people. You must protect system resources from users. You must protect users from each other.
As the number of users increases, keeping the server secure becomes
more difficult. There are three factors that are a cause for worry:
error, malice, and
incompetence. Anyone, including you and me, can
make a mistake. The only approach that makes sense is to assume we
will and to design our systems to fail gracefully.
|