The Apache HTTP Server is one of the most stable and secure services that ships with Red Hat Linux.a There are an overwhelming number of options and techniques available to secure the Apache HTTP Server — too numerous to delve into deeply here.
It is important if you are configuring Apache HTTP Server to read the documentation available for the application. This includes the the chapter titled Apache HTTP Server in the Official Red Hat Linux Reference Guide, the chapter titled Apache HTTP Secure Server Configuration in the Official Red Hat Linux Customization Guide, and the Stronghold manuals, available at http://www.redhat.com/docs/manuals/stronghold/.
Below is a list of configuration options administrators should be careful using.
This directive is enabled by default, so be careful where you create symbolic links to in the document root of the Web server. For instance, it is a bad idea to provide a symbolic link to /.
This directive is enabled by default, but may not be desirable. If you do not want users to browse files on the server, it is best to remove this directive.
The UserDir directive is disabled by default because it can confirm the presence of a user account on the system. If you wish to enable user directory browsing on the server, use the following directives:
UserDir enabled UserDir disabled root |
These directives activate user directory browsing for all user directories other than /root. If you wish to add users to the list of disabled accounts, add a space delimited list of users on the UserDir disabled line.
By default, the server-side includes module cannot execute commands. It is ill advised to change this setting unless you absolutely have to, as it could potentially enable an attacker to execute commands on the system.
Be certain to only allow write permissions for the root user only for any directory containing scripts or CGIs. This can be accomplished by typing the following commands:
chown <directory_name> chmod 755 <directory_name> |
Also, always verify that any scripts you are running work as intended before putting them into production.