热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

安装win2K,安装IISIndexingService,FrontPage2000ServerExtensions,InternetServiceManager(HTML)这几个别装,还有其它的一些,总之不用的都别装。(根据安全原则,最少的服务+最小的权限最大的安全。)首先,打开internet管理器(开始--程序-

安装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";


推荐阅读
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • PDF内容编辑的两种小方法,你知道怎么操作吗?
    本文介绍了两种PDF内容编辑的方法:迅捷PDF编辑器和Adobe Acrobat DC。使用迅捷PDF编辑器,用户可以通过选择需要更改的文字内容并设置字体形式、大小和颜色来编辑PDF文件。而使用Adobe Acrobat DC,则可以通过在软件中点击编辑来编辑PDF文件。PDF文件的编辑可以帮助办公人员进行文件内容的修改和定制。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
author-avatar
用心对待2502862725
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有