« 1 23» Pages: ( 1/3 total )
本页主题: WinXP+Apache+PHP5+MySQL5+Zend+GD库+phpMyAdmin本机安全优化安装 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

WinXP+Apache+PHP5+MySQL5+Zend+GD库+phpMyAdmin本机安全优化安装

本帖被 罗江游鱼 执行置顶操作(2007-11-23)
PHP的安装及安全设置:
  1、将“PHP V5.2.1 For Windows”安装包中的所有文件直接解压到“F:\MyForumProg\PHP”目录下(见下图)。当然,也可以将安装包解压到其它目录,然后改名为“PHP”再移动到“F:\MyForumProg”目录下。
  注意:如果操作正确的话,在“F:\MyForumProg\PHP”目录下应该能看到“php.exe”文件。




  2、将“F:\MyForumProg\PHP”目录下的“php.exe”、“php-win.exe”及“php.ini-recommended”等三个文件拷贝到“C:\WinXP”目录下;将“F:\MyForumProg\PHP”目录下所有的“.dll”文件拷贝到“C:\WinXP\system32”目录下。我在操作时未见有重名提示,如有重名提示就选择覆盖。
  另:有些教程上特别提到:“要将‘F:\MyForumProg\PHP\ext’目录下所有的‘.dll’文件也拷贝到‘C:\WinXP\system32’目录下”,我没拷也装成了,但不知道将来在使用过程中会不会有影响。

  3、PHP的基本配置:将“C:\WinXP\php.ini-recommended”文件改名为“php.ini”,然后用记事本打开编辑。
  3.1、查找字符串“extension_dir =”,将“extension_dir = ".\"”改为“extension_dir = "F:\MyForumProg\PHP\ext"”(见下图)。




  3.2、查找字符串“; Windows Extensions”,将下列各行行首的分号(;)去掉(见下图)。
    ;extension=php_dbase.dll    可选
    ;extension=php_gd2.dll     此项用以支持GD库的,一般需要,必选
    ;extension=php_ldap.dll     可选
    ;extension=php_mbstring.dll   此项不选则使用PHPMyAdmin会提示错误,必选
    ;extension=php_mcrypt.dll    此项不选则使用PHPMyAdmin会提示错误,必选
    ;extension=php_mssql.dll    此项用以支持MSSQL数据库,可选
    ;extension=php_mysql.dll    此项用以支持MySQL数据库,必选





  至此,PHP安装及基本的配置工作已经完成,如保存文件退出,PHP就可以正常使用了。
小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 10:37 | [楼 主]
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16


4、PHP的安全设置:为了提高PHP的安全性,还需要接着对PHP进行一些安全设置,编辑调整下列各项参数的设置。
  4.1、safe_mode = On:其默认值为“Off”,开启此参数(见下图)能够限制PHP中一些涉及安全的函数(如“system()”),并对一些文件相关的函数进行权限控制,不允许PHP程序访问某些关键位置的文件。





  4.2、safe_mode_gid = Off:其默认值即为“Off”,但还是检查一下为好;这是因为开启了“safe_mode = On”参数后,如果此参数也被开启的话,PHP脚本可能无法正常操作网站目录下的文件,因此必须将其设置为“Off”(见下图)。





  4.3、safe_mode_exec_dir = "F:\MyForumProg\MyBBS":此参数设置PHP在调用执行程序命令时所查找的目录,应将其限定在网站目录下(见下图)。





  4.4、open_basedir = "F:\MyForumProg\MyBBS;C:\Documents and Settings\apache\Local Settings\Temp":此参数设置PHP进行文件操作的目录范围,尽量将其限定在网站目录下(见下图)。
  注:“C:\Documents and Settings\apache\Local Settings\Temp”目录是以后运行PHPMyAdmin程序要用到的。
小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 10:39 | 1 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

4.5、disable_functions = system,passthru,exec,shell_exec,popen,phpinfo:此参数用来设置禁用的PHP函数,这些PHP函数要么是暴露系统的重要信息,要么可被利用来直接入侵,自然要封杀掉(见下图)。
  注意:其中的phpinfo函数在论坛安装过程中会被用到,建议论坛安装完成后再封掉。





  4.6、expose_php = Off:HTTP信息头部中会包含PHP的版本信息,有可能会被利用来发现针对服务器的溢出攻击方法,因此还是让PHP“闭嘴”吧(见下图)。





  4.7、register_globals = Off:禁用全局变量,这样可以确保PHP程序在传递变量时不被截获(见下图)。





  4.8、magic_quotes_gpc = On:开启此变量(见下图)会对用户提交的SQL查询进行转义,可以非常显著地减少SQL注入,避免对数据库构成威胁。


小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 10:46 | 2 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

 4.9、display_errors = Off:此参数用来设置是否显示PHP错误。黑客攻击前一般都会向PHP程序提交一些错误的数据,通过网页返回的错误信息来获得目录位置、服务器版本及其他一些重要信息,因此应将此参数设置为“Off”(见下图)。




  最后,保存文件退出,PHP至此全部配置完毕。


