Apache安全配置
apache的降权:
1. 新建一个用户(如用户名apache,密码abc123)并加入guest组
2. 运行secpol.msc命令(或者开始-管理工具-本地安全策略)打开“本地安全策略”选择“用户权限分配”在右侧选择“作为服务登陆”然后添加apache用户。使新建的用户用作服务登陆
3. 更改Apache服务器启动账户:运行services.msc命令打开服务管理器,打开Apache服务,先停止apache服务,右键-属性,找到登陆选项卡,在登陆身份中选择“此账户”然后输入上部所建立的apache账户和密码。为Apache服务指定用户运行。此时点击启动会报错,这是由于apache的启动还需要诸如mysql、php、apache安装目录的读取或者写入权限。
分配apache权限。为新建的apache用户设置访问权限,具体操作是,赋予apache安装目录,mysql目录的读权限,apache的logs目录,mysql的data目录的读写权限,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的配置也很关键,主要是为了防范php的webshell。一般来讲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,一定要开着,别关掉
浙公网安备 33010602011771号