默认情况下,很多Apache安装时会显示版本号及操作系统版本,甚至会显示服务器上安装的是什么样的Apache模块。这些信息可以为黑客所用,并且黑客还可以从中得知你所配置的服务器上的很多设置都是默认状态。

  修改配置httpd.conf文件,添加如下语句:
ServerSignature Off
ServerTokens Prod

Apache启动权限过大,容易给恶意入侵者提供便利。

创建一个新的帐户来替代这个帐号启动apache并设置相应的权限。
1.在计算机管理里的本地用户和组里面创建一个帐户,例如:apache,设置密码,加入guests组(如果出现问题,可以赋予user权限);
2.打开开始->管理工具->本地安全策略,在用户权限分配中选择“作为服务登陆”,添加apache用户;
3.计算机管理里面选择服务,找到apache2.2,先停止服务,右击->属性,选择登陆,把单选框从本地系统帐户切换到此帐户,然后查找 选择apache,输入密码apacheuser,然后点确定(这个时候apache还不能正常启动,一般情况肯定会报错:Apache2.2 服务因 1 (0×1) 服务性错误而停止。);
4.赋予apache安装目录(比如:D:/apache2.2)以及web目录(比如D:/wwwroot)apache帐号的可读写权限,去除 各磁盘根目录除administror与system以外的所有权限,赋予apache安装目录所在的磁盘根目录apache帐户的可读取列目录权限(我 开始觉得没必要,但后来发现:这是导致上面出错的关键。)

当以 Apache 的模块方式运行 PHP 时,也可以通过 Apache 的配置文件(例如 httpd.conf)和 .htaccess 文件中的指令来修改 PHP 的配置选项(需要“AllowOverride Options”或“AllowOverride All”权限)。

在httpd.conf文件里有关在该目录的设定里加上 (PHP4以上版本)
“php_admin_flag engine off”

例:


php_admin_flag engine off

禁止目录不必要的目录浏览权限。
查找可目录浏览的目录所对应的Directory标签
确认该标记下的Option Indexes
将Option标记修改为:Option –Indexes(若Option标记后除Indexes外无其他命令,可改为:Option None)
保存重启httpd服务

对于无CGI的目录可在其对应的Directory标签中进行如下操作:
在需要禁用CGI目录对应的Directory标签下找到Option ExecCGI,为取消其CGI执行权限,改为:Option –ExecCGI
保存重启httpd服务。

使用本地口令保护目录
安全操作
方法一:
对于一些管理员登录入口,可加入口令管理,为其登录多一重保护,增加方法如下:
创建用户及口令:
htpasswd –c /var/httpd/passwd admin
输入上面的命令后,根据提示为admin输入口令
随后设置该文件的权限以确保apache所使用的用户能访问该文件:chmod 644 /var/httpd/passwd
找到需要使用口令保护的目录,在其对应的Directory标签下,修改如下行:
AllowOverride行改为:AllowOverride AuthConfig
创建如下行:
AuthType Basic
AuthName “Administration”
AuthUserFile /var/httpd/passwd
Require user admin
保存httpd.conf并重启httpd服务
若需要修改admin口令,可在服务器上执行命令:htpasswd /var/httpd/passwd admin,按提示输入两次口令即可更新admin口令

方法二:
对于一些管理员登录入口,可加入口令管理,为其登录多一重保护,增加方法如下:
创建用户及口令:
htpasswd –c /var/httpd/passwd admin
输入上面的命令后,根据提示为admin输入口令
随后设置该文件的权限以确保apache所使用的用户能访问该文件:chmod 644 /var/httpd/passwd
找到需要使用口令保护的目录,在其对应的Directory标签下,修改如下行:
AllowOverride行改为:AllowOverride AuthConfig
创建如下行:
AuthType Basic
AuthName “Administration”
AuthUserFile /var/httpd/passwd
Require user admin
保存httpd.conf并重启httpd服务
若需要修改admin口令,可在服务器上执行命令:htpasswd /var/httpd/passwd admin,按提示输入两次口令即可更新admin口令

: http://www.nuanyue.com/apache%e5%ae%89%e5%85%a8%e8%ae%be%e7%bd%ae.html

本文相关评论 - 1条评论都没有呢

还没有任何评论。