Apache安全配置

apache的降权:

1.       新建一个用户(如用户名apache,密码abc123)并加入guest

2.       运行secpol.msc命令(或者开始-管理工具-本地安全策略)打开本地安全策略选择用户权限分配在右侧选择作为服务登陆然后添加apache用户。使新建的用户用作服务登陆

3.       更改Apache服务器启动账户:运行services.msc命令打开服务管理器,打开Apache服务,先停止apache服务,右键-属性,找到登陆选项卡,在登陆身份中选择此账户然后输入上部所建立的apache账户和密码。为Apache服务指定用户运行。此时点击启动会报错,这是由于apache的启动还需要诸如mysqlphpapache安装目录的读取或者写入权限。

分配apache权限。为新建的apache用户设置访问权限,具体操作是,赋予apache安装目录,mysql目录的读权限,apachelogs目录,mysqldata目录的读写权限,php.ini中指定的PHP临时上传目录和session保存目录,给予apache完 全控制权限,例如: upload_tmp_dir = "D:/wwwroot/Tmp/uploadtmp/" session.save_path = "D:/wwwroot/Tmp/sessiontmp/" 。给予php安装目录,zend安装目录读取和运行权限。 

4.       。再次启动apache即可正常启动。

php.ini的设置

php.ini的配置也很关键,主要是为了防范phpwebshell。一般来讲php的安装目录下会有php.ini,但是更改这一个东西根本没用,在安装php的时候会把php.ini复制到windows目录下面,所以需要更改的是windows目录下的php.ini。注意,我们要把php.ini这个文件赋予apache用户的读取权限,否则会仍然不行。

1.       Safe_mode,设置成On,这样子可以防范大部分的php木马执行cmd命令。

2.       Short_open_tag,这个设置成On的话可以解析<? Phpinfo();?>这类,设置成off的话会增大本地包含漏洞的难度,但是直接用nc提交的话就无视这些了。

3.       open_basedir ,这个去掉前面的分号,设置成类似open_basedir ="D:\wwwroot\"的,即跟上你的网站目录都行了。这么做的目的是防止webshell跳转到其他目录。

4.       allow_url_fopen 这个设置成off,禁止远程包含文件。

5.       magic_quotes_gpc这个默认是on,一定要开着,别关掉

http.conf的设置

posted on 2011-10-17 21:26  Rstar's Blog  阅读(359)  评论(0)    收藏  举报