Apache安全设置

安装配置完Apache后, 进行一些安全配置还是很必要的.

黑客无所不能.

以特定的用户运行Apache

默认情况下, Apache会以nobody或者daemon运行, 不过最好还是让apahce以一个没有权限的用户运行, 比如: apache.

创建apache用户和用户组:

groupadd apache
useradd -d /usr/local/apache2/htdocs -g apache -s /bin/false apache

修改httpd.conf文件, 将运行apache的用户改为apache.

# vi httpd.conf
User apache
Group apache

限制访问根目录

httpd.conf配置如下代码以限制访问根目录:

<Directory />
    Options None
    Order deny,allow
    Deny from all
</Directory>

confbin目录设置适当的权限

confbin目录只能允许认证过的用户访问. 创建一个用户组, 把那些允许访问和修改这两个目录的用户都添加进去是一个好主意.

groupadd apacheadmin #创建admin用户组

chown -R root:apacheadmin /usr/local/apache2/bin #设置目录权限
chmod -R 770 /usr/local/apache2/bin

$ vi /etc/group #给这个用户组添加特定的用户
apacheadmin:x:1121:ramesh,john

禁止目录浏览

如果不禁止目录浏览的话, 用户有可能看到你主目录或子目录下的文件列表.(现在默认都是不可浏览的了, 不过了解一下并不是坏事 :))

<Directory />
    Options None
    Order allow,deny
    Allow from all
</Directory>

# (or) #

<Directory />
    Options -Indexes
    Order allow,deny
    Allow from all
</Directory>

禁止.htaccess文件

这个文件对于apache来说比较重要, 一些重写规则以及配置都写在这里面, 如果允许用户在子目录下重写这个文件, 那么原有默认的.htaccess文件就不管用了. 这是我们不想看到的, 所以做这个限制很有必要.

<Directory />
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

扩展阅读

10 Tips to Secure Your Apache Web Server on UNIX / Linux

results matching ""

    No results matching ""