
安全配置NT/2000 SERVER
即使正确的安装了WIN2000 SERVER,系统还是有很多的漏洞,还需要进一步进行细致地配置。
1.端口:
端口是计算机和外部网络相连的逻辑接口,也是计算机的第一道屏障,端口配置正确与否直接影响到主机的安全,一般来说,仅打开你需要使用的端口会比较安全,配置的方法是在网卡属性-TCP/IP-高级-选项-TCP/IP筛选中启用TCP/IP筛选,不过对于win2000的端口过滤来说,有一个不好的特性:只能规定开哪些端口,不能规定关闭哪些端口,这样对于需要开大量端口的用户就比较痛苦。
2.IIS:
IIS是微软的组件中漏洞最多的一个,平均两三个月就要出一个漏洞,而微软的IIS默认安装又实在不敢恭维,所以IIS的配置是我们的重点,现在大家跟着我一起来:首先,把C盘那个什么Inetpub目录彻底删掉亮镇,在D盘建一个Inetpub(要是你不放心用默认目录名也可基歼以改一个名字,但是自己要记得)在IIS管理器中将主目录指向D:\Inetpub;其次,那个IIS安装时默认的什么scripts等虚敬锋粗拟目录一概删除,如果你需要什么权限的目录可以自己慢慢建,需要什么权限开什么。(特别注意写权限和执行程序的权限,没有绝对的必要千万不要给)第三,应用程序配置:在IIS管理器中删除必须之外的任何无用映射,必须指的是ASP,ASA和其他你确实需要用到的文件类型,例如你用到stml等(使用server side include),实际上90%的主机有了上面两个映射就够了,其余的映射几乎每个都有一个凄惨的故事:htw, htr, idq, ida……想知道这些故事?去查以前的漏洞列表吧。在IIS管理器中右击主机->属性->WWW服务 编辑->主目录配置->应用程序映射,然后就开始一个个删吧(里面没有全选的,嘿嘿)。接着在刚刚那个窗口的应用程序调试书签内将脚本错误消息改为发送文本(除非你想ASP出错的时候用户知道你的程序/网络/数据库结构)错误文本写什么?随便你喜欢,自己看着办。点击确定退出时别忘了让虚拟站点继承你设定的属性。安装新的Service Pack后,IIS的应用程序映射应重新设置。(说明:安装新的Service Pack后,某些应用程序映射又会出现,导致出现安全漏洞。这是管理员较易忽视的一点。)
第一方法:这种方法其bai实说起来不叫调试,也是du一种笨办法,就zhi是用MessageBox把一些程序的中间dao信息输出来,方便你找出程序是在哪个地方出问题了,你也可以在try catch中使用,用MessageBox把异常d出来,这种方法也比较直观。可惜,实现起来也有问题。我们首先要添加using System.Windows.Forms的引用,然后加上一行代码MessageBox.Show(ex.ToString(),"Error")本以为这样说行了,可是把服务重新编译生成,并安装启动后,它并没有d出框来。百思不得其解。幸好,在服务的程序里面,启用了系统的日志,它会把相关的异常记录到系统日志中去,在“计算机管理”的“事件查看器”里面可以找到。果然发现了一个,
clip_image002
显示的信息是
“当应用程序不是以UserInteractive 模式运行时显示模式对话框或窗体是无效 *** 作。请指定 ServiceNotification 或 DefaultDesktopOnly 样式,以显示服务应用程序发出的通知。”
直接百度,找到了一个答案,原来是调用MessageBox时,还需要设置它的MessageBoxOptions属性为DefaultDesktopOnly。修改如下:
MessageBox.Show(ex.ToString(),"Error", MessageBoxButtons.OK, MessageBoxIcon.Information,MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
然后再次重新编译,安装并启动,OK,顺利的d出了错误的信息。
第二种方法:
第二种方法就是真正的调试,其实Windows服务还是可以调试的,应该说任何一种类型的程序都应该能调试,别人在开发编译器的时候就人考虑到的。下面来看具体的方法。
我们知道,任何一个程序都有一个对应的进程,如果你的Windows服务启动后,也会有一个对应的进程。通过任务管理器,就能看到。
我们可以通过VS编译器里面,提供的“附加到进程”这个功能来进行调试。首先你打开你的Windows服务源程序,在里面设置一个断点,例如在OnStart方法中protected override void OnStart(string[] args){}中,然后把你的服务启动,启动过后,在VS的“调试”一栏中找到“附加到进程”
clip_image004
在进程列表里面找到你的进程,
clip_image006
如果没有的话,就把左下角空明信的“显示所有用户的进程”前面的勾选中,然后你就可以找到你的Windows服务的进程了,然后点击确定即可。
点击确定后,可能你等了半天,也没看见它命中断点。哈哈,不要急,前面说漏了一点,我们是先启动的服务,然后再附加的进程,因为服务一启动,就会执行OnStart方法,这时,我们还没有把这个服务的进程附加到VS中去呢?所以在OnStart方法中设置的这个断点肯定不会命中。所以我们需要想个办法,也就是加一个定时器,我们在OnStart方法中启动这个定时器,然后槐悉设置这个定时器的时间间隔为1分钟,然后在这个定时器的事件中去设置一个断点。这样把服务重新生成,安装并启动后,把这个进程附加到VS中去,1分钟过后,你就会看到,它命中了断点。不过有一个前提就是,你必斗轮须在1分钟内把这个进程附加到VS中去,否则的话,它还是命中不了。
如果还有问题的话,就检查一下,看你的Windows服务是不是在Release模式下生成的,如果是的话,要把它改成在Debug模式下生成。
详细的说明,可以参考这篇文章Windows服务(附服务开发辅助工具)
对于Windows CE 5.0(及其后续版本) *** 作系统的应用程序开发,微软推荐使用Visual Studio 2005集成开发环境。(也可以采用Embedded Visual C++ 4.0,并打上SP4补丁,不过我们觉得还是采用VS2005更为便利,而且裂尘微软也推荐我们这么做。 )如果采用Visual Studio 2005集成开发环境来开发Windows CE系统的应用程序,首先需要将这个环境搭建好。需要安装的软件,及其安装顺序如下:
①安装Visual Studio 2005集成开发环境
安装的时候尽量安装拆谨到系统盘下,防止以后在编译代码时出现莫名其妙的错误。系统盘要留下足够的空间,我的电脑C盘就集中了20G的空间。可以用一些工具软件(比如PartitionMagic V8.0),将其他盘的剩余空间补加到系统盘。安装的过程中,可以定制安装,比如VB,VC,C#...,可以将不需要的组件勾掉,以节省磁盘空间。关于这个软件的具体安装步骤,可以查看我们的一体机用户手册,基本也就是点下一步来完成。
②安装MSDN
这是微软的开发文档,是一个内容非常丰富的资料库。在编写代码的过程中,经常需要使用MSDN查阅相关的函数,及函数的使用方法等等。
③安装Visual Studio 2005 SP1
这个补丁可以到微软的官方网站上下载到,不过这个补丁的安装需要足够的耐心。特别是配置不高的机器,安装的过程中很可能看似已经卡死,这个时候要有足够的耐心,不要轻易的点击取消。VS2005 SP1同样安装到系统盘中,我自己也安装了几次,我觉得至少要在系统盘预留4G的存储空间,实际上安装之后系统增加的文件大小并没有这么多,大概是1,2G的样子,但安装的过程中,它的确需要接近4G的空间,这是因为在安装时需要存储大量的临时文件,在安装完成旅源基之后会自动将一些不用的下载文件删除掉。VS2005 SP1修补了Visual Studio 2005集成开发环境的很多BUG。
④安装ActiveSync
这个软件用于在PC开发端与Windows CE设备端之间建立连接。连接之后可以直接将PC工作台的文件直接拷贝到Windows CE的FLASH文件夹下面(一般Windows CE设备只有FLASH目录下的文件能够保证掉电不丢失)。使用VS2005进行同步调试程序的时候,需要先建立ActiveSync连接。
⑤安装.NET Compact Framework 2.0 SP1
Visual Studio 2005安装之后,.NET 2.0一般也一起安装了,使用的时候先安装补丁SP1。
⑥安装目标设备的软件平台开发包(SDK)
SDK是一系列头文件,库文件,文档,平台管理器和运行时库的总称。应用开发人员可使用SDK为某个特定平台开发应用程序。 关于SDK包功能的介绍,详见“BSP开发包与SDK包的功能”部分的文章。
至于如何在VS2005开发WinCE的应用App,可以看下面的流程:
使用Visual Studio 2005集成开发环境来编写Windows CE系统的应用程序。
①打开VS2005,新建 | 文件 | 项目
②项目类型选择:Visual C++ | 智能设备 | MFC智能设备应用程序(MFC是一个频繁使用的微软的应用程序框架)
③输入工程名,修改工程目录,点击“确定”
④进入“概述”页面,点击“下一步”
⑤选择“平台”SDK,例如“ce50_2440a_test”,点击下一步。
⑥“应用程序类型”选择“基于对话框”(这也是最常用的),“MFC的使用”选择“在静态库中使用MFC”,“资源语言”选择“中文(中国)”,点击“下一步”
⑦进入“用户界面功能”页面,更改对话框标题,也可以保持默认,点击“下一步”
⑧进入“高级功能”页面,“ActiveX控件”和“Windows套接字”在使用的时候可以勾选上,这里暂不使用,保持默认,点击“下一步”
⑨进入“生成的类”页面,保持默认,点击“完成”,则工程建立完毕
·选择“视图” | “资源视图”,在对话框上放置一个Button控件,右键属性,将Caption更改为HelloWorld,然后双击Button控件按钮,添加代码:
MessageBox(_T("Hello World !"))
点击“启动调试”,第一个应用程序就顺利运行起来了,点击“HelloWorld”按钮,会d出一个对话框,上面显示的文字为Helo World !(之前要安装过ActiveSync软件,并已经成功建立PC与Windows CE设备的连接。)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)