win2K下配置asp+cgi+php+mysql全攻略

原创 2003年04月20日 15:16:00

win2K下配置asp+cgi+php+mysql全攻略
支持asp+cgi+php+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"
OK,重启后即生效!cgi支持搞定!以后新建站点后,在应用程序配置里面默认就会加上php和cgi的支持(不给这个权限的话删掉就是了)。
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";


 

Ubuntu 你拿什么同WIN2K比呢?

Ubuntu 开源LINUX的新秀,注意: 并不是绝对免费的...  Ubuntu 号称在老外128M的内存中跑得那么快,我的800M内存咋就跑得那么卡 ???   从livecd使用时,没有中文输...
  • vb2005xu
  • vb2005xu
  • 2016年08月25日 16:08
  • 100

Win2k泄漏源代码赏析——GetProcAddress

Win2k泄漏源代码赏析——GetProcAddress
  • wjeson
  • wjeson
  • 2011年02月27日 18:59
  • 1151

老机再战 win2k:Windows 2000 日常软件非官方支援帖

最近玩的都是老爷机,新软件(如果把 XP 都算进来的话,相对的)恐怕不会能胜任。就安装 Windows 2000 这个系统吧,微软操作系统中较为经典的一款。 浏览器 推荐使用 Firefox 和 Op...
  • zhangxin09
  • zhangxin09
  • 2013年09月15日 22:42
  • 3064

VMware下RedHat安装Oracle 9i RAC全攻略

摘要:大家都知道,oracle 9i RAC(以下简称RAC)是oracle里相对比较复杂的部分,很大一部分原因是由于RAC的环境搭建相对不如单实例方便。通常典型的配置是两台主机加一台存储 ,但是...
  • Rubenyu
  • Rubenyu
  • 2011年02月26日 14:43
  • 628

win2k下的J2EE配置

        一、环境配置   1、WIN2000SERVER或NT4,最好128M以上内存   2、正确安装了JDK   有关JDK的安装请参考相关文章,只有正确安装了JDK,才能确保J2EE的正...
  • wangyongligood
  • wangyongligood
  • 2007年10月21日 20:04
  • 171

虚拟机VMware安装OracleRAC.RedHat Enterprise AS4安装Oracle 9i RAC

 虚拟机VMware安装OracleRAC.RedHat Enterprise AS4安装Oracle 9i RAC草木瓜  20080226一、本文环境 同  9i RAC 与 10g RAC 类似...
  • liwei_cmg
  • liwei_cmg
  • 2008年03月29日 15:23
  • 3896

win2k配置php5+apache2

刚刚配置好了,apache2是现成的,主要是php,其实我怀疑周五我也配置好了,但是由于使用的测试程序不对,所以不知道是不是配置好了,让我对我的智商怀疑,现在终于又不怀疑了。解压缩php压缩包,随便放...
  • realduke2000
  • realduke2000
  • 2007年10月05日 17:49
  • 630

Linux 安装vsftpd

为了方便,我直接使用已经搭建好的yum源进行安装 [root@localhost mnt]# yum list | grep vsftpd              ###查看yum源中的vsftpd...
  • quanliyadan
  • quanliyadan
  • 2013年12月28日 23:27
  • 1320

改变win2k默认登录名(附原码)

你是用win2k吗?每次重新启动以后,默认的登录的名就是你上一次用的。可是如果你上一次用的Administrator,每次还要改回普通用户(为了防毒和安全)好麻烦;或者你不想让其他人知道你登录过这台电...
  • flywhc
  • flywhc
  • 2001年06月17日 14:10
  • 552

Windowx下配置DialogBlocks全攻略

关于Windows下WxWigets+DialogBlocks环境搭建
  • LKoi_Z
  • LKoi_Z
  • 2010年07月09日 16:55
  • 2273
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:win2K下配置asp+cgi+php+mysql全攻略
举报原因:
原因补充:

(最多只允许输入30个字)