四、Apache的安装及设置:
  1、Apache的安装:
  1.1、将“Apache HTTP Server For Windows V2.2.4”安装包解压,双击运行“apache_2.2.4-win32-x86-no_ssl.msi”后点“Next”按钮开始安装(见下图)。




  1.2、点选“I accept ......”项后点“Next”按钮继续(见下图)。




小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 10:52 | 3 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

1.3、随后弹出的“Server Information”窗口中要求填写网站的域名信息,没有的话可以随便填。此处假设服务器名为“www.myforum.com”,填写好后点“Next”按钮继续(见下图)。




  1.4、点选“Typical”项设置典型安装后点“Next”按钮继续(见下图)。




  1.5、点选“Change...”按钮将安装路径更改为“F:\MyForumProg\Apache2.2\”后点“Next”按钮继续(见下图)。





小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 11:52 | 4 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

1.6、收集完必要的信息后,点“Install”按钮即开始安装(见下图)。






 



  1.7、如果机器里装有防火墙的话,在安装过程中可能会弹出网络访问请求,此时应予以放行(见下图)。




  1.8、最后,点下方的“Finish”按钮完成Apache的安装(见下图)。


小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 12:03 | 5 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

1.9、随后,在桌面右下角的系统托盘中会出现一个Apache的图标(见下图)。




  1.10、在浏览器中打开:http://localhost/,如能看到以下画面(见下图),则说明Apache安装成功了。





  2、配置Apache以支持PHP:
  2.1、用记事本打开并编辑Apache的配置文件“F:\MyForumProg\Apache2.2\conf\httpd.conf”,查找字符串“#LoadModule ssl”,在其后加入一行“LoadModule php5_module F:/MyForumProg/PHP/php5apache2_2.dll”(见下图)。




  2.2、查找字符串“DocumentRoot "”,将其设置为我们设定的Apache虚拟根目录为“F:\MyForumProg\MyBBS”(见下图)。

小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 12:42 | 6 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

2.3、查找字符串“<Directory "”,将其也设置为我们设定的Apache虚拟根目录为“F:\MyForumProg\MyBBS”(见下图)。




  2.4、查找字符串“DirectoryIndex index.html”,将其修改为“DirectoryIndex index.php index.html”(见下图)。




  2.5、查找字符串“AddType application/x-gzip”,在其后加入一行“AddType application/x-httpd-php .php”(见下图);然后,保存文件并退出。




  至此,Apache的基本配置工作已经完成。
小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 12:44 | 7 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

2.6.1、为了验证配置文件修改的正确性,可右击桌面右下角系统托盘中的Apache图标,点选“Open Apache Monitor”项(见下图)。




  2.6.2、在随后弹出的“Apache Service Monitor”窗口中,点击“Restart”按钮,如果提示“The Apache2 Service has restarted.”,则说明Apache服务在修改后的配置下重启成功(见下图)。





 
小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 12:46 | 8 楼
lwenj

该用户目前不在线
级别: 论坛版主
精华: 2
发帖: 237
威望: 242 点
金钱: 2410 RMB
贡献值: 0 点
注册时间:2007-05-17
最后登录:2008-06-16

 2.7、为了验证Apache对PHP的支持,可在Apache的虚拟根目录(F:\MyForumProg\MyBBS)下创建一个名为“phpinfo.php”的文件,内容如下:
    <?php
    phpinfo();
    ?>
  在浏览器中打开:http://localhost/phpinfo.php,如能看到当前服务器所支持PHP的全部信息(见下图),则说明Apache对PHP的支持配置成功了。注意:“Server API”的模式为“Apache 2.0 Handler ”。





  3、创建低权限用户启动Apache服务,以提高安全性:
  3.1、在“开始”的“运行”中执行“cmd”命令进入命令行状态,然后执行如下命令(见下图):
   net user apache 123456 /add      # 创建一个名为“apache”、密码为“123456”的用户
   net localgroup users apache /del     # 将用户“apache”从所有的用户组中删除
   exit                  # 退出命令行状态
  当然,也可以参考前面创建陷阱管理员帐户“Administrator”的方法在图形界面上完成,只不过用命令行的方式更加简捷。如果想验证结果的话,可以在“控制面板”的“管理工具”中双击运行“计算机管理”,在“计算机管理”窗口中逐级点开“本地用户和组”下的“用户”项,找到帐户“apache”,并右击点选其“属性”项中的“隶属于”标签,其内容如果为空就表示结果正确。




  3.2、在“控制面板”的“管理工具”中双击运行“服务”,在“服务”窗口中找到名为“apache2”的服务项,并右击点选其“属性”项(见下图)。


小窝:…… http://www.lwenj.cn ……
顶端 Posted: 2007-09-10 12:48 | 9 楼
« 1 23» Pages: ( 1/3 total )
开源嘛论坛 » php技术讨论

Guest cache page, Update at 2008-11-23 19:18 桂ICP备07006725号
Powered by PHPWind v6.0 Certificate Code © 2003-07 PHPWind.com Corporation