<b>Win2K下配置ASP+CGI+PHP+MySQL</b>[MySQL防范]
本文“<b>Win2K下配置ASP+CGI+PHP+MySQL</b>[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
安装win2K,安装IIS
Indexing Service,
FrontPage 2000 Server Extensions,
Internet Service Manager (HTML)
这几个体装,还有别的的一些,总之不用的都别装.(按照安全原则,最少的服务+最小的权限=最大的安全.)
首先,翻开internet管理器(开始-->程序-->管理-->Internet服务管理)假如照上面所安装的,里面有一个默许站点和一个smtp的服务项选默许站点,删除其下面的全部目录.(按你键盘上的delete键)停掉iis,最简单的办法:开始-->运行-->打入net stop iisadmin 挑选Y回车 (启动的号令是:net start w3svc)把C盘的Inetpub目录完好删掉(停掉iis后才能删),在别的盘新建一个目录在IIS管理器中将默许站点的主目录指向方才新建的目录假如你需求什么权限的目录可以自己渐渐建,需求什么权限开什么. (分外注意写权限和执路程序的权限,没有绝对的必要千万不要给,默许是没给的)
利用程序配置:在IIS管理器中删除必须之外的任何无用映射,留下ASP, ASA和其他你确切需求用到的文件范例,(除了CGI,PHP,别的的我想你都没用,删除htw, htr, idq, ida……)不知道在哪删吗??办法:翻开Internet服务管理->挑选站点->属性->WWW服务->编辑->主目录->配置->利用程序映射,然后就开始一个个删吧(没有全选的,真麻烦).接着在方才那个窗口的利用程序调试书签内将脚本错误消息改成发送文本(除非你想ASP出错的时刻用户知道你的程序/网络/数据库构造)错误文本写什么?随便你喜好,自己看着办.点击肯定退出时别忘了让虚拟目录担当你设定的属性.
为了对付日益增添的cgi漏洞扫描器,还有一个小本领可以参考,在IIS中将HTTP404 Object Not Found出错页面通过URL重定向到一个定制HTM文件,可以让目前绝大大都CGI漏洞扫描器失灵.其实缘由很简单,大大都CGI扫描器在编写时为了便利,都是通过查看返回页面的HTTP代码来判断漏洞能否存在的,比方,闻名的IDQ漏洞普通都是通过取1.idq来查验,假如返回HTTP200,就认为是有这个漏洞,反之假如返回HTTP404就认为没有,假如你通过URL将HTTP404出错信息重定向到HTTP404.htm文件,那么全部的扫描无论存不存在漏洞城市返回HTTP200,90%的CGI扫描器会认为你什么漏洞都有,后果反而掩盖了你真正的漏洞,让入侵者茫然无处下手,不过从个人角度来说,我还是认为扎踏实实做好安全设置比这样的小本领重要的多.
Win2000的账号安满是另一个重点,首先,Win2000的默许安装答应任何用户通过空用户得到系统全部账号/同享列表,这个本来是为了便利局域网用户同享文件的,但是一个远程用户也可以得到你的用户列表并利用暴力法破解用户密码.很多朋友都知道可以通过更改注册表Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous = 1来禁止139空衔接,实际上win2000的本地安全战略(假如是域服务器就是在域服务器安全和域安全战略中)就有这样的选项RestrictAnonymous(匿名衔接的额外限制),这个选项有三个值:
0:None. Rely on default permissions(无,取决于默许的权限)
1:Do not allow enumeration of SAM accounts and shares(不答应列举SAM帐号和同享)
2:No Access without explicit anonymous permissions(没有显式匿名权限就不答应拜候)
0这个值是系统默许的,什么限制都没有,远程用户可以知道你机械上全部的账号、组信息、同享目录、网络传输列表(NetServerTransportEnum等等,对服务器来说这样的设置非常危险.
1这个值是只答应非NULL用户存取SAM账号信息和同享信息.
2这个值是在win2000中才支持的,需求注意的是,假如你一旦利用了这个值,你的同享预计就全部完蛋了,所以我举荐你还是设为1对比好.
好了,入侵者目前没有办法拿到我们的用户列表,我们的账户安全了……慢着,至少还有一个账户是可以跑密码的,这就是系统内建的administrator,怎么办?我改改改,在计算机管理->用户账号中右击administrator然后改名,改成什么随便你,只要能记得就行了.改了超管理用户名后,在Terminal Service的登录界面还是可以看到的(你登录过就自已记着啦),改正办法:运行regedit,找到
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\winLOGOn项中的Don't Display Last User Name串数据改成1,这样系统不会自动显示上次的登录用户名.
为了安全,你还可以翻开TCP/IP挑选,桌面上右击网上邻人->属性->右击你要配置的网卡->属性->TCP/IP->高级->选项->TCP/IP过滤,这里有三个过滤器,辨别为:TCP端口、UDP端口和IP协议TCP端口,点击"只答应",然后在下面加上你需求开的端口,普通来说Web服务器只需求开80(www),Ftp服务器需求开20(FTP Data),21(FTP Control),3306(MySQL),3389(远程终端掌握,假如你的主机托管在别人机房里,不能直接*作,就需求这个)邮件服务器大概需求翻开25(SMTP),110(POP3),我对端口没研究,但假如照本文所供应的服务,你只要开以上几个就行了.(80,20,21,25,3306,3389)
CGI支持
下载activeperl (可到www.perl.com下载最新版)
1、解压,运行install.exe,默许是安装在 C:\PERL 下,不过为了便利,请最好安装到 C:\USR 目录下,(这样写 Perl 注释器的途径便可以直接用 #!/usr/bin/perl 了,可以保持单机环境和网络环境途径一致. 安装时一路按Y便可.)
2、安装好后,按照下面三步来改正注册表: 运行 RegEdit,搜索: HKEY_LOCAL_MACHINE\System\Currentcontrlset\Services\W3svc\Parameters\scriptMap\ 键名, 然后增添键名:".cgi",键值:"C:\USR\BIN\perl.exe %s %s" 和键名:".pl",键值:"C:\USR\BIN\perl.exe %s %s" (不晓得建?那么:在右边的框内--->点右键--->新建-->字符串值 名称改成.cgi,双击该键便可输入数值数据,也就是上面说的键值)
因为要让这台主机支持php,所以趁便在这里增添上php和php3的支持(今后新建站点时可费事)
增添键名".php",键值:"C:\php\php.exe %s %s"
增添键名".php3",键值:"C:\php\php.exe %s %s"
重启后即见效!cgi支持搞定!今后新建站点后,在利用程序配置里面默许就会加上php和cgi的支持(不给这个权限的话删掉就是了).
MySQL支持
下载mysql (可到www.mysql.com下载最新版本)
1、解压,运行setup.exe完好安装,默许安装途径为:c:\mysql;
2、安装完成后,翻开"开始"按钮中的"运行",输入号令:C:\mysql\bin\mysqld-nt.exe --install,并履行;
3、开始-->程序-->管理工具-->服务-->找到mysql-->启动它;
4、mysql安装完成,重启win2000
5、重启后翻开C:\mysql\bin\winmysqladmin.exe,在第一次用它时,需求成立管理员名及密码,辨别设置用户名和密码,设定后,系统托盘会呈现一个"红绿灯"的小图标(今后系统启动时均会自动加载).
6、OK,mysql支持搞定!
PHP支持
下载PHP (可到www.php.com下载最新版本)
1、将 php 4.0.4 解压到 c:\php;
2、将PHP目录内的 php.ini-dist 文件拷贝到WinNT目录内,改名为 php.ini; (这是php的配置文件,无需更改便可运行,我没细心研究)
3、按照需求改正 php.ini 文件内容,如要利用 session 功效,请成立 c:\tmp 目录,并将 php.ini 文档内 session.save_path 的值设置成为绝对途径:c:/tmp;
4、将PHP目录内的 Php4ts.dll 文件复制到 WinNt\System32 目录内;
5、在掌握面板中的管理工具里启动"Internet 服务管理器"(IIS);
6、翻开站点属性,在 'ISAPI 挑选器'选项中, 增添新的挑选器,用 'PHP' 作为挑选器名称,在"可履行文件"栏中填入php4isapi.dll及其途径 (c:\php\sapi\php4isapi.dll).
7、在属性的"文档"选项中"启用默许文档"加入"index.php";
本文地址: | 与您的QQ/BBS好友分享! |